Skip to main content

Hetzner Raised Prices Twice in 2026: What It Actually Does to the Self-Hosting Cost Pitch

9 min readDora NodaDora Noda
Share
On this page

A CX23 box — 2 shared Intel vCPUs, 4GB RAM — costs €5.49 a month on Hetzner today. Before April 2026 it cost €3.99. A CCX23 box — 4 dedicated AMD vCPUs, 16GB RAM — costs €85.99 a month today. Before June 2026 it cost €31.49. Same company, same twelve months, same DRAM-shortage excuse cited both times, and one line moved 38% while the other moved 173%.

That gap changes the "just self-host it on a €X Hetzner box" pitch this list keeps leaning on — but not evenly. Run the actual break-even math against a metered PaaS and the shared-vCPU lines (CX, CAX) still win at a single tenant, barely dented. The dedicated-vCPU line (CCX) needs roughly twice as many tenants packed onto the same box to clear the bar it used to clear alone. Here's the redone math, line by line, plus the grandfathering wrinkle that means most of this doesn't touch a fleet you already own — until the day you resize it.

The Post-Hike Price Sheet, Split by Node Class

Hetzner raised cloud prices twice in 2026: a broad increase on April 1 (up to 37% on some cloud SKUs, applied to both new orders and every existing server), then a sharper, more targeted move on June 15 that restructured the CPX and CCX lines specifically. The June round is the one that actually splits this comparison, because it didn't touch every line equally. Here's the before/after on the four SKUs that matter for a self-hosted node pool, drawn from Hetzner's own price-adjustment docs and cross-checked against Northflank's independent teardown:

Node classSKUSpecsPre-hikePost-hikeChange
ARM shared vCPUCAX112 vCPU / 4GB€4.49/mo€5.99/mo+33%
Intel shared vCPUCX232 vCPU / 4GB€3.99/mo€5.49/mo+38%
AMD dedicated vCPUCCX132 vCPU / 8GB€15.99/mo€42.99/mo+169%
AMD dedicated vCPUCCX234 vCPU / 16GB€31.49/mo€85.99/mo+173%

The pattern holds across every tier in each family, not just the entries above: CX and CAX SKUs cluster in the 30-38% range end to end, while CPX and CCX SKUs cluster in the 144-176% range. That's not two vendors' worth of difference — it's the same vendor pricing the same underlying DRAM shock at wildly different pass-through rates depending on whether the vCPU allocation is shared or dedicated.

Re-Running the Self-Host-Beats-PaaS Math

Here's the number that actually matters: does a Hetzner box still beat paying for the same workload on a metered PaaS, after these hikes? The honest answer depends entirely on which node class you're asking about, and the cleanest way to see that is to compute how many tenant apps need to share a box before its per-tenant cost undercuts a comparable PaaS plan.

Use two real anchor points instead of one convenient number: Render's Starter web-service instance ($7/month, 0.5 vCPU / 512MB) as the cheap end, and its Standard instance ($25/month, 1 vCPU / 2GB) as a more realistic production tier. Converting Hetzner's euro prices at roughly 1.14 USD/EUR, here's the tenant count each node class needs to beat each baseline, before and after the hikes:

Nodevs. $7/mo (Starter) — pre → postvs. $25/mo (Standard) — pre → post
CX23 (shared, Intel)1 → 11 → 1
CAX11 (shared, ARM)1 → 1 (thin margin: $6.83 of $7)1 → 1
CCX13 (dedicated)3 → 81 → 2
CCX23 (dedicated)6 → 152 → 4

Two things fall out of that table. First, the shared-vCPU lines barely notice: a single CX23 or CAX11 box still comfortably undercuts even the cheapest metered plan, solo, with no tenant-packing required — exactly as true today as it was before April. CAX11 is the one line worth watching, since its post-hike price ($6.83) sits within 17 cents of the $7 Starter floor; the next Hetzner adjustment could flip that specific comparison, though it still clears the more realistic $25 baseline with room to spare.

Second, the dedicated-vCPU line didn't just get more expensive — it got structurally harder to justify at low tenant counts. A CCX13 box used to pencil out against Starter-tier pricing with three tenants sharing it; now it needs eight. Against the more realistic Standard tier, it used to break even solo; now it needs two tenants minimum. That's not a rounding change to a cost model — it's the difference between "any single production workload justifies this box" and "you need a small multi-tenant cluster before this box is the cheaper option."

