bochka vs Exoscale

An Exoscale Compute Instance is a plain KVM machine in a European zone that you set up, secure and run yourself. bochka gives an agent a full VM too, with snapshots every minute, fork of a running machine, HTTPS ports, a desktop and coding agents already built in.

Where bochka stands out

Snapshots every minute, fork while running

bochka saves a sandbox's disk every minute and when it stops, and you can fork a running sandbox in one call. On Exoscale you take each snapshot by hand, an account holds 30, one can take several hours, and they are deleted with the instance. Copying a machine means a snapshot, an export to a template, then a new instance.

Coding agents built in, keys kept out

Every bochka sandbox has Claude Code, Codex, OpenCode and other agents ready, and you drive them from outside with a prompt, steer and events API. The credentials proxy keeps real AI keys out of the machine and can switch to another account when one runs out of credits.

HTTPS ports and a desktop, no setup

Each bochka sandbox serves up to 50 ports on HTTPS URLs protected by a token, plus raw TCP, and streams a 60fps desktop with Chromium for computer use. An Exoscale instance has a public IP, and its load balancer works at Layer 4, so HTTPS means your own proxy and certificates.

The companies and products

bochka

bochka.xyz runs sandboxes for AI agents: each one is a full Linux VM with its own kernel.

You start a machine with one command or one API call, then SSH in, run Docker, open a desktop, or let a built-in agent (Claude Code, Codex, OpenCode and others) work in it. The disk stays between sessions, and a stopped sandbox costs nothing.

Exoscale

Exoscale is a European cloud provider from Switzerland that rents compute, storage, networking and managed databases.

A Compute Instance is a KVM virtual machine running Linux, Windows or a custom ISO, picked from Standard, CPU, Memory, Storage optimized or GPU families and billed by the second. You install and run your own software on it, next to Exoscale products like block storage, object storage, Kubernetes (SKS), network load balancers and managed databases. It is general infrastructure, 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. “3rd cheapest of 367” means 2 of the other 366 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 workloadbochka: price rankExoscale: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
Both give a full Linux VM with root and Docker, but an Exoscale instance starts as an empty OS template, while bochka comes with agents, minute snapshots, HTTPS ports and a desktop.
3rd cheapest of 367
$634 a month
173rd of 367, with limits
$1,873 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An Exoscale instance can run an assistant around the clock, but you build the agent setup, the HTTPS endpoint and the backups yourself; bochka has them built in.
5th cheapest of 366
$657 a month
192nd of 366, with limits
$1,805 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Exoscale fits one-minute bursts better: it bills by the second with no start limit, once you raise its default quota of 20 instances, while bochka's start limits queue big bursts.
186th of 345, with limits
$2,000 a month
68th of 345, with limits
$80 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
300 user sandboxes need far more than Exoscale's default 20 instances, so you ask for a quota raise first; bochka allows 100 to 2,000 by plan.
Cheapest of 361
$209 a month
66th of 361, with limits
$569 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
34th of 360, with limits
$2,000 a month
39th of 360, with limits
$2,403 a month
Agent evals
250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month
10th cheapest of 364
$200 a month
22nd cheapest of 364
$481 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 billed by the second; on Exoscale you run the runner software and the clean-up yourself.
4th cheapest of 377
$86 a month
24th cheapest of 377
$293 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
Both fit a 24/7 dev box: an Exoscale standard-large instance comes to $73 a month and a bochka machine to $26, with snapshots every minute.
18th cheapest of 368
$26 a month
55th cheapest of 368
$73 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
bochka streams a 60fps desktop with Chromium and computer use; on Exoscale you install the desktop, the browser and the control loop yourself.
6th cheapest of 369
$200 a month
171st of 369, with limits
$481 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
Exoscale gives you a VM and a static datacenter IP; the browser, its control API and the session handling are yours to build.
7th cheapest of 367
$200 a month
211th of 367, with limits
$240 a month
Scraping & bots (startup scale)
50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month
6th cheapest of 346
$90 a month
197th of 346, with limits
$120 a month
Mass scraping & bots (undetectable)
1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month
71st of 338, with limits
$1,800 a month
96th of 338, with limits
$2,482 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
2nd cheapest of 360
$200 a month
155th of 360, with limits
$126 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Can't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run it

Key features

