Licensing deep-dive · Updated June 2026

Azure Hybrid Benefit: the Complete Eligibility Checklist

By the CloudFinOpsKit team. We verified every rule below against Microsoft's licensing documentation while building our scanner's AHB module — including the exclusions most guides get wrong. 8 min read.

Azure Hybrid Benefit (AHB) lets you bring Windows Server and SQL Server licences you already own to Azure, so you stop paying for the licence twice. It's one of the largest single discounts in Azure — up to ~40% off Windows VMs and up to ~55% off vCore SQL — and it costs nothing to enable. It's also one of the most under-used, because eligibility is genuinely confusing. Here's the whole picture.

The savings, concretely

A Windows VM's hourly rate is compute + Windows licence. AHB removes the licence component, billing the VM at the Linux rate. On a typical D-series VM that's ~30–40% of the bill; on licence-heavy SQL it's more. Stack AHB with a 3-year reservation and you're at Microsoft's oft-quoted "up to 80% off PAYG".

✅ The eligibility checklist

  1. Windows Server core licences with active Software Assurance (or qualifying subscription licences such as CSP subscriptions). Standard or Datacenter both work — Datacenter allows simultaneous on-prem + Azure use; Standard is either/or (with a 180-day dual-use migration window).
  2. The 8-core minimum: each VM consumes a minimum of 8 core licences, even a 4-core VM. A 16-core VM needs 16. Processor licences convert at 1 processor = 16 cores.
  3. SQL Server core licences with active SA for SQL VMs, Azure SQL Database (vCore tiers), and SQL Managed Instance. 1 core on-prem = 1 vCore General Purpose (or 4 vCores per core for Business Critical from Enterprise edition).
  4. Linux too: RHEL and SLES subscriptions can be brought via AHB for Linux, removing the marketplace software fee.
  5. SA must stay active. If Software Assurance lapses, you must disable AHB or renew — running on AHB with lapsed SA is a compliance failure waiting for an audit.

❌ Where AHB does NOT apply (the part most guides get wrong)

These exclusions matter because reporting tools that ignore them produce inflated "savings opportunities" that evaporate under scrutiny:

Find every VM not using AHB (60 seconds)

The licence flag lives on the VM as licenseType. Across your whole tenant with Resource Graph:

az graph query -q "
Resources
| where type =~ 'microsoft.compute/virtualmachines'
| extend os = tostring(properties.storageProfile.osDisk.osType),
         lic = tostring(properties.licenseType)
| where os == 'Windows' and (isempty(lic) or lic == 'None')
| project name, resourceGroup, subscriptionId,
          vmSize = tostring(properties.hardwareProfile.vmSize)"

Every row is a Windows VM paying the full licence rate. To enable AHB (no restart, takes effect immediately):

az vm update -g RG -n VMNAME --license-type Windows_Server
# SQL VM:        az sql vm update -g RG -n VMNAME --license-type AHUB
# Azure SQL DB:  set 'Base price' (BasePrice) licensing in the compute tier

The full inventory, automatically. The CloudFinOpsKit Tool builds a complete Azure Hybrid Benefit inventory across your tenant — every eligible VM, SQL VM, SQL Database and Managed Instance with its current on/off state — and correctly excludes Dev/Test-offer subscriptions, Windows client VMs and non-eligible SQL editions, so the opportunity list is defensible in front of your licensing team.

Governance notes before you flip the switch

FAQ

Is Azure Hybrid Benefit free?

Enabling it is free — it reuses licences you've already bought (with active SA). The "cost" is licence governance.

Can I use AHB and reservations together?

Yes, and you should — they discount different components (licence vs compute). Combined they reach up to ~80% off PAYG.

Why does my dev-tagged VM still qualify?

Because tags don't change billing. Only the subscription's offer does. Dev-labelled VMs in normal subscriptions pay full licence rates — AHB applies and saves real money.

Related reading: Reserved Instances vs Savings Plans · the 47-point cost optimization checklist · finding orphaned disks