# Azure Virtual Machines (Windows Server)

Official pricing: https://azure.microsoft.com/en-us/pricing/details/virtual-machines/windows/  
Category: windows · Isolation: vm

## Pricing regimes (raw)

- **Pay-as-you-go D/F-series + Windows licence (East US)** (sizes): Standard_F2s_v2 2 vCPU/4 GiB $0.085/h; Standard_D2as_v5 2 vCPU/8 GiB $0.086/h; Standard_D2s_v5 2 vCPU/8 GiB $0.096/h; Standard_F4s_v2 4 vCPU/8 GiB $0.17/h; Standard_D4as_v5 4 vCPU/16 GiB $0.172/h; Standard_D4s_v5 4 vCPU/16 GiB $0.192/h
- **B-series burstable + Windows licence (East US)** (sizes): Standard_B2s 2 vCPU/4 GiB $0.0416/h; Standard_B2ms 2 vCPU/8 GiB $0.0832/h; Standard_B4ms 4 vCPU/16 GiB $0.166/h; Standard_B4als_v2 4 vCPU/8 GiB $0.136/h [burstable]
- **Azure Spot VM (representative East US)** (sizes): Standard_D4als_v7 4 vCPU/8 GiB $0.06693/h [spot]

## Features

Yes: snapshots, pause/resume, persistent disk, volumes, ≥24 h sessions, custom image (Docker or snapshot), start from your own snapshot, full VM (own kernel), Docker inside, nested virtualization, root, browser, desktop GUI, SSH, public IPv4, custom domains, raw TCP inbound, egress allowlist, open internet, static egress IP, private networking, SOC 2, HIPAA, SSO, GPU, arm64, Windows, HTTP method/path egress rules, webhooks, audit logs, EU data residency, spend limits, MCP server, snapshots on demand, gVisor or VM (no shared kernel), inbound access rules, firewall inside (nftables), extra volumes, shared volumes

No: memory snapshots, fork/clone, idle auto-stop, your own Docker/OCI image, systemd, computer-use API, code interpreter, browser + desktop control, anti-bot stealth, CAPTCHA solving, residential IPs, preinstalled agents, HTTPS preview URLs, self-hosting, BYOC, open source, macOS, Python, Node.js, wake on request, live resize, live fork (no pause), memory fork, automatic snapshots, agent harness API, hosted agent API (their own agent), secret proxy, secret proxy for any API

Unknown: everything else. Evidence (source + quote) per feature: https://battleships.dev/data/providers/azure-windows.json → feature_evidence

## Caveats

- Disk: Standard SSD E10 (128 GiB) = $9.60/month -> $0.075/GiB-month; Windows OS disks default to 127 GiB and are billed per provisioned tier even when deallocated. Premium SSD P10 = $19.71/month.
- Snapshots/images: $0.05/GB-month on Standard LRS/ZRS based on used data; $0.12/GB-month when stored on Premium SSD. Incremental snapshots bill changed blocks.
- Egress: first 100 GB/month free, then $0.087/GB (Microsoft network routing, first 10 TB); $0.08/GB with Internet routing preference.
- IPv4: Standard static public IP $0.005/h = $3.65/month.
- Azure Hybrid Benefit (BYO licence) removes the Windows surcharge; reservations / savings plan / Spot not encoded.
- Free account: $200 credit for 30 days (encoded as one_time_credit) and 750 h/month of B2ts/B2pts/B2ats v2 for 12 months (not encoded).
- The modeled rates are Windows Server, but Azure also permits Windows 11 VMs: eligible Windows 11 Enterprise E3/E5 or Azure Virtual Desktop Access users can bring licenses for production; Student/Free Trial and eligible Visual Studio offers can deploy Windows 11 for dev/test.
- Hibernation is real memory-preserving pause/resume, but only selected D/E v5 families up to 64 GiB and selected GPU families up to 112 GiB support it; F-series and B-series sizes modeled in the card do not. Hibernated VMs stop compute billing but retain OS/data disk and networking charges; OS disk must be large enough for RAM.
- Reserved VM Instances (1y/3y) and savings plans discount compute only; the Windows licence stays pay-as-you-go ($0.184/h on D4s_v5). Example D4s_v5 East US: Linux RI $1,038/1y or $1,993/3y; Linux savings plan $0.1316736/h (1y), $0.0883584/h (3y). Not encoded.
- Egress after the first 100 GB/month: $0.087/GB from North America/Europe (encoded), $0.12/GB from Asia/Australia/Middle East-Africa, $0.181/GB from South America (first 10 TB).
- The general Azure Free page currently says B1s, B2pts v2, and B2ats v2, while the Windows VM pricing page says B2ts v2, B2pts v2, and B2ats v2. The Intel SKU is inconsistent across Microsoft pages and should not be normalized without account-level confirmation.

