VMProvisioningStateFailed
Azure reports `VMProvisioningStateFailed` when virtual machine provisioning ends in a failed state during OS, extension, image, or dependency setup.
Last reviewed: February 24, 2026|Source-backed guidance under our editorial policy
Start Here
Use the closest compare guide, playbook, or adjacent error page to narrow the decision faster before you start changing production systems.
This page is part of the Error Reference library. Learn more about the project or report a correction.
What Does VM Provisioning State Failed Mean?
VM creation reached execution but one or more provisioning sub-steps failed, leaving the VM unusable until root causes are corrected.
Common Causes
- -Custom image was captured or uploaded with generalized/specialized mismatch, causing provisioning failure.
- -VM extensions or guest-agent startup scripts fail during initial configuration.
- -Required dependencies (NIC, disk, identity, key vault access) are missing or misconfigured.
- -Policy, quota, or access constraints interrupt provisioning sequence mid-flight.
How to Fix VM Provisioning State Failed
- 1Inspect VM instance view and deployment operation sub-status messages for the first failing step.
- 2Validate image preparation path (generalized vs specialized) and rebuild image if mismatch is detected.
- 3Fix failing extension or initialization script independently before full VM redeploy.
- 4Confirm dependency resources and permissions are valid at target scope, then reprovision.
Step-by-Step Diagnosis for VM Provisioning State Failed
- 1Collect deployment operation logs, VM boot diagnostics, and extension status outputs.
- 2Identify whether failure domain is image prep, guest provisioning, extension execution, or external dependency.
- 3Verify network, disk, and identity dependencies resolve correctly during VM creation.
- 4Retest with a known-good baseline image and minimal extension set to isolate regressions.
Image Preparation and OS Provisioning Validation
- -Confirm generalized/specialized image handling matches capture/upload path (example: specialized Windows image uploaded as generalized triggers provisioning failure).
- -Validate sysprep/cloud-init prerequisites for the selected image pipeline (example: custom image misses required prep state and stalls during OOBE/provisioning).
Extension and Dependency Failure Isolation
- -Inspect extension provisioning logs for first non-transient failure (example: Custom Script Extension fails due to missing package repo access).
- -Trace dependency readiness at provisioning time (example: NIC/NSG rule blocks agent outbound connectivity required for extension installation).
Seen in Production
Custom Windows image captured with incorrect generalized/specialized state
Frequency: common
Example: VM deploys but provisioning fails during initial setup and never reaches healthy state.
Fix: Rebuild image with correct preparation flow and redeploy from validated artifact.
Provisioning succeeds until extension stage, then fails repeatedly
Frequency: rare
Example: Custom script extension cannot reach dependency endpoint and VM ends in failed provisioning state.
Fix: Fix extension prerequisites and validate extension independently before full VM rollout.
Debugging Tools
- -VM instance view and provisioning sub-status
- -Boot diagnostics and serial console logs
- -Extension status and guest agent logs
- -ARM deployment operation timeline
How to Verify the Fix
- -Redeploy VM and confirm provisioning state reaches
Succeededwithout extension/image errors. - -Validate extension health and guest-agent readiness after initial boot sequence.
- -Run smoke checks for network, disk, and identity-dependent workloads on the new VM.
How to Prevent Recurrence
- -Gate custom images through automated validation pipeline before publishing for production use.
- -Version-control VM extension configurations and test them against baseline images.
- -Add preflight checks for VM dependencies, permissions, and policy constraints in deployment workflows.
Pro Tip
- -keep a golden image canary deployment in each target region and block release when canary provisioning drift appears.
Official References
Provider Context
This guidance is specific to Azure services. Always validate implementation details against official provider documentation before deploying to production.