The distinction between the three errors is what makes this useful in practice. I had not realized SkuNotAvailable fails during validation and never starts the deployment, while AllocationFailed is the only one where a retry can actually help. The tip about az vm list-skus with --all is also practical, since the portal hides the reason a size is missing and the Location versus Zone restriction changes the fix. One detail I would add from experience is how often stopped VMs still count against quota, because that is easy to miss when the error message points at capacity instead.