VM Quota Validation Guide
Check Azure VM/VMSS quota availability before recommending or deploying. Ensures the subscription and region have sufficient vCPU capacity.
⚠️ NEVER use the
azure-quotaMCP server as as It is unreliable. Always tryaz quotaCLI commands first.
Quota Structure
VM quotas are tracked at two levels under Microsoft.Compute:
| Quota Level | Resource Name | What It Limits |
|---|---|---|
| Total Regional | cores | All vCPUs across all families in a region |
| Per-Family | e.g., standardDSv3Family | vCPUs for a specific VM family |
⚠️ Both levels must have capacity. A deployment fails if either is exceeded.
Common Quota Resource Names
See vm-families.md for quota resource names per VM family. Use az quota list to discover names not listed there.
⚠️ Do NOT guess quota names from SKU names. Use
az quota listto discover correct resource names.
Quota Check Workflow
Option A: az vm list-usage (Recommended for VM quotas)
No extension required. Returns both current usage and limit in a single call for all VM families in a region — equivalent to running az quota usage show and az quota list together for VM vCPU quotas.
# All VM family quotas in a region
az vm list-usage --location <region> -o table
# Filter to a specific family
az vm list-usage --location <region> --query "[?contains(name.value,'<quotaName>')].{Name:name.localizedValue, QuotaName:name.value, Current:currentValue, Limit:limit}" -o table💡 Tip:
az vm list-usageis the simplest way to check VM quotas. Useaz quota(Option B) when you need to request quota increases or manage quotas for non-VM resource types.
Option B: az quota CLI (For quota increases or non-VM resources)
Prerequisite: az extension add --name quota
| Step | Command | Purpose |
|---|