FeaturebochkaExoscale
What you getA sandbox API for agents, on full VMsA general cloud instance you set up and run yourself
IsolationEvery sandbox is a full VM with its own kernelEvery instance is a KVM VM with its own kernel
CPUDedicated AMD Ryzen 9 9950X (Zen 5) hosts; 26.69 runs/s at 4 vCPU / 8 GBCPU model not published; no comparable measurement
Docker and nested virtualizationDocker, root, systemd and /dev/kvm on every machine, documentedRoot and Docker on Linux templates; nested virtualization is not documented
SnapshotsAutomatic snapshots every minute and on stopManual disk snapshots, 30 per account, can take several hours, deleted with the instance
ForkFork a running sandbox in one call (disk, no memory)Snapshot the disk (stopping first is strongly encouraged), export it to a template, then start new instances
StoppingA stopped sandbox costs nothing and keeps its diskCompute stops billing; the disk keeps billing until you delete the instance
Reaching the machineHTTPS URLs for up to 50 ports, token-protected; raw TCP; own IPPublic IPv4 on any port you open; the load balancer is Layer 4, so HTTPS means your own certificates
Desktop and computer use60fps desktop and Chromium, computer use and browser control, embeddable streamNone built in; you install a desktop and browser yourself
Coding agentsClaude Code, Codex, OpenCode and more preinstalled, with a prompt, steer and events APINone; you install and drive agents yourself, for example over SSH
Keeping keys out of the machineAI credentials proxy for model providers and any HTTPS API you register; switch a credential to another account when credits run outNo credentials proxy; secrets reach the instance through SSH, cloud-init or your own tooling
Outbound rulesOpen internet on every plan; no provider-side allowlistSecurity groups at the hypervisor filter outbound traffic by protocol, IP range and port
GPUs and WindowsNo GPUs; no Windows guests (Wine for Windows apps)Nvidia GPUs from RTX 3080 Ti to B300; Windows instances
RegionsEU only: Germany, Finland, FranceEurope only: Germany, Austria, Switzerland, Bulgaria, Croatia
Compliance and transparencySOC 2 is in progress. We're open about where we stand: live status and data retention policy.SOC 2
Every feature Battleships tracks (43)
FeaturebochkaExoscale
Full VM (own kernel)YesYes
Docker insideYesYes
Nested virtualizationYesNot published
RootYesYes
SystemdYesYes
Desktop GUIYesNo
BrowserYesNo
Computer-use APIYesNo
SSHYesYes
Persistent diskYesYes
Pause/resumeYesNo
Automatic snapshotsYesNo
Fork/cloneYesYes
Live fork (no pause)YesYes
Memory forkNoNo
Custom image (Docker or snapshot)YesYes
≥24 h sessionsYesYes
Idle auto-stopNoNo
Wake on requestNoNo
HTTPS preview URLsYesNo
Raw TCP inboundYesYes
Public IPv4NoYes
Egress allowlistNoYes
Secret proxyYesNo
Secret proxy for any APIYesNo
Preinstalled agentsYesNo
Agent harness APIYesNo
MCP serverNoNo
GPUNoYes
WindowsNoYes
Arm64NoNo
Self-hostingNoNo
BYOCNoNo
Open sourceNoNo
Scoped API keysYesNot published
Spend limitsYesNot published
Usage per sandbox (API)YesYes
Audit logsNoNot published
SSONoYes
SOC 2NoYes
HIPAANoYes
EU data residencyYesYes
Zero data retentionYesNot published

Performance

bochka26.69 runs/s
ExoscaleNot measured

There is no comparable measurement for Exoscale: its instances were not part of the public StarSling benchmark run where bochka did 26.69 Node.js build-and-test runs per second at 4 vCPU / 8 GB. Exoscale does not publish the CPU model behind its instances, so results would depend on the zone and family you pick.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Exoscale 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.

Scenariobochka, a monthExoscale, 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
$20 · $20/mo$22 · Usage account
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$26 · $20/mo$73 · Usage account
50 agents in parallel
50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside
$317 · $20/mo × 3 seats$924 · Usage account
Sandboxes for your users
2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once
$200 · $100/mo × 2 seats$240 · Usage account
1,000 short jobs at once
2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month
$2,000 · $2000/mo · with limits$481 · Usage account

bochka: 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.

