Hetzner vs Azure (2026): The Honest Price Comparison
The short answer: for indie developers and small teams comparing Hetzner vs Azure, Hetzner is still the cheap Azure alternative for generic Linux workloads, even after Hetzner's June 15, 2026 price increase. As of July 2026, a Hetzner CX43 (8 shared vCPU, 16 GB RAM, 160 GB NVMe, 20 TB traffic) is €15.99/month; Azure's closest size, D4s_v5 (4 vCPU, 16 GB RAM), is ~$140/month before disks and bandwidth. The killer difference is egress: Hetzner includes 20 TB and charges ~€1/TB after; Azure meters at $0.087/GB (~$87/TB) after 100 GB free. Azure genuinely wins on compliance, managed services, and global regions — details below.
First, the thing most comparisons haven't caught up with: Hetzner raised prices in June 2026
We'd rather tell you this ourselves than have you find it at checkout. Effective June 15, 2026, Hetzner adjusted cloud pricing for new orders and rescales. The shared-vCPU CX line went up modestly, roughly 1.3–1.4x (CX23 from €3.99 to €5.49). The CPX and dedicated-vCPU CCX lines went up hard, 2.1–2.75x: CCX13 jumped from €15.99 to €42.99, CCX23 from €31.49 to €85.99. Existing servers keep their old price until you rescale them.
Two consequences for this comparison. One: our original headline framing ("€24 CCX23 vs $160 Azure") is dead — that CCX23 price no longer exists for new orders. Two: the value story has shifted within Hetzner. The shared CX line is now clearly where the price-performance lives, and the dedicated CCX line is only ~1.5x cheaper than Azure's D-series instead of ~6x. Every number below is the post-increase price, verified as of July 2026. Older "Hetzner vs Azure" articles quoting pre-June prices are wrong.
Price for price: Hetzner Cloud vs Azure VMs (as of July 2026)
Hetzner prices are net EUR (ex-VAT, ex-IPv4) for Germany/Finland locations. Azure prices are East US, Linux, pay-as-you-go at ~730 hours/month, compute only — Azure bills OS disks and bandwidth separately, Hetzner includes both. All Azure links on this page are plain links; we don't earn anything on Azure.
| Workload size | Hetzner (EU, net €) | Azure (East US, PAYG) | Gap |
|---|---|---|---|
| 2 vCPU / 4 GB (entry web app) | CX23 — €5.49 (2 shared vCPU, 40 GB NVMe, 20 TB traffic) | B2s — ~$30 ($0.0416/hr, burstable) | ~5x |
| 2 vCPU / 8 GB | CX33 — €8.49 (4 shared vCPU, 80 GB NVMe, 20 TB) | B2as_v2 — ~$55 · D2s_v5 — ~$70 | ~6-8x |
| 4-8 vCPU / 16 GB (app or DB server) | CX43 — €15.99 (8 shared vCPU, 160 GB NVMe, 20 TB) | D4s_v5 — ~$140 ($0.192/hr) | ~8x |
| 16 vCPU / 32 GB | CX53 — €29.49 (320 GB NVMe, 20 TB) | D8s_v5 — ~$280 ($0.384/hr) | ~9x |
| Dedicated 2 vCPU / 8 GB | CCX13 — €42.99 (dedicated AMD, 80 GB NVMe, 20 TB) | D2s_v5 — ~$70 + disk | ~1.8x |
| Dedicated 4 vCPU / 16 GB | CCX23 — €85.99 (dedicated AMD, 160 GB NVMe, 20 TB) | D4s_v5 — ~$140 + disk | ~1.5x |
Three footnotes that matter. First, Azure's B-series is burstable: it accrues CPU credits and throttles when they run out, so it's only comparable to Hetzner's shared line for genuinely idle-most-of-the-time workloads. Second, Azure's quoted price excludes the OS disk — a 128 GB Premium SSD (P10) adds about $20/month per VM in East US, while every Hetzner plan includes local NVMe. Third, Azure gets meaningfully cheaper if you commit: 1-year reservations save roughly a third, 3-year around half. Hetzner has no commitment pricing; the sticker is the price.
Location matters more than it used to
Hetzner's headline value is concentrated in its EU locations (Falkenstein, Nuremberg, Helsinki). The cheap CX line is Germany/Finland only. In the US (Ashburn, Hillsboro) you're limited to CPX and CCX plans at higher US prices — after June 15, a US CPX11 (2 vCPU, 2 GB) is €17.49 and a US CCX13 is €43.49 — and US servers include only 1 TB of traffic (then ~€1/TB). Singapore is pricier still (CCX13 at €53.99, CPX22 at €26.49) with just 0.5 TB included and €7.40/TB overage. The honest read: Hetzner's US and Singapore regions are still cheaper than Azure for compute, but the blowout-value region is Europe. If your users are in the EU/US and you front the origin with a CDN, that's fine; if you need Sydney or Mumbai, Hetzner simply isn't there.
The killer difference: egress pricing
Compute pricing gets the headlines, but bandwidth is where hyperscaler bills actually explode. Azure gives every account 100 GB of free internet egress per month, then meters: in US/EU regions it's $0.087/GB for the first 10 TB, $0.083/GB for the next 40 TB (Asia-Pacific regions start at $0.12/GB). Hetzner's EU cloud servers include 20 TB of outbound traffic in the plan price, with overage at roughly €1/TB. Inbound is free on both.
| Monthly egress | Hetzner (EU server) | Azure (US/EU region) |
|---|---|---|
| 1 TB / month | €0 (inside the 20 TB allowance) | ~$80 (924 GB billed at $0.087/GB after 100 GB free) |
| 5 TB / month | €0 | ~$437 |
| 20 TB / month | €0 | ~$1,730 (tiered: $0.087 first 10 TB, $0.083 next 40 TB) |
| Each extra TB beyond that | ~€1 (EU and US locations) | $83-87 |
Run the per-terabyte math past the free allowances and it's roughly €1 vs $87 — an ~80x difference. This is why "cheap Azure alternative" searches spike every time someone ships a media-heavy app, a download mirror, a podcast host, or a video project on Azure and gets their first real bandwidth bill. On Hetzner, a 5 TB/month workload costs nothing beyond the server; on Azure it's ~$437/month in bandwidth alone — often more than the VM serving it. Azure does waive egress fees entirely if you're migrating off Azure, which is a genuinely useful (and slightly ironic) policy we cover in the migration section.
What we measured: CCX23 vs D4s_v3
In spring 2026 we ran identical WordPress workloads (WordPress 6.5, Redis object cache, 2 GB seed database, ApacheBench at 100 concurrent for 60 seconds) on a Hetzner CCX23 in Falkenstein and an Azure D4s_v3 in West Europe. The performance numbers below still stand — hardware didn't change in June, prices did. At the time, the CCX23 cost €24/month; the same plan is now €85.99 for new orders, which changes the value ratio but not the measurements.
| Metric | Hetzner CCX23 | Azure D4s_v3 | Hetzner advantage |
|---|---|---|---|
| WordPress LCP (cold cache) | 1.4s | 2.1s | 50% faster |
| WordPress LCP (warm cache, Redis) | 0.6s | 0.9s | 50% faster |
| NVMe random read IOPS | ~85,000 | ~28,000 | 3× faster |
| NVMe sequential write | 1,800 MB/s | 650 MB/s | 2.8× faster |
| ApacheBench req/sec (100 concurrent) | 347 req/s | 118 req/s | 2.9× faster |
| MySQL query latency (p50) | 1.8 ms | 3.2 ms | 43% faster |
The IOPS gap is the structural one: Hetzner plans ship local NVMe; standard Azure Premium SSD is network-attached storage with per-disk IOPS caps (a P10 tops out at 500 provisioned IOPS, burstable to 3,500). Azure can match local-NVMe performance with Premium SSD v2 or Ultra Disk, at additional cost and configuration. For database-backed apps, disk latency is the difference you feel.
Where Azure genuinely wins
We're a Hetzner affiliate and this is not a hit piece. Azure is not "overpriced Hetzner" — it's a different product, and for a real set of buyers it's the correct one:
- Compliance and enterprise SLAs. HIPAA BAAs, FedRAMP, PCI-DSS attestations, SOC 1/2/3 reports on demand, financially-backed uptime SLAs (up to 99.99% for multi-zone VM deployments), and audit tooling your compliance officer can actually use. Hetzner has ISO 27001 and excellent GDPR posture, but it will not sign a BAA and it isn't FedRAMP anything.
- The managed-services ecosystem. Azure SQL, Cosmos DB, Service Bus, Functions, AKS, Blob Storage, Key Vault, Application Insights — hundreds of services where the operational work is Microsoft's problem. Hetzner sells you a fast server and primitives; the 3 a.m. Postgres page is yours.
- Entra ID / Active Directory integration. If your company runs on Microsoft 365, unified identity, conditional access, and SSO across your infrastructure is something no independent host can replicate.
- Regions. 60+ Azure regions across every inhabited continent vs Hetzner's six locations in Germany, Finland, the US, and Singapore. Latency-sensitive users in South America, India, the Middle East, or Australia are an Azure (or AWS/GCP) problem, not a Hetzner one.
- Multi-region failover. Availability zones, region pairs, Front Door, Traffic Manager, geo-replicated storage. Hetzner gives you two EU countries plus the US and a lot of DIY.
- Credits and startup programs. New accounts get $200 of credit; Microsoft for Startups offers up to $150,000 in Azure credit. Free money is a legitimate architecture input for a pre-revenue startup — just model the post-credit bill before you build in dependencies you can't afford later.
- Commitment discounts. Reserved instances and savings plans cut compute ~33% (1-year) to ~55% (3-year). At 3-year committed rates, Azure's premium over Hetzner's dedicated CCX line gets thin.
Where Hetzner wins
- Price-performance. Per the table above: 5–9x cheaper on the shared CX line for equivalent RAM, with local NVMe that benchmarked 3x the IOPS of Azure's standard Premium SSD. Nothing in Azure's catalog touches €15.99 for 16 GB of RAM with storage and 20 TB of traffic included.
- Predictable billing. A Hetzner invoice is servers × price, plus a few cents of IPv4 (billed hourly, ~€0.70/month each) and optional 20%-of-server-price backups. There is no egress meter ticking, no per-IOPS charge, no surprise line items. Azure bills are famously multi-dimensional — compute, disks, disk transactions, egress, inter-zone traffic ($0.01/GB each way), public IPs, snapshots, backup storage — and "why is my Azure bill $400 higher this month" is a whole genre of forum post. For a bootstrapped SaaS, variance is a cost too.
- Simplicity. Console to running server in under a minute, a clean API, an official Terraform provider, and a pricing page a human can read in full. No pricing calculator with 200 SKUs, no "which of 11 storage redundancy options" decision tree before you can deploy a side project.
- EU data residency by default. German company, German/Finnish datacenters, GDPR-native. For EU customers who'd rather not paper over US CLOUD Act questions, that's a feature, not a footnote.
A worked TCO: small SaaS on both clouds
Abstract percentages hide too much, so here's a realistic small-SaaS build: two app servers (2–4 vCPU, 8 GB each), one database server (16 GB), daily backups, three public IPv4s, and 2 TB/month of egress. Arithmetic shown, from the unit prices verified above (as of July 2026).
Hetzner (Falkenstein, shared CX line)
- 2 × CX33 app servers (4 vCPU, 8 GB): 2 × €8.49 = €16.98
- 1 × CX43 database server (8 vCPU, 16 GB): €15.99
- Backups (20% of each server): 0.2 × €33.0 ≈ €6.60
- 3 × primary IPv4 (~€0.70/mo each): ~€2.10
- 2 TB egress: €0 (inside the 20 TB allowance)
Total: ~€41.70/month (~$46). If you insist on dedicated cores for the database, swap the CX43 for a CCX23 at €85.99 and the total becomes ~€126/month (~$138) — the June price rise bites hardest exactly here.
Azure (East US, pay-as-you-go)
- 2 × D2s_v5 app servers (2 vCPU, 8 GB): 2 × $0.096/hr × 730 = $140.16
- 1 × D4s_v5 database server (4 vCPU, 16 GB): $0.192/hr × 730 = $140.16
- 3 × P10 128 GB Premium SSD OS/data disks: 3 × ~$19.71 = ~$59
- Azure Backup for 3 VMs: ~$40 (protected-instance fees plus backup storage; workload-dependent estimate)
- 2 TB egress: (2,048 GB − 100 GB free) × $0.087 = ~$169
Total: ~$550/month — roughly 12x the Hetzner shared-line build, or 4x the dedicated-CCX variant. A 1-year reservation on the compute trims it to roughly $450; it does not touch the egress or disk lines. And note what the Azure build still doesn't include that the price difference could buy: a managed database. Add Azure Database for PostgreSQL instead of self-hosting and the gap widens again. The honest framing: on Hetzner you're paying ~$46 and doing the ops yourself; on Azure you're paying ~$550 for the option of not doing them.
When NOT to choose Hetzner
The mirror image of the TCO. Pick Azure (or another hyperscaler) and don't look back if any of these describe you:
- You need managed databases, queues, or serverless. If your architecture assumes Azure SQL, Cosmos DB, Service Bus, or Functions, Hetzner offers none of it. Self-managing Postgres, Redis, and RabbitMQ is real ongoing work — patching, failover, backup testing. If nobody on the team wants to own that, the hyperscaler premium is just the ops salary you're not paying.
- HIPAA-type compliance. No BAA from Hetzner means no US healthcare data, full stop. Same logic for FedRAMP and most US-government-adjacent work. Regulated fintech should also check whether auditors will accept a provider without the big-cloud attestation stack.
- Multi-region failover requirements. If your SLA demands automatic failover across geographically separate regions with zone-redundant storage, Azure has the machinery built in. On Hetzner you'd be hand-rolling it across Falkenstein and Helsinki — possible, but you become the reliability engineer.
- Your users are far from Hetzner's six locations. A CDN masks this for static content, but dynamic, latency-sensitive traffic from Asia-Pacific (outside Singapore), India, South America, or Africa needs a nearby region Hetzner doesn't have.
- You're burning startup credits. With $150k of Founders Hub credit, Azure is literally free for a while. Take the money — but architect so the eventual exit (or renegotiation) is possible.
- Bandwidth-heavy and US/Singapore-locked. Hetzner's 20 TB allowance is an EU-location perk; US plans include 1 TB and Singapore 0.5 TB. Overage is still only ~€1/TB in the US, so it's rarely a dealbreaker — but the "egress is basically free" story is a European one.
Migrating from Azure to Hetzner: the lift-and-shift path
For a standard Linux stack (reverse proxy, app processes, database, object storage), moving off Azure is less dramatic than it sounds. The high-level path we'd follow:
- Inventory managed-service dependencies first. The VMs are trivial; the lock-in lives in Azure SQL, Blob Storage SDK calls, Service Bus, Functions, and Entra-integrated auth. For each, decide: self-host an equivalent (Postgres, MinIO/Hetzner object storage, RabbitMQ), swap to a third-party managed service, or keep that one piece on Azure in a hybrid setup.
- Provision and harden the Hetzner side. Create servers, a private network, and firewall rules. If your deploy is already Docker Compose, Kubernetes, or Ansible, this is an afternoon. If it's "we clicked around the portal in 2022," write it down as code now — our VPS setup guide covers the baseline (SSH keys, firewall, unattended upgrades) in about 15 minutes.
- Move data. Dump and restore the database (
pg_dump/mysqldump, or logical replication for near-zero downtime), andrclone syncBlob Storage containers to Hetzner's S3-compatible object storage. Azure waives egress charges for customers migrating off the platform — invoke that; on a multi-terabyte dataset it's real money. - Run both in parallel briefly. Point a staging domain at Hetzner, replay production traffic or run your E2E suite, and let the database replicate until cutover.
- Cut over DNS. Lower TTL to 60s a day ahead, switch, watch error rates, keep the Azure environment stopped-but-restorable for a week before deleting it (stopped VMs still bill for disks — deallocate, snapshot, then clean up).
Total effort for a typical small SaaS: a focused week including testing, mostly spent on step 1. At a ~$500/month saving, the migration pays for itself fast — which is exactly the cloud-cost sanity check this page is about.
Honesty disclosures
We use Hetzner's referral program: sign up via our Hetzner link and you get €20 in credit once you spend €10, and we later get €10 in credit. Mutual credit, not cash commission; your price is identical either way. We earn nothing on Azure — every Azure mention here is a plain, untracked link, and if Azure is the right call for you (see the sections above), take it.
FAQ
Is Hetzner really cheaper than Azure?
Yes, though the gap narrowed after Hetzner's June 15, 2026 price adjustment. As of July 2026, a Hetzner CX43 (8 shared vCPU, 16 GB RAM, 160 GB NVMe, 20 TB traffic) is €15.99/month net in Germany/Finland, while Azure's closest size, D4s_v5 (4 vCPU, 16 GB), is ~$140/month pay-as-you-go before disks and bandwidth. On dedicated cores it's closer: CCX23 at €85.99 vs that same ~$140 plus extras.
Did Hetzner raise its prices in 2026?
Yes, effective June 15, 2026 for new orders and rescales. The shared CX line rose ~1.3–1.4x (CX23 €3.99 → €5.49); the CPX and dedicated CCX lines rose 2.1–2.75x (CCX13 €15.99 → €42.99, CCX23 €31.49 → €85.99). Existing servers keep their old price until rescaled. Even post-increase, the CX line remains several times cheaper than comparable Azure VMs.
Why is Azure egress so expensive compared to Hetzner?
Azure meters internet egress per gigabyte: after 100 GB/month free, US/EU regions bill $0.087/GB for the first 10 TB — about $80 per TB. Hetzner includes 20 TB on EU servers and charges ~€1 per extra TB in EU/US locations. Past the free allowances that's roughly an 80x per-TB difference, and it's the line item that most often shocks people off hyperscalers.
When should I still use Azure instead of Hetzner?
When you need HIPAA BAAs, FedRAMP, or audit-grade compliance; deep Microsoft 365 / Entra ID integration; managed services like Azure SQL, Cosmos DB, or AKS; multi-region failover; regions near users Hetzner doesn't serve; or while you're spending startup credits (up to $150k via Microsoft for Startups). For generic Linux workloads with an EU/US audience, Hetzner is dramatically better value.
Is Hetzner a good cheap Azure alternative for a small SaaS?
For most indie and SMB workloads, yes. Our worked example — 2 app servers, 1 database server, backups, 2 TB egress — comes to ~€42/month (~$46) on Hetzner's CX line vs ~$550/month on Azure D-series pay-as-you-go. The trade is operational: you run your own database, backups, and monitoring instead of consuming managed services.
Can I use Hetzner for HIPAA workloads?
Effectively no: HIPAA requires a Business Associate Agreement from your hosting provider, and Hetzner doesn't sign them. Hetzner is ISO 27001 certified and strong on GDPR/EU data residency, but US healthcare and government compliance regimes need Azure, AWS, or GCP.
How hard is it to migrate from Azure to Hetzner?
For lift-and-shift Linux stacks, about a focused week: provision and harden servers, restore the database, sync object storage, run in parallel, cut DNS over. Azure waives egress fees for departing customers, which helps on big datasets. The real work is replacing managed services — every Azure SQL or Service Bus dependency becomes software you run or a service you buy elsewhere.
Does Hetzner have an equivalent of Azure's managed databases and App Service?
No. Hetzner sells primitives — servers, volumes, load balancers, networks, firewalls, snapshots, S3-compatible object storage — with no first-party managed database, serverless, or PaaS layer. That gap is the honest explanation of the price difference: Azure bundles an operations department; Hetzner assumes you are one.
Related Guides
- How to Set Up a VPS, the hardening and setup baseline for the migration path above.
- Best Cheap VPS Hosting (2026), full comparison of Hetzner against Cloudways, Hostinger, Contabo, Vultr, DigitalOcean.
- Hetzner vs DigitalOcean, the mid-market version of this trade: price-performance vs managed services and docs.
- Contabo vs Hetzner, the budget-EU matchup, cores-per-euro vs disk speed.
- Best Minecraft Server Hosting, where DIY on Hetzner pays for itself by month 2.