AWS EC2 vs Contabo
AWS EC2 rents general cloud VMs by the second, with GPUs, Windows, macOS and 39 regions, and bills extras like disks and IPv4 on top. Contabo rents a KVM server by the month for a flat rent, which suits one machine that runs all the time but not machines that start and stop.
The companies and products
AWS EC2
AWS EC2 is Amazon's general-purpose cloud VM service, not a sandbox product: you rent virtual servers by the second and set them up yourself.
You pick an instance type (Intel, AMD, Graviton Arm, GPU or Mac), a machine image and a network, and EC2 boots a Nitro VM with its own kernel and root access. Disks are EBS volumes, inbound traffic goes through security groups, and anything agent-specific (agents, desktops, HTTPS URLs, key handling) is yours to build. It is built for every kind of server workload, from websites to GPU training, across AWS's worldwide regions.
Contabo
Contabo is a German hosting company, founded in Munich in 2003, that rents VPS, dedicated-core VDS, GPU and dedicated servers by the month.
A Contabo Cloud VPS is a KVM virtual machine with shared vCPU cores, a fixed RAM allocation, a static IPv4 and root access, which you order, pay for and then manage yourself. It is a VPS host, not a sandbox product: there is no per-second billing, no agent tooling and no managed HTTPS in front of the server. It fits people who want one cheap server that runs all month in a region of their choice.
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. “5th cheapest of 364” means 4 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 | AWS EC2: price rank | Contabo: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month | 87th of 367, with limits $775 a month | 79th of 367, with limits $660 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB An always-on assistant fits Contabo's flat rent well; EC2's lowest always-on price needs a 3-year commitment, and bochka adds snapshots every minute and an agent API. | 114th of 366, with limits $646 a month | 95th of 366, with limits $330 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 | 102nd of 345, with limits $165 a month | 159th of 345, with limits $660 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 suits sandboxes for your users out of the box: EC2 needs your own HTTPS and lifecycle tooling, and Contabo bills monthly with minutes to provision; bochka fits fully. | 70th of 361, with limits $607 a month | 153rd of 361, with limits $1,980 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 EC2 suits large RL rollouts once its quota is raised; Contabo rents servers by the month, and bochka's start limits make big bursts a compromise. | 13th of 360, with limits $830 a month | 108th of 360, with limits $6,600 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 EC2 fits agent evals fully because it bills per second, while Contabo must rent each parallel machine for a whole month; bochka fits fully too. | 5th cheapest of 364 $177 a month | 177th of 364, with limits $1,650 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 EC2 and bochka bill CI runners only while jobs run, while a Contabo runner is rented for the month whether it is busy or not. | 21st cheapest of 377 $255 a month | 133rd cheapest of 377 $2,980 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Contabo ranks first for a 24/7 dev box: a flat monthly rent buys a 4 vCPU / 8 GB server, while EC2 bills compute, disk and IPv4 separately. | 59th cheapest of 368 $76 a month | Cheapest of 368 $6.6 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 Both are headless on Linux, so you install and stream a desktop yourself; bochka streams a 60fps desktop with Chromium for computer use. | 103rd of 369, with limits $195 a month | 140th of 369, with limits $330 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 | 165th of 367, with limits $101 a month | 232nd of 367, with limits $330 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 | 195th of 346, with limits $116 a month | 258th of 346, with limits $330 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 | 82nd of 338, with limits $2,046 a month | 184th of 338, with limits $6,600 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 | 108th of 360, with limits $45 a month | 321st of 360, with limits $1,320 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 EC2 is priced for GPU eval jobs here; Contabo rents an RTX PRO 6000 GPU VPS that this table does not price, and bochka has no GPUs. | 25th cheapest of 98 $1,723 a month | 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 | AWS EC2 | Contabo | bochka |
|---|---|---|---|
| What it is | General cloud VMs from a hyperscaler; you set up everything else | Monthly-rented VPS and VDS servers you set up yourself | Sandbox VMs for agents, started and stopped from an API |
| Billing | Per second with a 60 second minimum; EBS disks and public IPv4 bill on top, also while stopped | Flat monthly rent, minimum first term of one month; listed prices assume a 24-month term | Monthly plan from $20 that becomes usage credit spent per second; a stopped sandbox costs nothing |
| Starting a machine | Launch from the API; boot takes tens of seconds | Order and pay, then provisioning takes a few minutes; orders can need identity checks | A new sandbox from the API in seconds |
| Isolation | Each instance is a Nitro VM with its own kernel | KVM VM; Cloud VPS shares vCPU cores, Cloud VDS has dedicated cores | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Docker and nested virtualization | Root and systemd on any instance, you install Docker; /dev/kvm only on C8i, M8i, R8i and metal instances | Root on the VM, you install Docker; nested virtualization not supported on any VPS plan, only on Cloud VDS | Docker, root, systemd and /dev/kvm ready on every machine |
| Saved state | EBS disks kept and billed while stopped; snapshots manual or scheduled with Data Lifecycle Manager | 1 to 5 manual disk snapshots by plan, kept 30 days, restored in place; none on Cloud VDS | Snapshots every minute and on stop; a stopped sandbox costs nothing |
| Pause and fork | Hibernation keeps memory for the same instance; a copy means making an image and booting a new instance | No fork; custom images upload as ISO or QCOW2 | Fork a running sandbox; named snapshots as templates; resume reboots from disk |
| Desktop and computer use | Linux images have no desktop; Windows instances have Remote Desktop; no computer-use API | Headless server; a VNC console for setup and rescue | 60fps desktop and Chromium, computer use and browser control, embeddable stream |
| Coding agents and keys | No agents preinstalled; IAM role credentials and secrets are read from inside the instance | No agents built in (1-Click images for apps like n8n and Ollama); secrets live on the server | Claude Code, Codex, OpenCode and more preinstalled with a prompt, steer and events API; AI credentials proxy keeps keys outside |
| Reaching the machine | Public IPv4 at $0.005 an hour and any port through security groups; HTTPS needs your own domain, certificate and load balancer | Static IPv4 and a /64 IPv6 subnet included, all ports; domains and TLS are yours to set up | HTTPS URLs with TLS for up to 50 ports, token-protected; raw TCP; dedicated IPv6 or IPv4 |
| Outbound network rules | Security group rules per instance; domain allowlists with AWS Network Firewall or DNS Firewall (paid) | No provider-side domain allowlist | Open internet on every plan; no provider-side allowlist |
| GPUs | Nvidia GPU instances, from L4 and L40S up to H100 and H200 | GPU VPS with an Nvidia RTX PRO 6000 Blackwell (96 GB VRAM), in Europe and US Central | None |
| Operating systems and CPUs | Linux and Windows on Intel, AMD and Graviton Arm; macOS on Mac Dedicated Hosts | Linux, and Windows Server 2016 to 2025 as a licensed add-on | Linux on AMD Ryzen 9 9950X (Zen 5); Wine for Windows apps |
| Regions | 39 regions and 124 availability zones worldwide | 11 locations: EU, UK, three US sites, Singapore, Japan, India, Australia | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | AWS EC2 | Contabo | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | Yes | 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 | Yes | No | Yes |
| Fork/clone | No | No | Yes |
| Live fork (no pause) | No | 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 | No | 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 | Yes | Yes | No |
| Windows | Yes | 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 | Not published | Not published | Yes |
| Usage per sandbox (API) | Yes | No | Yes |
| Audit logs | Not published | Not published | No |
| SSO | Yes | No | No |
| SOC 2 | Yes | No | No |
| HIPAA | Yes | No | No |
| EU data residency | Yes | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
Neither AWS EC2 nor Contabo is in the public benchmark run we use, so there is no comparable CPU score for either. In that run, StarSling's Node.js build-and-test test on 2026-09-29, bochka did 26.69 runs per second at 4 vCPU / 8 GB. EC2 speed depends on the instance family you pick, and Contabo's Cloud VPS shares vCPU cores, so heavy sustained work can be slowed by other tenants.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. AWS EC2 and Contabo have 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 | AWS EC2, a month | Contabo, 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 | $21 · Pay-as-you-go (no platform fee) | $7 · Usage account | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $51 · Pay-as-you-go (no platform fee) · with limits | $7 · 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 | $944 · Pay-as-you-go (no platform fee) | $330 · 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 | $269 · Pay-as-you-go (no platform fee) | $1,980 · Usage account · 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 | $502 · Pay-as-you-go (no platform fee) | $6,600 · Usage account · with limits | $2,000 · $2000/mo · with limits |
AWS EC2: EC2 bills each instance per second (60 second minimum) at its list rate, here the Graviton c7g sizes on demand, with no platform fee. EBS disks and public IPv4 bill on top, also while stopped, and lower rates need a 1-year or 3-year commitment.
Contabo: Contabo charges a flat monthly rent per server, busy or idle, with lower rates for longer terms. Each machine you need at the same time is a full month's rent, so short bursts still pay for the whole month.
Contabo: 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
A new AWS account can run only 5 vCPUs of standard On-Demand instances per region, so 50 agents in parallel or 300 user sandboxes need the quota raised first, and one agent that never stops reaches its lowest price only with a 3-year commitment. Contabo publishes no limit on how many servers one account can run, so 300 sandboxes or 1,000 jobs at once are not confirmed, and each one is a full month's rent. Its shared vCPUs can slow heavy sustained work. On bochka, the 1,000-job burst is the one that does not fit: start limits queue it even on the top plan.
| Scenario | AWS EC2 | Contabo | 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 | None that bite |
|
|
Which one should you use?
Use AWS EC2 when
you need GPUs, Windows, macOS or Arm, regions all over the world, network rules, or large fleets billed by the second, and you have people to build the tooling on top.
- Per-second billing and big fleets. Useful for jobs that start and stop: EC2 bills per second, and can launch large fleets once your quota is raised.
- GPUs, Windows, macOS and Arm. Useful if you need H100 or H200 GPUs, Graviton Arm, Windows desktops or macOS on Mac hosts.
- Network rules and hibernation. Useful if you must limit where code connects, or resume a machine with its memory intact.
Use Contabo when
you want one cheap server that runs all month with a static IP, a GPU VPS or Windows Server, and no hourly billing is needed.
- One server that runs all month. Useful for one always-on box: a flat monthly rent buys a 4 vCPU / 8 GB VPS that runs all the time.
- Address and traffic included. Useful if you want a simple bill: a static IPv4 and a /64 IPv6 subnet come with each server, and inbound traffic is unmetered.
- Dedicated cores when you need them. Useful if shared cores slow you down: Cloud VDS gives dedicated physical cores and supports nested virtualization.
Where bochka fits
Neither EC2 nor Contabo is an agent sandbox: both hand you a VM and leave the agent setup to you. If what you are really running is agents that start, stop and branch machines all day, bochka gives each one a full VM from an API in seconds, saved every minute, with coding agents, a desktop and HTTPS URLs ready.
Coding agents you drive from outside
On EC2 and Contabo you install each agent, write SSH glue to prompt and watch it, and leave API keys on a disk the agent can read. bochka preinstalls the agents, drives them by API and keeps real keys in a credentials proxy.
Saved every minute, forked while running
A Contabo Cloud VPS 4 has one manual snapshot slot, restored in place, and no fork. On EC2 a copy means an image and a fresh boot, and parked machines keep billing disk and IPv4. bochka snapshots every minute and stops for free.
A desktop and /dev/kvm on every machine
Both are headless on Linux, so computer-use agents need a desktop and stream you build. /dev/kvm needs EC2's C8i, M8i, R8i or metal instances, or Contabo's pricier Cloud VDS. bochka has both on every sandbox.
Use bochka when agents start, stop and fork machines all day: each sandbox is a full VM from an API in seconds, saved every minute, with a desktop, HTTPS URLs and coding agents you drive from outside. Compare it one to one: bochka vs AWS EC2 and bochka vs Contabo.
Questions people ask
Is AWS EC2 cheaper than Contabo?
For machines that run all month, Contabo is lower: one agent that never stops is $7 a month on Contabo against $51 on EC2, and EC2 needs a 3-year commitment for that price. For work that starts and stops, EC2 wins: 300 sandboxes for your users come to $269 on EC2 against $1,980 on Contabo, and 1,000 short jobs at once to $502 against $6,600. On bochka those two are $200 and $2,000.
Which is faster, AWS EC2 or Contabo?
We have no comparable CPU measurement for either one. EC2 speed depends on the instance family you choose, and Contabo's Cloud VPS shares vCPU cores, with dedicated cores only on Cloud VDS. bochka scored 26.69 runs per second at 4 vCPU / 8 GB in StarSling's Node.js test.
Does Contabo have hourly billing like EC2?
No. Contabo rents servers by the month with a minimum first term of one month, and its listed prices assume a 24-month term. EC2 bills per second with a 60 second minimum, and bochka bills per second while a sandbox runs.
Can AWS EC2 and Contabo run Docker and nested virtualization?
Both give you root, so you can install Docker yourself. Nested virtualization works on EC2's C8i, M8i, R8i and metal instances, and on Contabo only on Cloud VDS, not on any VPS plan. Every bochka sandbox has Docker and /dev/kvm ready.
Which one has GPUs?
Both do. EC2 rents Nvidia GPU instances from L4 and L40S up to H100 and H200, and Contabo rents a GPU VPS with an Nvidia RTX PRO 6000 Blackwell in Europe and US Central. bochka has no GPUs.
Where do AWS EC2, Contabo and bochka run?
EC2 runs in 39 regions worldwide, Contabo in 11 locations across the EU, the UK, the US, Singapore, Japan, India and Australia. bochka runs only in the EU, in Germany, Finland and France, with EU data residency.
Try bochka
Install the CLI, then run bochka new.
Product preview