Exoscale: Each instance size has an hourly price billed by the second, plus the local disk per GiB-hour, which keeps billing while the instance is stopped. Each running instance also gets 1.42 GB of free outbound traffic per hour, pooled across the organization.

Limits in those scenarios

Exoscale lets an organization run 20 instances by default, so 50 agents in parallel, 300 user sandboxes and 1,000 short jobs at once all need a quota raise through the portal first, and a raised quota does not reserve capacity. Once raised, per-second billing with no start limit suits the 1,000-job burst well. On bochka the limit is a sandbox count (100 to 2,000 by plan) plus starts per minute, so the 1,000-job burst gets queued and needs more starts per day than the $2,000 plan allows. Resizing an Exoscale instance also needs it stopped.

ScenariobochkaExoscale
One coding agent, workdaysNone that biteNone that bite
One agent that never stopsNone that biteNone that bite
50 agents in parallelNone that biteNone that bite
Sandboxes for your usersNone that biteNone that bite
1,000 short jobs at once
  • max 2,400 starts/day (needs ~6,667)
  • max 600 starts/hour (needs ~1,000)
  • bursts above 90 starts/min are queued (a burst of 333 takes ~4 min to start)
None that bite

Which one should you use?

Use Exoscale when

you need GPUs, Windows, a zone in Switzerland, Austria, Bulgaria or Croatia, hypervisor-level egress rules, or a long-lived server next to managed databases and Kubernetes.

  • GPUs in European zones. Useful if your agents train or serve models: Exoscale rents Nvidia GPUs from RTX 3080 Ti up to B300, in Swiss, German, Austrian and Croatian zones.
  • Switzerland, Windows and a whole cloud. Useful if the machine must run Windows, sit in Switzerland or Austria, or live next to managed databases and Kubernetes in one account.
  • Outbound rules at the hypervisor. Useful if untrusted code must only reach chosen IP ranges: security groups filter outbound traffic outside the guest.

Use bochka when

you want each agent on its own full VM that is ready to work: coding agents, a desktop, HTTPS ports and minute-by-minute snapshots built in, fork while running, and stops that cost nothing.

  • Snapshots every minute, fork while running. An agent that breaks its machine needs a recent restore point, and parallel attempts need copies of a busy machine. On Exoscale both mean manual snapshots that Exoscale strongly encourages you to take on a stopped instance.
  • Coding agents built in, keys kept out. An Exoscale instance starts as an empty OS template, so you install, update and supervise each agent over SSH yourself, and any key you put on it can be read by the code the agent runs.
  • HTTPS ports and a desktop, no setup. An agent that starts a dev server or drives a browser wants a working link and a screen right away. On Exoscale you set up TLS, access control and a desktop on every instance first.

Questions people ask

Is bochka cheaper than Exoscale?

For most agent work, yes: one agent that never stops comes to $26 a month on bochka and $73 on Exoscale, and 50 agents in parallel come to $317 against $924. One coding agent on workdays is close, at $20 against $22. For 1,000 short jobs at once, Exoscale comes to $481 and bochka does not fit within its start limits.

Do I pay for an Exoscale instance that is stopped?

Compute stops billing, but the local disk keeps billing per GiB-hour until you delete the instance, and attached volumes keep billing too. On bochka, a stopped sandbox costs nothing and keeps its disk.

Can I run Docker and nested VMs on Exoscale?

Docker works, since an instance is a KVM VM with root. Exoscale's docs do not mention nested virtualization, so you would need to test it. On bochka, Docker, systemd and /dev/kvm are documented on every machine.

Does Exoscale have an agent sandbox product?

No. Exoscale sells general compute, storage, networking and managed services, with a portal, CLI, API and Terraform provider. You install agents yourself and drive them over SSH. bochka is built for agents, with coding agents, a desktop and a credentials proxy in every sandbox.

Where does my data run?

Both stay in Europe. bochka runs in Germany, Finland and France, with EU data residency and a zero data retention option. Exoscale has zones in Germany, Austria, Switzerland, Bulgaria and Croatia.

Is bochka SOC 2 compliant?

SOC 2 is in progress. We're open about where we stand: live status at status.bochka.xyz and our data retention policy at docs.bochka.xyz/data-retention.

Start a sandbox

Install the CLI, then run bochka new.

Product preview

More comparisons

Bochka product preview · Pricing, benchmarks and commands are illustrative. Sandbox provisioning is not connected.