Zero-Touch & Automation Change Control with Windows Autopilot
Bounded Windows Autopilot workflow: clone-then-pilot profile changes, staged rollout, evidence-based validation and a tested group-reassignment rollback path.

This playbook covers
Table of Contents
Table of contents
#Current Method
Most teams running Windows Autopilot
This creates three recurring problems. First, because Autopilot profile assignment is dynamic-group driven, a change can silently apply to every device in a large Entra ID dynamic group the next time those devices hit Windows Autopilot Deployment Service (Windows Autopilot service), not just a pilot subset. Second, there is rarely a captured evidence trail showing what the profile looked like before the change, so diagnosing a regression means guessing rather than comparing. Third, ESP and profile failures typically surface as a stuck or failed Autopilot enrolment on an end-user device, at which point the operator is troubleshooting live, in front of a user, under time pressure, rather than in a controlled pre-production check.
The operating context that matters here: Autopilot profile changes are configuration-plane changes stored in Intune/Entra ID, not changes to a running fleet in real time. That means the safe unit of change is the profile object and its group assignment, not individual devices. The trust boundary sits between whoever holds Intune Administrator or Cloud Device Administrator rights and the dynamic device groups that determine blast radius. Treating profile edits as low-risk ignores that a single save can affect every device that next contacts the Autopilot service, which is why this workflow scopes changes to an explicit pilot group before any production assignment.
#Improved Workflow
The improved workflow separates profile authoring from profile assignment, and gates assignment expansion behind observed evidence rather than assumption. Each step exists to reduce blast radius or to produce evidence the next step depends on.
- Baseline capture. Before touching anything, export the current deployment profile JSON and record which Entra ID groups it is assigned to. Input: existing profile state. Output: a timestamped baseline artefact. This exists so that a later regression has something concrete to diff against, rather than relying on memory of "what it used to say".
- Change authored against a duplicate profile. Clone the profile rather than editing production in place. Input: baseline profile. Output: a new, unassigned profile object carrying the proposed change. The trade-off accepted here is a temporary increase in configuration objects (more to track) in exchange for a production profile that is never touched until the change is proven.
- Pilot group assignment only. Assign the new profile to a small, explicitly named pilot Entra ID group of Autopilot-registered test hardware, not the production dynamic group. Output: only pilot devices can receive the new profile on next enrolment. This is the primary blast-radius control in the whole workflow.
- Controlled enrolment run. Reset or freshly enrol one or more pilot devices and observe the ESP and OOBE experience end-to-end. Output: enrolment timing, ESP page results (app/policy installation status) and any error codes. This produces the evidence the rollout decision depends on.
- Evidence review against defined pass conditions. Compare pilot enrolment evidence against explicit success criteria (below) before any wider assignment. This is the stop/go gate — the workflow does not proceed to production reassignment without this review.
- Staged production cutover. Only after pilot evidence passes, reassign the production dynamic group to the new (now proven) profile, and formally retire or archive the old profile object rather than silently overwriting it. Output: a single, reviewable group-assignment change with the previous profile preserved for rollback.
#Implementation
Prerequisites: Intune Administrator or equivalent Azure RBAC role with rights to manage Autopilot deployment profiles and Entra ID group assignment; at least one physical or virtual device already registered as an Autopilot device in a non-production tenant or an isolated pilot group; confirmed current version of the Intune admin centre and Windows build in use, checked against Microsoft Learn documentation before relying on any UI-path or setting-name claim in this article, since Intune admin centre UI paths change between releases.
- Record baseline. In the Intune admin centre, open Devices > Enrollment > Windows > Deployment Profiles, select the target profile, and export/screenshot its JSON view along with the Entra ID group(s) under Assignments. Expected evidence: a saved baseline file with profile settings and group assignment recorded, dated and stored with the change record. Stop condition: do not proceed if the currently assigned group is broader than expected or unknown — resolve group scope first.
- Clone and edit. Duplicate the profile object, name it clearly to indicate pilot status (for example, a name suffix indicating this is a pilot variant), and apply only the intended change. Expected evidence: new profile object visible in the deployment profile list, unassigned to any group. Stop condition: if the clone inherits an unexpected group assignment, remove it before continuing.
- Assign to pilot group only. Under Assignments for the cloned profile, select the dedicated pilot Entra ID group (static or narrowly scoped dynamic group containing only test hardware). Expected evidence: Intune admin centre confirms assignment to the named pilot group and no other group.
- Run enrolment on pilot hardware. Reset a pilot device to OOBE (or use a fresh device already registered to Autopilot) and complete enrolment while capturing ESP screen timings, app/policy install status, and any error codes shown. Expected evidence: enrolment completes and ESP reports pass/fail status per tracked app and policy; note total time to desktop.
- Review against pass conditions. Compare results to the validation section below. Stop condition: if any required app or policy fails, or ESP times out, halt before touching production assignment and proceed to Recovery.
- Cut over production assignment. Once pilot evidence passes, change the production dynamic group’s assignment to point at the new profile, and remove or archive assignment from the old profile (do not delete it). Expected evidence: Intune admin centre shows the production group now assigned to the new profile; the previous profile remains present and unassigned, ready for rollback.

