Hetzner Cloud vs Linode
Hetzner Cloud and Linode both rent plain Linux VMs that you set up yourself, bill every started hour, and keep billing while a server is off. Hetzner's list prices are lower and its biggest machines are larger, while Linode runs in 33 regions and rents Nvidia GPUs.
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.
Linode
Linode is a general-purpose cloud, now sold as Akamai Cloud, and a Linode is one of its Linux virtual machines.
A Linode is a Linux VM you rent by size, with root, a public IP, local disk and, on older plans, a monthly transfer allowance. You pick a distribution, then install and run your own software on it, next to Akamai Cloud products like Kubernetes, block storage, NodeBalancers, VPCs and cloud firewalls. It is a server host, not an agent sandbox, so this page compares the two where they overlap: giving an agent its own Linux machine.
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 | Linode: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Both give root and Docker on a full VM but neither has nested virtualization; bochka adds /dev/kvm, coding agents and free stops. | 46th of 367, with limits $287 a month | 145th of 367, with limits $1,292 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 | 164th of 366, with limits $1,200 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 | 156th of 345, with limits $649 a month | 174th of 345, with limits $1,200 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 Both bill a 10-minute user session as a full hour and raise machine limits by support request, so 300 user sandboxes need that first on either. | 46th of 361, with limits $314 a month | 114th of 361, with limits $1,090 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 | 104th of 360, with limits $6,490 a month | 186th of 360, with limits $24,000 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 Both fit agent evals on full VMs, with Hetzner slightly ahead in the ranking; bochka ranks higher with free stops and minute snapshots. | 51st cheapest of 364 $1,010 a month | 55th cheapest of 364 $1,080 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 Both run Docker builds on a full VM, but a ten-minute job is billed as an hour on each and you run the runner software yourself. | 83rd cheapest of 377 $788 a month | 137th cheapest of 377 $4,320 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Both fit a 24/7 dev box well: each is a classic always-on server with a monthly price cap on most plans. | 32nd cheapest of 368 $42 a month | 40th cheapest of 368 $48 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 ships a desktop, so you install one yourself; bochka streams a 60fps desktop with Chromium and computer use. | 134th of 369, with limits $320 a month | 272nd of 369, with limits $1,440 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 | 311th of 367, with limits $1,080 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 | 190th of 346, with limits $108 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 | 89th of 338, with limits $2,160 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 | 189th of 360, with limits $182 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 Only Linode fits here: it rents Nvidia GPU instances by the hour, while Hetzner Cloud and bochka have no GPUs. | Can't run it | 78th of 98, with limits $1,500 a month | 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 | Linode | bochka |
|---|---|---|---|
| What you get | A general Linux VM you set up and run yourself | A general Linux server you set up and run yourself | A sandbox API for agents, on full VMs |
| Isolation | Every server is a full VM with its own kernel | Every Linode is a full VM with its own kernel, isolated at the hypervisor | 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 | No comparable measurement; shared and dedicated CPU plans | 26.69 runs/s on dedicated AMD Ryzen 9 9950X (Zen 5) hosts |
| Docker and nested virtualization | Root and Docker; nested virtualization is "not possible on cloud server" | Root and Docker; Linode staff say nested virtualization is not supported | Docker, root, systemd and /dev/kvm on every machine |
| Stopping | A powered-off server bills at the full rate until you delete it | A powered-off Linode is still billed; you delete it to stop paying | A stopped sandbox costs nothing and keeps its disk |
| Snapshots | Snapshots you take yourself, or daily backups in 7 slots for 20% of the server price | Paid Backups add-on: scheduled disk backups plus one manual snapshot per Linode | Automatic snapshots every minute and on stop |
| Fork | Snapshot, then create a new server from it; shutting down first is recommended | Clone copies all disks to a new Linode; the docs say to power off first | Fork a running sandbox in one call (disk, no memory) |
| Reaching the machine | Public IPv4 and IPv6 on any port; HTTPS needs your own certificates or a paid load balancer | Public IPv4 on any port; HTTPS needs your own certificates or a NodeBalancer | HTTPS URLs for up to 50 ports, token-protected; raw TCP; own IP |
| Desktop and computer use | None built in; a VNC console for admin | None in the images; you install one and reach it through the Glish console | 60fps desktop and Chromium, computer use and browser control, embeddable stream |
| Coding agents and keys | None; you install agents yourself and put secrets on the server | None; StackScripts install general software, secrets go in user data or files | Claude Code, Codex, OpenCode preinstalled with a prompt, steer and events API; AI credentials proxy for any HTTPS API |
| Outbound rules | Free Cloud Firewalls with outbound rules by IP, port and protocol | Free Cloud Firewall with outbound rules by protocol, port and IP range | Open internet on every plan; no provider-side allowlist |
| GPUs | None | Nvidia RTX 4000 Ada, RTX PRO 6000 Blackwell and Quadro RTX 6000 by the hour | None |
| Machine sizes and CPU types | Up to 48 dedicated vCPU / 192 GB (CCX63); Arm servers in the CAX line | Shared, dedicated and premium CPU plans | Up to 16 vCPU / 32 GB per sandbox |
| Regions | Germany and Finland, plus Ashburn, Hillsboro and Singapore | 33 regions in 15 countries across the Americas, Europe, Asia and Australia | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | Hetzner Cloud | Linode | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | No | No | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Yes | Yes | 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 | No | Yes |
| Automatic snapshots | No | No | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | No | 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 | No | Yes |
| Raw TCP inbound | Yes | Yes | 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 | No | No |
| GPU | No | Yes | No |
| Windows | No | No | No |
| Arm64 | Yes | No | No |
| Self-hosting | No | No | No |
| BYOC | No | No | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Yes | Yes |
| Spend limits | No | No | Yes |
| Usage per sandbox (API) | No | No | Yes |
| Audit logs | Not published | Yes | No |
| SSO | No | Yes | No |
| SOC 2 | No | Yes | No |
| HIPAA | No | Yes | No |
| EU data residency | Yes | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
In StarSling's public benchmark at 4 vCPU / 8 GB, bochka did 26.69 Node.js build-and-test runs per second on its own dedicated AMD Ryzen 9 9950X hosts. The only Hetzner number is a shared CX33 at 8.88 runs per second, about a third of bochka's speed; Hetzner's CPX and CCX servers were not measured. Linode has no comparable measurement, so there is no fair speed ratio between Hetzner Cloud and Linode.
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. Linode 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 | Linode, a month | bochka, 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 | $13 · Usage account | $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 | $48 · Usage account | $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 | $634 · Usage account | $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 | $1,080 · Usage account | $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 | $7,200 · Usage account · 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 cheapest CX servers, which are currently out of stock, so CPX and CCX servers you can order today cost more.
Linode: Each Linode size has an hourly price, rounded up to the next full hour, billed from create to delete, including while powered off. Most plans stop at a monthly cap, but G8 dedicated and GPU plans have no cap since July 2026.
Linode: 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. Both clouds bill a 10-minute session or a 3-minute job as a full hour, and both raise per-account machine limits by support request, which matters for 50 agents, 300 user sandboxes or 1,000 jobs at once. Linode's 1,000-job burst also runs on shared vCPUs that other tenants can slow. On bochka the limit is a sandbox count (100 to 2,000 by plan) plus starts per minute, so that burst is queued and needs more starts per day than the $2,000 plan allows.
| Scenario | Hetzner Cloud | Linode | bochka |
|---|---|---|---|
| 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 | None that bite |
| Sandboxes for your users |
| None that bite | None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use Hetzner Cloud when
you want low-priced long-lived Linux servers in Europe, big dedicated or Arm machines, and you can wait for or pay more than the out-of-stock CX line.
- Lower list prices. Useful if you run long-lived servers: Hetzner's CX servers cost a fraction of a similar Linode, when they are in stock.
- Big dedicated machines and Arm. Useful for heavy single machines: dedicated CCX servers go up to 48 vCPU and 192 GB, and CAX servers run on Arm.
- A measured CPU number. Useful if you want data first: a shared CX33 was measured at 8.88 runs per second, while Linode has no comparable number.
Use Linode when
you need GPUs, regions across the Americas, Asia and Australia, or servers you can order today next to Kubernetes, block storage and firewalls.
- Regions around the world. Useful if your users are far from Europe: Linodes run in 33 regions in 15 countries, including Brazil, India, Japan and Australia.
- GPUs by the hour. Useful if your agents train or serve models: Akamai Cloud rents Nvidia GPU instances by the hour, and Hetzner Cloud has none.
- Machines you can order today. Useful if you need servers now: Linode's shared 4 vCPU / 8 GB plan fits every scenario except the burst, while Hetzner's CX line is out of stock.
Where bochka fits
Hetzner Cloud and Linode are general clouds, not agent sandboxes, and bochka is not a general cloud: it has no GPUs and runs only in the EU. If what you are really running is agents, each on its own Linux machine, bochka gives that machine /dev/kvm, coding agents, a desktop and minute snapshots, and stops that cost nothing.
Nested virtualization
Agents that run Android emulators, Firecracker or their own VMs need /dev/kvm. Hetzner says nested virtualization is not possible on cloud servers and Linode does not support it, so that work falls back to slow emulation or moves elsewhere.
Idle agents and copies
Both clouds bill a powered-off server in full, so idle agents cost money unless you script snapshot, delete and recreate. Both also tell you to power off before copying a machine; bochka forks a running sandbox in one call.
Agents, desktop and keys built in
Both start from an empty OS image, so you install and supervise each agent and desktop, and any key you place can be read by the agent's code. bochka ships coding agents, a 60fps desktop and a credentials proxy.
Use bochka when what you run is agents: each on its own full VM with /dev/kvm, coding agents, a desktop, HTTPS ports and minute snapshots built in, fork while running, and stops that cost nothing. Compare it one to one: bochka vs Hetzner Cloud and bochka vs Linode.
Questions people ask
Is Hetzner Cloud cheaper than Linode?
On list prices, yes. One agent that never stops comes to $10 a month on Hetzner's CX33 against $48 on Linode, and 50 agents in parallel come to $141 against $634. But the CX line is currently out of stock, so the Hetzner servers you can order today cost more.
Which is faster, Hetzner Cloud or Linode?
There is no fair answer from measured data. A shared Hetzner CX33 did 8.88 Node.js build-and-test runs per second, and Linode was not measured. bochka did 26.69 runs per second at the same 4 vCPU / 8 GB size.
Can Hetzner Cloud or Linode run Docker and nested VMs?
Both run Docker, since each server is a full VM with root. Neither supports nested virtualization: Hetzner says it is not possible on cloud servers, and Linode staff say it breaks live migration. On bochka, Docker, systemd and /dev/kvm are on every machine.
Do I pay for a server that is turned off?
Yes, on both. Hetzner and Linode bill a server for as long as it exists, on or off, so you delete it to stop paying. On bochka, a stopped sandbox costs nothing and keeps its disk.
Which one has GPUs?
Only Linode. Akamai Cloud rents Nvidia RTX 4000 Ada and Quadro RTX 6000 instances by the hour, with RTX PRO 6000 Blackwell on request. Hetzner Cloud and bochka have no GPUs.
Where does my data run?
Hetzner Cloud runs in Germany and Finland, plus Ashburn, Hillsboro and Singapore. Linode runs in 33 regions in 15 countries, including several in Europe. bochka runs only in the EU (Germany, Finland and France), with EU data residency.
Try bochka
Install the CLI, then run bochka new.
Product preview
More comparisons
- bochka vs Hetzner Cloud
- bochka vs Linode
- 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 Scaleway
- Hetzner Cloud vs OVHcloud
- Hetzner Cloud vs IONOS Cloud
- Hetzner Cloud vs Contabo