Put a real fleet number on that. Ten small tenant apps at Starter-equivalent footprint, packed a conservative three-to-a-box on CX23 nodes (leaving headroom for OS and orchestration overhead), need four boxes — €21.96/month, or about $25.03 — against $70/month for the same 10 apps on Render Starter. The self-hosted fleet wins by nearly 3x, same as it would have before either 2026 hike.

Put those same 10 tenants on a single CCX23 dedicated-vCPU box instead, sized as one box for all 10 rather than split across several — and the hike changes the verdict outright. Pre-hike, that box cost €31.49 ($35.90) for all 10 tenants, or $3.59/tenant — comfortably under Starter's $7. Post-hike, the identical box costs €85.99 ($98.03) for the same 10 tenants, or $9.80/tenant — now more expensive per tenant than just paying Render Starter directly. The break-even table above said a CCX23 needs 15 tenants post-hike to clear the $7 bar; a fleet with only 10 doesn't reach it anymore, where it cleared the same bar with room to spare in January.

Why One Line Barely Moved While the Other Tripled

The split isn't arbitrary, and it's the same mechanism this list has already found in Hetzner's cross-vendor pricing: a shared-vCPU instance's cost is dominated by oversubscription math on RAM and CPU that Hetzner sells to multiple tenants per physical core, while a dedicated-vCPU instance's cost is closer to the raw hardware bill for a core (and the RAM behind it) that only one customer gets. When DRAM got scarce and expensive across 2026 — the same AI-driven memory reallocation IDC has called a multi-year shift rather than a cyclical blip — the tier reselling shared, metered access to that memory absorbed the shock far more gently than the tier selling a dedicated, unshared allocation of it. CX and CAX barely felt it; CPX and CCX took nearly the whole hit.

The Grandfathering Trap: "Untouched" Is Doing a Lot of Work

Here's where the two 2026 price actions actually diverge in a way that matters for anyone already running a fleet. April's increase applied to both new orders and every existing server — there was no grandfathering, full stop, per Hetzner's own April statement. June's was different: existing server contracts keep their legacy pricing, unchanged, for as long as they stay untouched. The change applies "exclusively to new orders and rescales of existing servers."

That single word — rescales — is the catch. A rescale (resizing a running server up or down a tier) counts as a new order and immediately switches that node to current pricing, permanently. So the honest framing isn't "the fleet you already own got more expensive" — a CCX23 node you provisioned in May and haven't touched since still bills at €31.49, not €85.99. The honest framing is "new fleet capacity costs more, and touching your existing capacity converts it to new-capacity pricing." For a Cluster-API-managed node pool specifically, that has a concrete operational consequence: a MachineDeployment rolling update that resizes existing nodes rather than replacing them with fresh ones of the same class can silently reprice an entire tenant-facing node pool from legacy rates to the post-June rate sheet, with no separate confirmation step.

What This Means for a Node-Pool Design in Mid-2026

Put the math and the grandfathering mechanics together and the guidance gets specific rather than directional. Default new tenant-facing capacity to shared-vCPU (CX/CAX) node pools wherever the workload tolerates it — the self-host-beats-PaaS case for those lines is essentially untouched by 2026's price actions, still clearing a single-tenant comparison against even the cheapest metered plan. Reserve dedicated-vCPU (CCX) capacity for workloads that specifically need CPU isolation, and size that decision knowing it now needs roughly twice the tenant density to pencil out against a realistic PaaS baseline than it did in January.

And if a fleet is running pre-June CCX nodes at legacy prices, treat any resize operation as what it actually is: not a routine capacity adjustment, but an order at current rates that happens to reuse an existing hostname. A platform provisioning through Cluster API Provider Hetzner should account for that distinction explicitly — replacing a node with a fresh one of the same class preserves nothing about its pricing history either way, but resizing a grandfathered node is the one operation that converts a fixed, known-cheap cost into the new rate sheet without anyone deciding to pay more on purpose.

Bex.co is the open-source, AI-native Render alternative — push a git repo, get a running HTTPS service on machines you own, provisioned through Cluster API onto the same Hetzner node classes this post priced against metered PaaS billing. Star the repo on GitHub or deploy your first app today.


Sources

Related articles

Run this on infrastructure you own

bex is the open-source, AI-native Render alternative — push a git repo and get a running HTTPS service on your own machines.

Get started with bex