#Guardrails
- Never edit the production-assigned profile directly; always clone first. This preserves a known-good rollback target automatically.
- Restrict Autopilot profile edit rights to a named, small set of Intune Administrators; broader Intune roles (such as Helpdesk Operator) should not have deployment profile write access, consistent with least-privilege boundaries around configuration objects that affect entire device fleets.
- Keep pilot Entra ID groups static or tightly scoped; a loosely defined dynamic pilot group can silently grow and defeat the blast-radius control this workflow depends on.
- Do not delete superseded profile objects immediately after cutover; retain them, clearly marked as retired, for at least one full review cycle so rollback does not require re-authoring configuration from memory.
#Validation
Define pass conditions before running the pilot, not after seeing the results, so the review in step 5 is a check against a fixed bar rather than a post-hoc judgement call.
- Pilot device reaches desktop via ESP within the organisation’s previously observed baseline time range (recorded from the last known-good enrolment), or within a documented acceptable variance if no baseline exists yet.
- All apps and policies marked as blocking in ESP report a success status, with no manual intervention required.
- No new error codes appear during enrolment that were not present in the last known-good baseline run.
- Device correctly lands in the expected Entra ID device group and Intune device group post-enrolment, confirming profile-driven group membership behaved as designed.
#Common Mistakes
- Editing the live production profile directly "because it’s a small change" — this removes the rollback path this workflow is built around and should never be treated as low risk regardless of change size.
- Assigning the pilot profile to a dynamic group defined by a broad rule (for example, all devices in a department) instead of an explicit static pilot group, which can silently include production hardware.
- Skipping the baseline capture step and relying on recollection of prior settings when something goes wrong — this turns diagnosis into guesswork.
- Treating a single successful pilot enrolment as sufficient evidence when the profile affects multiple app or policy dependencies that only surface under different network or hardware conditions; where practical, test against more than one device configuration before wide rollout.

