← posts / ai integrations

Hetzner tripled some new-instance prices: keep, rescale or move — a decision sheet for a small self-hosted stack

Hetzner's June 2026 prices hit new orders and rescales; old servers keep their rate. Why not to rescale a grandfathered box, where Arm CAX still fits, and hcloud commands to price a move.

if.codesOct 23, 2026 · 6 min read#hetzner#self-hosting#cloud-costs#hcloudAI-assisted

On 15 June 2026 at 8 AM CEST, Hetzner put new prices on cloud and dedicated servers. They apply to new orders and cloud rescales. Servers already running keep the price they had. Hetzner's own changelog puts it plainly: existing servers are not affected "as long as no rescaling is performed". That one condition decides most of what follows.

This is a sheet for engineers running a small stack of a few cloud servers. It covers what changed, why you should not casually rescale a box that is on the old price, where the Arm CAX line still fits, and how to price a move with hcloud before the bill makes the choice for you.

What changed, in numbers

heise online worked out the average increase on new orders by region from Hetzner's price table. The US was hit hardest at about 158 percent. Germany was about 99 percent and Singapore just under 78 percent. heise did not give an average for Finland.

Comparing old rates against new pricing structures.
Comparing old rates against new pricing structures.
USAUSA · Average increase: 158%158%GermanyGermany · Average increase: 99%99%SingaporeSingapore · Average increase: 78%78%
Average new-order price increase by Hetzner region, June 2026 Singapore: just under 78 percent. No average reported for Finland. Source: heise online, Jun 2026
Average new-order price increase by Hetzner region, June 2026
Average increase
USA158%
Germany99%
Singapore78%

Averages hide a split, and the split is the useful part. In Hetzner's table (EUR per month, excluding VAT and IPv4), the shared cost-optimized lines went up by roughly a third. The dedicated-vCPU and CPX lines nearly tripled:

  • CAX11 (Arm), DE/FI: 4.49 to 5.99 (+33%)
  • CAX41 (Arm), DE/FI: 31.49 to 40.99 (+30%)
  • CX23, DE/FI: 3.99 to 5.49 (+38%)
  • CX43, DE/FI: 11.99 to 15.99 (+33%)
  • CPX42, DE/FI: 25.49 to 69.49 (+173%)
  • CCX13, DE/FI: 15.99 to 42.99 (+169%)
  • CPX41, USA: 38.99 to 120.49 (+209%, a bit over three times the old price)
OldNew0 EUR20 EUR40 EUR60 EUR80 EURCX23 · Old: 3.99 EUR3.99 EURCX23 · New: 5.49 EUR5.49 EURCX23CAX11 · Old: 4.49 EUR4.49 EURCAX11 · New: 5.99 EUR5.99 EURCAX11CX43 · Old: 12 EUR12 EURCX43 · New: 16 EUR16 EURCX43CAX41 · Old: 31.5 EUR31.5 EURCAX41 · New: 41 EUR41 EURCAX41CCX13 · Old: 16 EUR16 EURCCX13 · New: 43 EUR43 EURCCX13CPX42 · Old: 25.5 EUR25.5 EURCPX42 · New: 69.5 EUR69.5 EURCPX42
Monthly price before and after 15 June 2026, Germany and Finland Net, excluding VAT and IPv4. Source: Hetzner Docs, Jun 2026
Monthly price before and after 15 June 2026, Germany and Finland
OldNew
CX233.99 EUR5.49 EUR
CAX114.49 EUR5.99 EUR
CX4312 EUR16 EUR
CAX4131.5 EUR41 EUR
CCX1316 EUR43 EUR
CPX4225.5 EUR69.5 EUR

Hetzner says the cause is "still extremely high procurement costs for new hardware" (quoted by heise). The same cause drove the April round. According to heise, web hosting, managed and Exchange servers, IPs, storage and load balancers are not covered by the June change. Orders placed before 15 June but delivered after it keep the old prices. On dedicated servers Hetzner is also dropping individual hardware configurations, and heise reports lower setup fees at the higher prices.

Rule 1: a rescale reprices the box, in either direction

The old price stays on your server only while you leave its type alone. A rescale moves it to current pricing. That includes a downgrade, and this is the case that catches people. Take a CCX23 in Germany on the old price of 31.49. Downgrade it to a CCX13 and you pay the new CCX13 price of 42.99. Your bill goes up by 11.50 a month for a smaller server.

Rescaling a server instance can trigger a change in billing rates.
Rescaling a server instance can trigger a change in billing rates.

Hetzner's price page also says that "certain changes" to servers on legacy pricing can switch them to current pricing, and it points to an FAQ for the full list. Rescaling is the only trigger documented on the pages we could read. Read that FAQ before you touch a grandfathered server in the Console.

In the CLI, the command to be careful with is this one:

