Duplicate Device Configuration Profiles

Duplicate Device Configuration Profiles

Microsoft Intune device configuration profiles are easy to create and almost as easy to lose track of. Anyone who has run a tenant for more than a year knows the result: a long list of profiles with similar names, slight setting variations between them, and no clear answer to “which one is actually deployed and which one is a copy from a test that nobody ever cleaned up”. Duplicating profiles cleanly — for staged rollouts, test rings, or template-based deployment — is one of the operations where the admin portal is genuinely awkward. In this post I show two ways to clone configuration profiles: the built-in Duplicate button and a Microsoft Graph-based PowerShell function that gives you full control.

There is often the use case that you want to duplicate device profiles to adjust this for a certain device group / use case or just to have a separation of the name for different device classes.

There has been a user voice with over 1200 votes since 2017, unfortunately this feature has not been added to the Intune admin center yet.

Duplicate Device Configuration Profiles

To have an work around for this I created a small script that helps to copy a configuration profile. You can find this script on my Git hub repository: Copy-DeviceConfigurationProfile.ps1

Stay healthy, Cheers
Jannik


Update 13.06.2022:

Since Service release 2111 (Nov 15 2021) there is a option to duplicate setting catalog policies. All other policy types are not supported.

Duplicate Device Configuration Profiles
Duplicate Device Configuration Profiles

Operational tips for managing many duplicated profiles

Once you duplicate profiles regularly, the real challenge shifts from cloning to keeping the tenant tidy:

  • Naming conventions: encode purpose, environment, and version, e.g. ProfileBase – Production – v3 vs ProfileBase – Test. Sortable and self-documenting.
  • Scope tags as metadata: use them not just for RBAC but also as lightweight tagging (owner team, pilot ring, lifecycle). Filtering by tag beats scrolling through hundreds of profiles.
  • DevOps pipeline approach: beyond one-off clones, treat profiles as code. Export JSON from a dev tenant and promote it to production via a Graph-based pipeline (Azure DevOps or GitHub Actions).
  • Audit & cleanup: schedule a monthly Graph query for profiles with no assignments, no recent modifications, or names containing “Copy of”. Orphaned duplicates are the largest source of tenant clutter.