#Recovery
Recovery here means reverting group assignment, not attempting to patch a broken profile live.
| Symptom | Likely cause | Diagnostic evidence | Bounded correction |
|---|---|---|---|
| ESP hangs or times out on pilot device | New profile references an app or policy dependency not yet available to the pilot group | ESP status page error code; Intune device install status for the specific app/policy | Do not modify production assignment. Reassign pilot device’s group back to the original (baseline) profile assignment and re-enrol pilot device to confirm known-good behaviour returns |
| Pilot device lands in wrong device group after enrolment | Cloned profile inherited an unintended group assignment during authoring | Entra ID device group membership list compared against baseline | Remove device from the incorrect group, correct the clone’s assignment scope, and re-run the pilot enrolment before any further action |
| Post-cutover: broader fleet reports enrolment failures | Production group reassignment occurred before pilot evidence fully passed, or pilot hardware was not representative of the fleet | Helpdesk tickets or enrolment failure telemetry immediately following cutover; timestamp correlated with the assignment change record | Reassign the production dynamic group back to the retained previous profile object (not delete-and-recreate); confirm via Intune admin centre that assignment shows the prior profile; monitor next batch of enrolments for return to baseline behaviour |
Rollback boundary: this workflow’s rollback is a group-assignment change back to the retained prior profile object, verified through the Intune admin centre assignment view. It does not include deleting Entra ID groups, deleting device records, or wiping affected endpoints — those actions are out of scope and are not covered by this playbook. If a device is already mid-provisioning with the faulty profile, treat that device individually (re-image or re-register) rather than attempting an in-place fix.
#Measurable Outcome
Baseline: current mean time from device power-on to usable desktop under the existing profile, and current rate of enrolment failures per 20 devices (or the largest recent batch available), recorded before making any change. Success signal: pilot and subsequent production enrolments complete within the same or improved time range with zero new blocking failures attributable to the change. Measurement method: compare ESP completion logs and helpdesk ticket volume for Autopilot enrolment issues across the two weeks following cutover against the two weeks preceding it. Review cadence: re-check this comparison after the first 20 production enrolments on the new profile, then monthly. Decision threshold: if new-profile enrolment failure rate exceeds the pre-change baseline by any material margin, treat this as a stop condition and execute the recovery step above rather than adjusting the profile further in production.
#Adoption Checklist
- Baseline profile JSON and group assignment exported and dated before any change
- Change authored on a cloned profile, never on the live production object
- Pilot assignment scoped to a named static group of test hardware only
- Pilot enrolment evidence reviewed against explicit pass conditions before cutover
- Production cutover performed as a single group-assignment change with the prior profile retained, not deleted
- Rollback path (reassign to retained prior profile) tested or at least confirmed reachable before cutover
#Next Safe Decision
Once the first production cutover has completed a full review cycle with no unresolved failures, the next safe decision is whether to formalise this workflow as the standing change-control pattern for all future Autopilot profile edits, or whether additional pilot hardware diversity is needed first. Do not expand scope to other Autopilot profile types (for example, white-glove or self-deploying modes) until this bounded workflow has been observed across at least one full cadence cycle on the standard profile type covered here.
Related articles
Zero-Touch & Automation
From Ticket Rework to Repeatable Windows Autopilot Provisioning
Replace reactive Autopilot ticket rework with a bounded, staged zero-touch provisioning workflow: hash validation, guardrails, ESP checks and a clear rollback path.
Zero-Touch & Automation
Reduce Risk in Windows Autopilot Hardware-Hash Imports
Design, implement and safely recover a bounded Windows Autopilot zero-touch automation workflow with role-based guardrails, validation and rollback.
Enterprise IT Management
Enterprise IT Management Change Control with Microsoft 365
A bounded, evidence-led change control workflow for Microsoft 365 tenant policy changes, covering staged rollout, validation gates, failure containment and rollback.
Security & Operations
Security & Operations Change Control with Microsoft Defender
A bounded, evidence-led workflow for controlling Microsoft Defender policy changes: staged scope, audit-first validation, explicit failure modes and a decoupled rollback path.
Discover more
Graduate Learning
Ops Playbook
Lexicon Definitions
Learn More About KBY
About KBY
Learn about our mission, editorial standards, and commitment to trusted engineering knowledge.
Why Trust KBY
Explore the processes and policies that ensure our publications are accurate, useful, and responsible.
Newsletter
Get our latest editorial publications, research and practical insights sent directly to your inbox.
Was this useful?
Operate smarter, with fewer recurring tickets.
Receive new operational playbooks, incident-prevention guidance, automation scripts and recovery runbooks.
Comments
Add a thoughtful note on Zero-Touch & Automation Change Control with Windows Autopilot. Comments are checked for spam and held for moderation before appearing.