Hi, thanks for testing both scripts and for the feedback. You’re not doing anything wrong. The behavior you’re seeing happens because the two scripts answer different questions.
The single-SKU script checks only whether the SKU is available in the region according to the Azure Resource SKUs API. The bulk script uses that same availability check, but it also verifies your subscription’s regional vCPU quota to see whether you have enough free cores to deploy the number of VMs requested in the --count parameter.
Because of that, lowering the count from 250 to 1 doesn’t change the final result if the root cause is either a subscription-level restriction for that SKU in that region or if your vCPU quota for that VM family is already full. In both cases, the script will still return “not available” regardless of the count.
The fastest way to confirm which of the two is happening is to look at the “Reason” field near the availability result and the quota section showing “Free Cores”, “Needs Cores” and “Quota OK?”.