Windows Server is licensed by host cores
The most common misunderstanding about Windows on Proxmox: if the VM only "takes" 2 vCPU, do I pay for 2 cores? No. Windows Server is licensed by the physical cores of the server (host) the VM runs on — regardless of how many vCPU you assign it. You must cover all of the host's cores, with a minimum of 16 cores per server and 8 cores per processor.
a physical host core
per server / processor
counted separately
On top of the core license come CALs (Client Access Licenses) — per user or per device — required for everyone using the server. Remote Desktop Services additionally require separate RDS CALs. All of this is counted independently of the core model.
The dense-host trap
Since you pay for all of the host's physical cores, the denser the server, the higher the license cost — even if it runs only a single, small Windows VM.
The density trap: a 2-vCPU VM on a host with a 128-core EPYC 9755 requires, under the classic model, a license for all 128 cores — not 2.
| Licensing model | What you license | Result |
|---|---|---|
| Standard (per-core) | all physical host cores | the right to run 2 Windows VMs; more = "stacking" (further full license sets) |
| Datacenter (per-core) | all physical host cores | unlimited Windows VMs on the host |
| Per-VM (with Software Assurance) | the VM's virtual cores (min. 8 per VM) | a 2-vCPU VM = 8 cores instead of 128 |
Under Standard, each full set of licenses covering all host cores grants the right to run two Windows VMs. Need four? You license the host cores twice ("stacking"). With many Windows VMs on one node it quickly becomes cheaper to go Datacenter — license the physical cores once and run unlimited VMs.
HA clusters and license mobility
A cluster adds the mobility dimension. If a VM can move to another node (live migration or automatic HA failover), then under the physical model every node the VM can run on must be separately and fully licensed — not just the one it usually runs on.
Watch out for HA and mobility: a soft affinity rule and automatic failover do not reduce your licensing obligation. To license only a subset of nodes, pin Windows with a strict node-affinity rule to the licensed hosts — so the VM can never land elsewhere.
The per-VM with Software Assurance model gives you license mobility — it "travels" with the VM between servers. Without Software Assurance, legally moving a core license between hosts is limited (once every 90 days), which in practice conflicts with the idea of an HA cluster.
Catalog prices for Windows Server 2025
Below are indicative Microsoft catalog prices (Open channel / ERP price list, net of VAT) for Windows Server 2025. These are base prices for perpetual licenses (without Software Assurance) — a reference point for budgeting; the real price depends on the purchase channel, partner and volume.
| Item | Catalog price (USD, net) | Approx. (PLN, net) |
|---|---|---|
| Windows Server 2025 Standard — base 16-core license | $1,176 | ~4,700 zł |
| Windows Server 2025 Datacenter — base 16-core license | $6,771 | ~27,100 zł |
| Standard — 2-core add-on pack | $147 | ~590 zł |
| Datacenter — 2-core add-on pack | $846 | ~3,400 zł |
| Windows Server CAL (user or device) | $45 | ~180 zł |
| RDS CAL (user or device) | $153 | ~610 zł |
Example — a 2×16 = 32 physical-core host. Datacenter: base 16-core license ($6,771) + 8 two-core packs (8 × $846) = $13,539 (~54,000 zł) and any number of Windows VMs. Standard on the same host: $1,176 + 8 × $147 = $2,352 (~9,400 zł), but only 2 Windows VMs (each further pair is another set).
Prices are indicative, converted at ~4 zł/USD. Microsoft publishes the price list in USD; PLN prices at partners vary with exchange rate and margin. On top of the core license you add CALs (and possibly RDS CALs) and — optionally — Software Assurance or the pay-as-you-go subscription via Azure Arc.
Perpetual license — how long is it valid
The prices above are for perpetual licenses — that is, with no expiry: you buy once and get the right to run that version indefinitely, with no renewal fees. There are, however, two important caveats:
- Tied to a specific version — a Windows Server 2025 license grants the right to run that version forever, but does not entitle you to newer ones. Moving to the next version means a new license or Software Assurance (which adds upgrade rights).
- The real "clock" is the support lifecycle (~10 years) — the license doesn't expire, but security patches do: typically 5 years mainstream + 5 years extended support. After that the system still runs legally, but without fixes (a compliance and cyber-insurance problem).
| Version | End of support (patches) |
|---|---|
| Windows Server 2016 | January 2027 |
| Windows Server 2019 | January 2029 |
| Windows Server 2022 | October 2031 |
| Windows Server 2025 | ~2034 |
Perpetual vs subscription: the opposite of a perpetual license is the subscription model (e.g. pay-as-you-go via Azure Arc), which works only as long as you pay — stop paying and you lose the right to use it. Perpetual = an indefinite right to use, but in practice "useful" for as long as the version receives patches.
Azure Arc pay-as-you-go — costs on Proxmox
Instead of buying a license, you can bill Windows Server 2025 hourly through an Azure subscription — including for VMs running in your own data center on Proxmox VE. It requires installing the Azure Arc agent on each Windows machine and an active Azure subscription (charges land on your Azure invoice); there's a 7-day trial.
| Parameter | Azure Arc pay-as-you-go (Windows Server 2025) |
|---|---|
| Rate | ~$403 / core / year = $33.58 / core / month (~$0.046 / core / hour) |
| Standard vs Datacenter | same price (edition-agnostic) |
| What it counts | the cores the Windows instance sees — for a Proxmox VM, its vCPU |
| Minimum cores | none (the 16 / 8 rule doesn't apply) |
| CALs | included (no Windows Server CAL needed); RDS CALs separate |
| Virtualization | no "unlimited" — each VM licensed separately, no AVMA |
Example on a dense host. A 2-vCPU Windows VM on a 128-core EPYC 9755: PAYG counts only 2 cores = 2 × $33.58 = ~$67/mo (~270 zł/mo, ~3,200 zł/yr) — instead of licensing all 128 host cores under the classic model. That (alongside per-VM with Software Assurance) is a way to sidestep the "dense-host trap", at the cost of a recurring fee and a dependency on Azure.
PAYG pays off for short-term, seasonal or variable use and for a few small Windows VMs on a dense node. For steady, multi-year workloads a perpetual license is usually cheaper — 16 cores on PAYG is ~$537/mo, so a perpetual Standard (16 cores, $1,176) pays back in ~2 months, and Datacenter in ~13.
Software Assurance — costs and what it gives you on Proxmox
Software Assurance (SA) is a paid add-on to a perpetual license, costing for server products about 25% of the license price per year (usually bought as an L&SA bundle for 1–3 years).
| Item (WS2025, 16 cores) | License | SA / year (~25%) | License + 3 years SA |
|---|---|---|---|
| Standard | $1,176 (~4,700 zł) | ~$294 (~1,180 zł) | ~$2,058 (~8,200 zł) |
| Datacenter | $6,771 (~27,100 zł) | ~$1,693 (~6,770 zł) | ~$11,850 (~47,400 zł) |
In a Proxmox environment in your own data center, SA gives three things that genuinely lower cost and risk:
- Flexible Virtualization — with per-VM licenses under Software Assurance or a subscription (minimum 8 cores per VM) you can reassign the license between hosts more often than once every 90 days. That is one way to run a legal HA cluster. The other is a full license on every node the VM can land on. License Mobility does not cover Windows Server. A physical-core license stays on the 90-day rule even with SA.
- Per-VM model — SA unlocks licensing by the VM's cores (min. 8 per VM) instead of all the host's physical cores — the cheapest way to run a few Windows VMs on a dense node.
- Rights to newer versions — upgrade Windows Server during the SA term (removes the version lock of a perpetual license).
All rates (PAYG $33.58/core/mo, SA ~25%/yr) are Microsoft's public list figures — confirm they're current and fit your scenario with a licensing partner. PAYG requires an Azure subscription and Arc-agent connectivity; SA is bought through the volume channel.
Which model to choose
- Many Windows VMs on a host → Datacenter: license the physical cores once, unlimited VMs. At list prices (16 cores: Datacenter $6,771, Standard $1,176 per 2 VMs) it pays off from about 11 Windows VMs per node versus "stacked" Standard: 10 VMs need 5 Standard sets ($5,880, cheaper), while 11 VMs need 6 sets ($7,056, more than Datacenter).
- A few Windows VMs on a dense node → per-VM with Software Assurance: pay for 8 cores per VM instead of all the host's physical cores.
- Consolidating Windows onto a dedicated, smaller node — fewer physical cores to license; the same "fewer cores = fewer licenses" logic as with per-core databases.
- HA cluster → count licenses for every node a VM can move to, or restrict it with a strict node-affinity rule, or reach for Software Assurance for mobility.
- CALs (per user/device) always apply, regardless of the core model.
Microsoft licensing is intricate and changes over time — confirm your specific scenario and current prices with a licensing partner or the current "Windows Server Licensing Guide". The above are general rules and indicative prices, not legal advice or an offer.
Planning an OS upgrade during the migration? See our article Windows Server 2016 vs 2025 — the differences, end of support and running WS2025 as a VM on Proxmox VE.
Do Windows licenses bought under VMware carry over to Proxmox
Yes — in most cases. A Windows Server license is independent of the hypervisor: Microsoft licenses it by the server's physical cores, not by whether VMware ESXi, Hyper-V or Proxmox VE (KVM) runs underneath. If you keep the same physical servers and only swap the virtualization layer, your existing per-core licenses remain valid — they cover exactly the same cores. You don't rebuy Windows just because you're leaving VMware.
The devil is in the details — what to keep in mind:
- Volume licenses (Open / EA / MPSA) — transferable between servers. Without Software Assurance you can reassign a license to a specific host once every 90 days; with Software Assurance in the per-VM model (Flexible Virtualization) — more often than once every 90 days. SA alone does not lift the 90-day rule for physical-core licensing, and License Mobility does not cover Windows Server. That matters for an HA cluster.
- OEM licenses — permanently tied to the original server. They stay valid if you swap VMware for Proxmox on the same hardware, but you may not move them to a new/different physical server.
- CALs (per user/device) and RDS CALs — entirely independent of the hypervisor, they carry over unchanged.
- New, denser hardware? If the migration also moves VMs onto different servers, re-count the cores — a license covers a specific number of cores, and a 128-core host needs far more than an old 16-core one (see "the dense-host trap").
Support (SVVP): this is separate from whether the license stays valid. Proxmox VE is not on the SVVP list, but Windows Server runs correctly on it. Do Microsoft tickets cover Proxmox sets out when Microsoft works a ticket and when it closes one.
In short: volume licenses and CALs move to Proxmox without a problem, while OEM stays with its server. When moving to new hardware or an HA cluster, consider Software Assurance — it grants legal license mobility between nodes.
Do Microsoft tickets cover Proxmox
Microsoft does not support Proxmox. The SVVP (Server Virtualization Validation Program) names the hypervisors on which Microsoft supports Windows Server as a guest. Joint support covers vendors such as VMware, Red Hat, Citrix, Nutanix, SUSE, Canonical and Virtuozzo. Proxmox VE is not on the SVVP list in the Windows Server Catalog, so Microsoft does not support Windows Server as a guest on Proxmox.
Sharing a KVM codebase with an SVVP-validated distribution does not put Proxmox on that list. Microsoft validates a specific product and version, not the KVM project itself. Windows Server runs correctly on Proxmox VE. Not being listed in SVVP is a matter of Microsoft technical support, not the validity of the license — the license depends on the host's physical cores, not on the hypervisor.
Microsoft does not take bugs in Proxmox itself, in Proxmox's QEMU build, in live migration, or in host-side storage and networking. Those tickets go to Proxmox support.
| Where the cause sits | What Microsoft does |
|---|---|
| A bug in Windows itself | Microsoft works a ticket for a fault in Windows itself, such as a component, a server role, or an update. The hypervisor is not the cause. |
| A suspected hypervisor issue | Microsoft may require a reproduction on Hyper-V (Windows Server 2016 or later) or on a server without virtualization. A reproduction that exists only on Proxmox is not enough for a Microsoft fix. |
| A cause inside Proxmox | Microsoft closes the case as a configuration outside the supported set. Proxmox support takes it from there. |
KB 897615: except for the cases that article describes, Microsoft does not test or support its software on third-party hypervisors. For a hypervisor outside SVVP and without a joint-support agreement, Microsoft investigates for customers on a Premier agreement, but it may require the fault to be reproduced independently of Proxmox. Hypervisor features — moving a VM between hosts, assigning more memory than the host has — stay with the hypervisor vendor even for products on the SVVP list. That is not the full production support for the Windows Server and Proxmox pair that a catalog listing provides.
We'll size the Windows licenses for your cluster
We'll pick the licensing model (Standard, Datacenter, per-VM) and design the Windows VM placement and HA rules so the license cost is as low as possible — legally and with room to grow.
⚡ Free consultation → Windows Server 2016 vs 2025