Date: 2026-06-01 Author: GloryLabs ops research Context: We run a single TransIP VPS, 4 GB RAM, as a one-node k3s cluster hosting ~5 small product stacks (each: Spring Boot + Postgres + Redis, some + MinIO). It sits chronically at ~90%+ memory and is too small. We need (a) a bigger node / headroom for the existing stacks, and (b) optionally room for self-hosted analytics (PostHog wants ~16 GB on its own). The practical question: cheapest/best way to get to ~16–32 GB RAM in NL/EU — VPS vs managed Kubernetes, stay-or-leave TransIP.
All prices are ex-VAT, €/month, captured from provider sites in May–June 2026. Where a provider applied an April 2026 price increase, the post-increase number is used. Non-EUR list prices are noted. Sources are linked at the bottom; per-row source is implied by the provider column.
| Provider | Offering | RAM | vCPU | Disk | €/mo (ex-VAT) | Managed K8s? (control-plane) | NL/EU DC? | Notes | |---|---|---|---|---|---|---|---|---| | TransIP | K8s node K16 (shared) | 16 GB | 4 | 50 GB | €80 | Yes — control plane free | NL (Amsterdam/Delft) | + €10/mo per LoadBalancer; storage €1/10GB | | TransIP | K8s node P8 (dedicated) | 16 GB | 8 | 50 GB | €100 | Yes — free CP | NL | dedicated vCPU | | TransIP | K8s node P16 (dedicated) | 32 GB | 16 | 50 GB | €200 | Yes — free CP | NL | | | TransIP | BladeVPS X8 | 8 GB | 4 | 320 GB | €79.99 (€39.99 first 6mo) | No (self-manage k3s) | NL | | | TransIP | BladeVPS X16 | 16 GB | 6 | 320 GB | €149.99 | No | NL | big jump vs competitors | | TransIP | BladeVPS X24 | 24 GB | 8 | 640 GB | €225 | No | NL | | | Hetzner | CX33 (shared Intel/AMD) | 8 GB | 4 | 80 GB | €6.49 | via add-on | DE/FI (EU) | cost-optimized line | | Hetzner | CPX42 (shared AMD) | 16 GB | 8 | 320 GB | €25.49 | — | DE/FI (EU) | best price/GB at 16 GB | | Hetzner | CPX62 (shared AMD) | 32 GB | 16 | 640 GB | €50.49 | — | DE/FI (EU) | best price/GB at 32 GB | | Hetzner | CCX23 (dedicated) | 16 GB | 4 | 160 GB | €24.49 | — | DE/FI (EU) | dedicated vCPU | | Hetzner | CCX33 (dedicated) | 32 GB | 8 | 240 GB | €48.49 | — | DE/FI (EU) | dedicated vCPU | | Contabo | Cloud VPS 30 | 24 GB | 8 | 200 GB NVMe | €11.20 | No | DE/EU (region selectable) | cheapest raw RAM; oversubscribed CPU | | Contabo | Cloud VPS 40 | 48 GB | 12 | 250 GB | €20.00 | No | DE/EU | | | Contabo | Cloud VPS 50 | 64 GB | 16 | 300 GB | €29.60 | No | DE/EU | | | Contabo | Cloud VDS M (phys. cores) | 32 GB | 4 phys | 240 GB | €35.84 | No | DE/EU | dedicated physical cores | | OVHcloud | VPS-4 (2026 range) | 32 GB | 16 | 300 GB NVMe | ~€43.50 | separate MKS | FR/DE/NL/PL (EU) | post-Apr-2026 price | | OVHcloud | Managed K8s node b2-7 | 7 GB | 2 | — | ~€19/node | Yes — CP free | EU (incl. Gravelines/Frankfurt) | Free & Standard plans | | DigitalOcean | DOKS node (mem-optimized) | varies | dedicated | — | ~$84/node | Yes — CP free (HA +$40) | AMS3 (NL) | USD billing | | DigitalOcean | basic 3-node cluster (2vCPU/4GB) | 12 GB total | shared | — | ~$72 total | Yes — CP free | AMS3 (NL) | | | Scaleway | Kapsule node PRO2-S | 32 GB | 8 | — | ~€187 | Yes — CP free (Kapsule) | AMS (NL), PAR, WAW | pricey instances; COST line cheaper | | Vultr | Cloud Compute (16 GB) | 16 GB | 2–4 | — | ~$96–125 | via VKE (CP free) | AMS (NL) | USD billing | | Civo | K8s worker node | varies | — | — | from ~$5.43/node | Yes — CP free | UK/US (no NL DC) | cheap but no NL region | | Leaseweb | VPS (new 2025 line) | 16–32 GB | varies | local NVMe | from €3.99 entry | No | AMS/Rotterdam (NL), FRA | enterprise NL host | | Vimexx | VPS Maximaal | 8 GB | 8 | 300 GB | €59.99 | No | NL (Bit DC, Ede) | Dutch host; 16/32 GB only via custom quote | | Cloud86 / Versio / Yourhosting | NL managed VPS | — | — | — | (mid–high) | No | NL | priced well above Hetzner/Contabo; managed-service premium |
Computed as €/month ÷ RAM(GB), for tiers that actually reach ~16–32 GB. Lower is better.
| Rank | Provider / tier | RAM | €/mo | €/GB-RAM | Type | |---|---|---|---|---|---| | 1 | Contabo Cloud VPS 50 | 64 GB | €29.60 | €0.46 | shared, oversubscribed CPU | | 2 | Contabo Cloud VPS 30 | 24 GB | €11.20 | €0.47 | shared | | 3 | Contabo Cloud VPS 40 | 48 GB | €20.00 | €0.42 | shared | | 4 | Hetzner CPX62 | 32 GB | €50.49 | €1.58 | shared AMD (good CPU) | | 5 | Hetzner CPX42 | 16 GB | €25.49 | €1.59 | shared AMD | | 6 | Hetzner CCX33 | 32 GB | €48.49 | €1.52 | dedicated vCPU | | 7 | Hetzner CCX23 | 16 GB | €24.49 | €1.53 | dedicated vCPU | | 8 | Contabo VDS M | 32 GB | €35.84 | €1.12 | dedicated physical cores | | 9 | OVH VPS-4 | 32 GB | ~€43.50 | ~€1.36 | shared | | 10 | TransIP K16 (managed k8s) | 16 GB | €80 | €5.00 | managed-k8s node, shared | | 11 | TransIP P16 (managed k8s) | 32 GB | €200 | €6.25 | managed-k8s node, dedicated | | 12 | TransIP BladeVPS X16 | 16 GB | €149.99 | €9.37 | self-managed VPS | | 13 | Scaleway PRO2-S (Kapsule) | 32 GB | ~€187 | ~€5.84 | managed-k8s node |
Takeaway: Contabo is ~3x cheaper per GB than Hetzner and ~6–10x cheaper than TransIP — but on heavily oversubscribed shared CPU (fine for idle-ish JVM stacks, risky under sustained load). Hetzner is the price/performance sweet spot: real AMD EPYC cores at ~€1.5/GB. TransIP is 3–6x more expensive per GB than Hetzner at every comparable tier, and the BladeVPS X16 (€150 for 16 GB) is the single worst value in the table.
These are Dutch products processing PII (some PSD2/age-verification, schadeformulier, recruitment), so datacenter jurisdiction matters for the Art. 30 register and DPIAs.
Net: Hetzner-DE and Contabo-DE are GDPR-clean (EU company + EU DC). Only choose them over an NL host if no client contract requires NL-only residency. TransIP remains the strongest pure data-residency story (NL DC + NL company + NEN 7510).
We already self-manage k3s fine on one node. What managed-k8s buys is a maintained control plane (HA API server, etcd, automated version upgrades) — value that scales with cluster size and team size. For a single small node, that value is low and the price premium is high.
| Provider | Control-plane cost | Cheapest path to 16 GB worker | Cheapest path to 32 GB worker | |---|---|---|---| | TransIP Kubernetes | Free | K16 €80 | P16 €200 (or 2×K16 €160) | | OVH Managed K8s | Free | ~3× b2-7 (~€57) or 1 larger node | scale node pool | | DigitalOcean DOKS | Free (HA +$40) | mem-optimized node ~$84 | larger node | | Scaleway Kapsule | Free | PRO2-S node ~€187 (32 GB) | PRO2-S | | Civo | Free | cheap, but UK/US only | — | | Self-managed k3s on a VPS | €0 (we run it) | Hetzner CPX42 €25.49 | Hetzner CPX62 €50.49 |
Conclusion: for one small node, a free managed control plane still forces you onto the provider's node prices, and TransIP/Scaleway node prices are 3–6x Hetzner's. Self-managing k3s on a cheap EU VPS is dramatically cheaper and we already have the operational competence. Managed k8s only becomes worthwhile if/when we go multi-node HA and want hands-off upgrades — at which point OVH Managed K8s (free CP, EU, cheaper nodes than TransIP) is the one to revisit.
Move the k3s node off TransIP to Hetzner Cloud. Stay self-managed k3s.
Hetzner CPX42 — 8 vCPU / 16 GB / 320 GB NVMe — €25.49/mo (ex-VAT). That is 4x the RAM of the current 4 GB node with real AMD EPYC cores, for roughly what we likely pay now, and ~€124/mo less than TransIP's own 16 GB BladeVPS X16 (€149.99). This comfortably unblocks the existing 5 stacks and kills the chronic 90% memory pressure. EU (Germany) DC, GDPR-clean.
Hetzner CPX62 — 16 vCPU / 32 GB / 640 GB NVMe — €50.49/mo (ex-VAT). 32 GB gives the 5 product stacks breathing room and the ~16 GB that self-hosted PostHog wants, on one node. If you want guaranteed (non-oversubscribed) CPU for the JVM-heavy stacks, take CCX33 — dedicated 8 vCPU / 32 GB — €48.49/mo instead (essentially the same price, dedicated cores, slightly less disk).
Stay in NL but drop TransIP BladeVPS for TransIP Managed Kubernetes K16 (€80, 16 GB, free control plane) — ironically cheaper per GB than their own BladeVPS X16 (€150) and it hands you a maintained control plane. Or use Leaseweb (NL DC, new 2025 NVMe VPS line) for a self-managed node. Both cost noticeably more than Hetzner; only pay that premium if NL residency is contractually required.
Contabo Cloud VPS 30 — 24 GB / 8 vCPU / 200 GB NVMe — €11.20/mo (EU/DE). Cheapest path to >16 GB by a wide margin. Caveat: shared, oversubscribed CPU and weaker IOPS — acceptable for mostly-idle JVM stacks, not ideal once PostHog ingestion or real traffic loads the box. Good as a cheap staging/scratch node, not as the primary prod node.
Reacties