## How this provider charges


Azure Windows VMs cost the Linux price **plus a Windows Server licence**:
- D-series and F-series: the surcharge is **$0.046 per vCPU-hour**.
- B-series (burstable): the surcharge is only $0.004 per vCPU-hour.

Billing is **per full minute**. All numbers were re-queried from the official Retail Prices API (eastus, Consumption) on 2026-09-28.

## Regime table

| # | Regime | When it applies | How billed | Numbers (East US, Linux → Windows $/h) | Source |
|---|---|---|---|---|---|
| 1 | Pay-as-you-go D/F-series | Default | Full minutes while running ("6 min 45 s → billed 6 min") | D2s_v5 2/8 0.096 → 0.188; **D4s_v5 4/16 0.192 → 0.376**; D8s_v5 0.384 → 0.752; D2as_v5 0.086 → 0.178; D4as_v5 0.172 → 0.356; F2s_v2 2/4 0.0846 → 0.177; **F4s_v2 4/8 0.169 → 0.354**; F8s_v2 0.338 → 0.708 | https://prices.azure.com/api/retail/prices, https://azure.microsoft.com/en-us/pricing/details/virtual-machines/windows/ |
| 2 | B-series burstable | B-family | Same billing, CPU credits | B2s 2/4 0.0416 → 0.0496; B2ms 2/8 0.0832 → 0.0912; B4ms 4/16 0.166 → 0.182 (+$0.004/vCPU-h) | same |
| 3 | Stopped (not deallocated) | OS-level shutdown | **Cores still billed** (licence not) | full compute rate | Azure Windows pricing FAQ |
| 4 | Stopped (deallocated) | Stop from the portal/API | Compute $0. Disks and static IPs still bill | | same |
| 5 | Managed disks | OS + data disks | Per provisioned tier per month | Standard SSD E10 (128 GiB) $9.60 → ~$0.075/GiB-month; Premium SSD P10 $19.71 | Retail Prices API (Storage) |
| 6 | Snapshots | Managed-disk snapshots | GB-month | $0.05 (Standard HDD), $0.132 (SSD) | same |
| 7 | Egress | Internet | First 100 GB/month free, then tiered | $0.087/GB (Microsoft routing) or $0.08/GB (Internet routing) first 10 TB | Retail Prices API (Bandwidth) |
| 8 | Public IPv4 | Standard static IP | Per hour | $0.005/h ($3.65/month) | Retail Prices API (Virtual Network) |
| 9 | Azure Hybrid Benefit | You bring Windows Server licences | Licence removed, pay Linux-equivalent compute | -$0.046/vCPU-h | Azure Windows pricing page |
| 10 | Free account | New accounts | $200 credit for 30 days + 750 h/month of B2ts/B2pts/B2ats v2 for 12 months | | same |

## Gotchas

1. **Shutting down from inside Windows is not deallocation.** Cores keep billing until you deallocate.
2. The default Windows OS disk (127 GiB) is billed as a full E10/P10 tier **even when deallocated**.
3. F-series v2 Windows prices differ from Linux + 0.046 × vCPU by up to $0.002/h. The card adjusts the base so the Windows totals are exact.
4. The licence roughly doubles D/F-series prices. B-series is almost licence-free but throttles to baseline under sustained CPU.
5. Windows 11 client is not available on plain VMs (only through AVD multi-session / Windows 365).

## Worked example

Workload: 4 vCPU / 8 GiB, 50 concurrent × 8 h/day × 22 days (8,800 h), 30% CPU, 50 GiB snapshots, 100 GiB egress.

Assumptions: VMs are deallocated nightly; each keeps an E10 OS disk and a Standard static IP all month.

| Regime | Compute | Disks (50 × E10) | Snapshots | Egress | IPv4 | **Monthly** |
|---|---|---|---|---|---|---|
| F4s_v2 Windows ($0.354) | $3,115.20 | $480.00 | $2.50 | $0 (100 GB free) | $182.50 | **$3,780.20** |
| D4s_v5 Windows 4/16 ($0.376) | $3,308.80 | $480.00 | $2.50 | $0 | $182.50 | **$3,973.80** |
| B4ms Windows 4/16 ($0.182); 30% util must stay under the B4ms baseline (not verified) | $1,601.60 | $480.00 | $2.50 | $0 | $182.50 | **$2,266.60** |
| F4s_v2 with Hybrid Benefit ($0.169) | $1,487.20 | $480.00 | $2.50 | $0 | $182.50 | $2,152.20 |

Sources: https://azure.microsoft.com/en-us/pricing/details/virtual-machines/windows/ · https://prices.azure.com/api/retail/prices (Virtual Machines, Storage, Bandwidth, Virtual Network; eastus)