# This is a rescale. It moves the server to current pricing.
hcloud server change-type --keep-disk my-server cx43

When an old-price box runs out of headroom, compare these options before you rescale:

  • Add, don't grow. Keep the old-price CCX13 at 15.99 and add a new CAX31 at 20.99. That comes to 36.98 a month. Rescaling the CCX13 to a CCX23 costs 85.99.
  • Offload state. Volumes, Object Storage and load balancers are outside this round. Moving data off the root disk can buy time without a type change.
  • Don't rebuild just to tidy up. A delete and recreate is a new order, so it gets the new price.

One limit: the old price is not a promise. The previous round, announced on 23 February and effective 1 April 2026, applied to existing services as well, according to heise. Budget for the next round reaching your old-price boxes too.

Want AI wired into the systems you already run?I build LLM integrations with costs and quality you can see. The estimate is free.

Rule 2: CAX still makes sense, with conditions

At about +30 to +33 percent, the Arm CAX line rose by the same share as the x86 CX line, and far less than CPX or CCX. In Germany and Finland a CAX41 (16 vCPU, 32 GB RAM, 320 GB NVMe on Hetzner's product page) now costs 40.99. A CPX42 (8 vCPU, 16 GB) costs 69.49. If your stack runs on arm64, CAX is still the cheapest way to get cores and memory at Hetzner.

Arm-based architecture remains a cost-effective alternative for many workloads.
Arm-based architecture remains a cost-effective alternative for many workloads.

The conditions:

  • Your images must have an arm64 build. Build multi-arch images before you move anything:
docker buildx build --platform linux/amd64,linux/arm64 -t registry.example.com/app:1.4.2 --push .
  • CAX is EU-only. Hetzner lists it only for Germany and Finland. It is no answer for the US or Singapore price jump.
  • Check stock before you plan around it. When we checked on 22 October 2026, the cost-optimized product page showed every CX and CAX plan as "currently unavailable". Check stock and location before a migration depends on it.

Hetzner's prices are listed without IPv4. The product page adds 0.50 for the IPv4 address, so a CAX41 shows as 41.49 there.

Rule 3: price the move before the bill does it for you

The API lists prices per server type and location. Note that these are today's list prices, not the legacy rate on your invoice. So the numbers below are what each server would cost if you ordered or rescaled it now. Compare them with your latest invoice to see how much the old price is saving you.

First, check the field shape on your CLI version:

hcloud server-type describe cax21 -o json | jq '.prices[0]'

Each entry has location, price_hourly, price_monthly (each with net and gross), included_traffic and price_per_tb_traffic.

Your servers, with type and location:

hcloud server list -o columns=name,type,location,status

What your fleet would cost at current list prices, per server and in total:

hcloud server list -o json | jq -r '
  .[]
  | .datacenter.location.name as $loc
  | [.name, .server_type.name, $loc,
     (.server_type.prices[] | select(.location == $loc) | .price_monthly.net)]
  | @tsv' \
  | awk -F'\t' '{ printf "%-20s %-8s %-6s %8.2f\n", $1, $2, $3, $4; s += $4 }
               END { printf "%-36s %8.2f EUR/month net at list price\n", "TOTAL", s }'

A price sheet of every type at every location, cheapest first:

hcloud server-type list -o json | jq -r '
  .[] | .name as $t | .architecture as $a
  | .prices[] | [$t, $a, .location, .price_monthly.net] | @tsv' \
  | sort -t$'\t' -k4,4n | column -t

Specs and availability for the shortlist:

hcloud server-type list -o columns=name,architecture,cores,memory,disk,location_available

With those three outputs side by side, the decision for each server is arithmetic:

  1. Keep it if it still fits. Its old price is likely below anything you can order today.
  2. Add a new small box next to it rather than rescale, if the sum is below the new price of the larger type.
  3. Move it, either to CAX in the EU or to another provider, only when the list-price total from the script is above what you would pay elsewhere. Count the migration hours, the egress and the time with both setups running at once.
  4. Plan the move now if the box runs in the US or on CPX/CCX and is likely to need a rescale soon. Those lines have the biggest gap between old and new prices.

Run the fleet script once a month. If Hetzner changes prices again, you will see it in a diff on the output instead of on an invoice.

Sources

if.codesI build RAG, AI integrations and agent pipelines on Go and Python backends — and write about it here.
// keep reading

More posts on AI and backends.

// free quote

Read something you need? I’ll quote it for free.

RAG, AI integrations, agents or the backend underneath — tell me what you have and what should change. I read every request myself.

Free · no commitment

Tell me what you have. I’ll tell you what it takes.

1Describe the projectA few sentences is enough — about two minutes.
2I review itI read it myself and may ask a follow-up question.
3You get a free quoteScope, approach and estimate — yours to keep, no strings.
What kind of project is it?
Free and without obligation. Your details are used only to reply — see the privacy policy.