Hetzner Cloud vs IONOS Cloud
Both are German clouds that rent plain Linux VMs you set up yourself. Hetzner Cloud bills every started hour and has low rates for servers kept on, while IONOS Cloud bills its Cubes by the minute and adds H200 GPUs and Windows Server.
The companies and products
Hetzner Cloud
Hetzner is a German hosting company founded in 1997; Hetzner Cloud rents virtual servers, storage and networking by the hour.
A Hetzner Cloud server is a Linux VM picked from shared vCPU lines (cost-optimized CX and CAX, regular CPX) or dedicated vCPU (CCX), with local NVMe disk, a public IP and up to 20 TB of traffic in the EU. You add volumes, private networks, firewalls and load balancers, and run everything yourself through the Console, the Cloud API, the hcloud CLI or Terraform. It is general infrastructure, not an agent sandbox, so this page compares the two where they overlap: giving an agent its own Linux machine.
IONOS Cloud
IONOS Cloud is the public cloud of IONOS, a German hosting company in the United Internet group. It is a hyperscaler-style IaaS cloud, not an agent sandbox.
You rent KVM virtual machines: Cubes (fixed sizes from 1 to 16 vCPU with a local NVMe disk, billed by the minute), vCPU servers up to 60 vCPU and 230 GB of RAM, Dedicated Core servers and H200 GPU VMs. You build them in the Data Center Designer or through the Cloud API, SDKs and Terraform, next to block storage, private networks, firewalls and managed services. It is for teams that want to run their own servers in Germany, the rest of Europe or the US, and set up everything on them themselves.
Which use cases each one fits
For each use case, Battleships prices every sandbox provider on the same workload and sorts them from the cheapest monthly bill up. “51st cheapest of 364” means 50 of the other 363 providers run that workload, with every feature it needs, for less. “With limits” means the provider runs it but misses something, so it is listed after every full match. Open a use case for its whole ranking and what each provider misses.
| Use case and its workload | Hetzner Cloud: price rank | IONOS Cloud: price rank | boat: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Both give a root VM with Docker, but Hetzner rules out nested virtualization and IONOS does not document it; boat ranks 3rd with /dev/kvm and coding agents built in. | 46th of 367, with limits $287 a month | 64th of 367, with limits $492 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB | 94th of 366, with limits $325 a month | 107th of 366, with limits $540 a month | 5th cheapest of 366 $657 a month |
| Code interpreter bursts 100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month Short bursts favor per-minute billing: IONOS Cloud ranks 53rd, while full-hour billing puts Hetzner Cloud at 156 and boat's start limits put it at 186. | 156th of 345, with limits $649 a month | 53rd of 345, with limits $27 a month | 186th of 345, with limits $2,000 a month |
| Sandboxes for your users 300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month Neither cloud publishes how many machines can run at once, so 300 user sandboxes need a support request on both; boat ranks 1st with 100 to 2,000 sandboxes by plan. | 46th of 361, with limits $314 a month | 35th of 361, with limits $182 a month | Cheapest of 361 $209 a month |
| RL rollouts 1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month IONOS Cloud ranks 9th for RL rollouts on per-minute Cubes; Hetzner Cloud ranks 104th because every rollout is billed by the started hour, and boat ranks 34th. | 104th of 360, with limits $6,490 a month | 9th of 360, with limits $740 a month | 34th of 360, with limits $2,000 a month |
| Agent evals 250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month | 51st cheapest of 364 $1,010 a month | 93rd of 364, with limits $137 a month | 10th cheapest of 364 $200 a month |
| CI runners 40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month IONOS Cloud ranks 1st for CI runners because Cubes bill by the minute; Hetzner Cloud ranks 83rd since each short job is billed a full hour, and boat ranks 4th. | 83rd cheapest of 377 $788 a month | Cheapest of 377 $60 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Both clouds fit a 24/7 dev box well; IONOS Cloud ranks 9th and Hetzner Cloud ranks 32nd, partly because Hetzner's cheapest CX servers are out of stock. | 32nd cheapest of 368 $42 a month | 9th cheapest of 368 $20 a month | 18th cheapest of 368 $26 a month |
| Computer-use agents 50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month Neither cloud has a desktop stream or computer-use tools, only a console for fixing servers; boat ranks 6th with a 60fps desktop and Chromium built in. | 134th of 369, with limits $320 a month | 86th of 369, with limits $137 a month | 6th cheapest of 369 $200 a month |
| Browser-use agents 50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month | 227th of 367, with limits $312 a month | 156th of 367, with limits $74 a month | 7th cheapest of 367 $200 a month |
| Scraping & bots (startup scale) 50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month | 157th of 346, with limits $62 a month | 153rd of 346, with limits $40 a month | 6th cheapest of 346 $90 a month |
| Mass scraping & bots (undetectable) 1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month | 45th of 338, with limits $1,248 a month | 39th of 338, with limits $897 a month | 71st of 338, with limits $1,800 a month |
| Parallel red teaming 200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month | 114th of 360, with limits $52 a month | 105th of 360, with limits $38 a month | 2nd cheapest of 360 $200 a month |
| GPU eval jobs 10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month | Can't run it | Can't run it | Can't run it |
| macOS agents 5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month | Can't run it | Can't run it | Can't run it |
Key features
| Feature | Hetzner Cloud | IONOS Cloud | boat |
|---|---|---|---|
| Isolation | Every server is a full VM with its own kernel | Every server is a KVM VM with its own kernel | Every sandbox is a full VM with its own kernel |
| CPU speed (Node.js build-and-test, 4 vCPU / 8 GB) | 8.88 runs/s on a shared CX33; CPX and CCX were not measured | Not measured | 26.69 runs/s on dedicated AMD Ryzen 9 9950X (Zen 5) hosts |
| Billing step | Every started hour billed in full, with a monthly cap | Cubes invoiced by the minute, with no plan fee | Per second, from a monthly plan that becomes usage credit |
| Stopping a machine | A powered-off server bills at the full rate until you delete it | A suspended Cube keeps billing; a stopped vCPU server stops compute billing while its volumes keep billing | A stopped sandbox costs nothing and keeps its disk |
| Docker and nested virtualization | Root and Docker; nested virtualization is "not possible on cloud server" | Root Linux VM where you install Docker; running your own VMs inside is not documented | Docker, root, systemd and /dev/kvm on every machine |
| Snapshots and backups | Snapshots you take yourself, or daily backups in 7 slots for 20% of the server price | Manual full snapshots of one volume, usable only in the same location | Automatic snapshots every minute and on stop |
| Fork | Snapshot, then create a new server from it (disk, no memory) | Snapshot a disk, then create new VMs from it (disk, no memory) | Fork a running sandbox in one call (disk, no memory) |
| Desktop and computer use | None built in; a VNC console for admin | None; a remote console for troubleshooting servers | 60fps desktop and Chromium, computer use and browser control, embeddable stream |
| Coding agents and keys | None; you install agents and put secrets on the server yourself | None in the VM; an MCP server lets your own AI client manage IONOS resources | Claude Code, Codex, OpenCode and more preinstalled, a prompt, steer and events API, and an AI credentials proxy for any HTTPS API |
| Reaching the machine | Public IPv4 and IPv6 on any port; HTTPS needs your own certificates or a paid load balancer | Public IP on each VM and any port you open; reserved IPv4 billed per 30 days; load balancers | HTTPS URLs for up to 50 ports, token-protected; raw TCP; own IP |
| Outbound rules | Free Cloud Firewalls with inbound and outbound rules by IP, port and protocol | Network Security Groups with ingress and egress rules by IP, port and protocol | Open internet on every plan; no provider-side allowlist |
| Largest machine | Up to 48 dedicated vCPU / 192 GB (CCX63) | vCPU servers up to 60 vCPU / 230 GB; Cubes up to 16 vCPU / 64 GB | Up to 16 vCPU / 32 GB per sandbox |
| GPUs and Windows | No GPU servers or Windows images | NVIDIA H200 VMs with 1 to 8 GPUs; Windows Server VMs with a licence billed per vCPU | No GPUs; no Windows guests, Wine for Windows apps |
| Regions | Germany and Finland, plus Ashburn, Hillsboro and Singapore | Germany, UK, France, Spain and the US | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | Hetzner Cloud | IONOS Cloud | boat |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | No | Not published | Yes |
| Root | Yes | Not published | Yes |
| Systemd | Yes | Not published | Yes |
| Desktop GUI | No | No | Yes |
| Browser | No | No | Yes |
| Computer-use API | No | No | Yes |
| SSH | Yes | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | No | No | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | No | No | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | No | No | No |
| Wake on request | No | No | No |
| HTTPS preview URLs | No | Yes | Yes |
| Raw TCP inbound | Yes | Not published | Yes |
| Public IPv4 | Yes | Yes | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | No | No | Yes |
| Secret proxy for any API | No | No | Yes |
| Preinstalled agents | No | No | Yes |
| Agent harness API | No | No | Yes |
| MCP server | No | Yes | No |
| GPU | No | Yes | No |
| Windows | No | Yes | No |
| Arm64 | Yes | No | No |
| Self-hosting | No | No | No |
| BYOC | No | No | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | No | Not published | Yes |
| Usage per sandbox (API) | No | Yes | Yes |
| Audit logs | Not published | Not published | No |
| SSO | No | Yes | No |
| SOC 2 | No | Not published | No |
| HIPAA | No | No | No |
| EU data residency | Yes | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
boat did 26.69 Node.js build-and-test runs per second at 4 vCPU / 8 GB in StarSling's public benchmark, on dedicated AMD Ryzen 9 9950X hosts. The only Hetzner Cloud number is 8.88 runs per second on a shared CX33, measured when boat's temporary fallback capacity ran there, about a third of boat's speed; Hetzner's CPX and CCX servers were not measured. IONOS Cloud has no comparable measurement, so there is no direct Hetzner vs IONOS speed number.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Hetzner Cloud measured on: Shared vCPU, Cost-Optimized (CX, Intel/AMD), EU. IONOS Cloud has no published run in this suite yet, so there is no like-for-like number to compare.
Pricing in five scenarios
Each bill is priced from the providers' public price lists by the open Battleships engine, with the cheapest plan that runs the scenario.
| Scenario | Hetzner Cloud, a month | IONOS Cloud, a month | boat, a month |
|---|---|---|---|
| One coding agent, workdays 4 vCPU / 8 GB, 50 GB disk, 8 hours a day, 22 days a month, files kept between days | $3 · Pay-as-you-go (postpaid) · with limits | $5 · Pay as you go | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $10 · Pay-as-you-go (postpaid) · with limits | $20 · Pay as you go | $26 · $20/mo |
| 50 agents in parallel 50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside | $141 · Pay-as-you-go (postpaid) · with limits | $240 · Pay as you go | $317 · $20/mo × 3 seats |
| Sandboxes for your users 2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once | $312 · Pay-as-you-go (postpaid) · with limits | $74 · Pay as you go · with limits | $200 · $100/mo × 2 seats |
| 1,000 short jobs at once 2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month | $2,080 · Pay-as-you-go (postpaid) · with limits | $148 · Pay as you go · with limits | $2,000 · $2000/mo · with limits |
Hetzner Cloud: Hetzner bills each server by the hour, rounding every started hour up, with a monthly cap, and keeps billing until you delete it, even when it is off. The prices here use the shared CX line, which is currently out of stock; the CPX and CCX servers you can order today cost more per hour.
IONOS Cloud: IONOS bills Cubes by the minute at a fixed rate per size with the NVMe disk included, and vCPU servers per core and per GB of RAM. Suspended Cubes keep billing, and reserved IPv4, extra storage and traffic past 2 TB a month cost extra.
IONOS Cloud: You pick a monthly plan from $20, and all of it becomes usage credit spent per second on running sandboxes. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
Every Hetzner scenario is priced on the CX line, which Hetzner's site marks as currently unavailable, so none of them fit as priced today. Neither cloud publishes how many machines an account can run at once: Hetzner reviews a raise request by hand and IONOS raises limits through its support, so 300 user sandboxes or 1,000 jobs at once are not confirmed on either. Hetzner bills a 3-minute job as a full hour, which is why its 1,000-job burst comes to $2,080 against $148 on IONOS. On boat that burst gets queued and needs more starts per day than the $2,000 plan allows.
| Scenario | Hetzner Cloud | IONOS Cloud | boat |
|---|---|---|---|
| One coding agent, workdays |
| None that bite | None that bite |
| One agent that never stops |
| None that bite | None that bite |
| 50 agents in parallel |
|
| None that bite |
| Sandboxes for your users |
|
| None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use Hetzner Cloud when
you want low-rate servers that stay on, large included traffic, daily backups, or regions in the US and Singapore, and you can get the server line you need in stock.
- Low rates for servers kept on. Useful for always-on machines: one 4 vCPU agent running all month comes to $10 on Hetzner's CX line against $20 on IONOS, while stock lasts.
- 20 TB of traffic per server. Useful for heavy downloads: each Hetzner EU server includes 20 TB of outbound traffic, while IONOS includes 2 TB a month per contract.
- Daily backups as a switch. Useful if you want backups without scripts: Hetzner keeps daily backups in 7 slots for 20% of the server price.
Use IONOS Cloud when
your jobs are short and per-minute billing matters, or you need H200 GPUs, Windows Server, very large VMs, or data centers in the UK, Spain or the US.
- Billing by the minute. Useful for short or bursty jobs: IONOS bills Cubes by the minute, while Hetzner bills every started hour in full.
- H200 GPUs and Windows Server. Useful if your workload needs NVIDIA H200 VMs or Windows Server VMs, which IONOS rents and Hetzner Cloud does not.
- Bigger single machines. Useful for very large single machines: IONOS vCPU servers go up to 60 vCPU and 230 GB of memory.
Where boat fits
Hetzner Cloud and IONOS Cloud both rent plain servers that you install, secure and look after yourself. If what you are really running is AI agents, boat gives each one a full VM that is ready to work, with coding agents, a desktop and snapshots built in, and a stopped sandbox costs nothing.
/dev/kvm inside every machine
Agents that run emulators or their own VMs need KVM. Hetzner says nested virtualization is not possible on its cloud servers and IONOS does not document it, so that work moves to a dedicated server you manage.
Free stops and snapshots every minute
Agents sit idle between tasks. A powered-off Hetzner server bills in full and a suspended IONOS Cube keeps billing, so on both you snapshot, delete and rebuild to stop paying, and snapshots are taken by hand.
Agents, desktop and keys ready
On both clouds a server starts as an empty OS image: you install each agent, a desktop and a browser, and the agent can read any key you copy onto it. boat ships them, with a credentials proxy.
Use boat when you are really running AI agents and want each one on a ready full VM: /dev/kvm, coding agents you drive from outside, a desktop and browser, keys kept outside, snapshots every minute and stops that cost nothing. Compare it one to one: boat vs Hetzner Cloud and boat vs IONOS Cloud.
Questions people ask
Is Hetzner Cloud cheaper than IONOS Cloud?
For machines that stay on, Hetzner's list rates are lower: one agent running all month comes to $10 on Hetzner and $20 on IONOS, and 50 agents in parallel come to $141 against $240. Those Hetzner prices use the CX line, which is out of stock. For short jobs IONOS wins on per-minute billing: 1,000 short jobs at once come to $148 on IONOS against $2,080 on Hetzner.
Which is faster, Hetzner Cloud or IONOS Cloud?
There is no direct comparison. Hetzner's shared CX33 did 8.88 Node.js build-and-test runs per second in one measured run, and IONOS Cloud was not measured. boat did 26.69 runs per second at the same 4 vCPU / 8 GB size.
Can Hetzner Cloud and IONOS Cloud run Docker?
Yes. Both give you a root Linux VM where Docker runs. Hetzner says nested virtualization is not possible on its cloud servers, and IONOS does not document it. On boat, Docker, systemd and /dev/kvm are documented on every machine.
Do I pay for a stopped server?
On Hetzner, yes: a server bills at the full rate until you delete it. On IONOS, suspended Cubes keep billing, while a stopped vCPU server stops compute billing but its volumes still bill. On boat, a stopped sandbox costs nothing and keeps its disk.
Which one has GPUs and Windows?
IONOS Cloud rents NVIDIA H200 VMs with 1 to 8 GPUs and Windows Server VMs. Hetzner Cloud has neither. boat has no GPUs and no Windows guests, with Wine for Windows apps.
Where does my data run?
Hetzner Cloud runs in Germany and Finland, and also in the US and Singapore. IONOS Cloud runs in Germany, France and Spain, and also in the UK and the US. boat runs only in the EU (Germany, Finland and France), with EU data residency.
Try boat
Install the CLI, then run boat new.
7-day free trial
More comparisons
- boat vs Hetzner Cloud
- boat vs IONOS Cloud
- AWS EC2 vs Hetzner Cloud
- Google Compute Engine vs Hetzner Cloud
- Azure Virtual Machines vs Hetzner Cloud
- Oracle Cloud vs Hetzner Cloud
- DigitalOcean vs Hetzner Cloud
- Hetzner Cloud vs Vultr
- Hetzner Cloud vs Linode
- Hetzner Cloud vs Scaleway
- Hetzner Cloud vs OVHcloud
- Hetzner Cloud vs Contabo