bochka vs Vercel Sandbox

Both give each sandbox its own kernel. bochka is built for agents that work for hours on one machine, with a desktop, a browser and an API to drive them; Vercel Sandbox is built for short runs of untrusted code in 19 regions around the world.

Where bochka stands out

Agents can work all day

On paid plans a bochka machine runs as long as you want, with no session cap, and saves its files every minute. Vercel stops each session after 24 hours, and its docs say sandboxes are not designed to run continuously.

A desktop and a browser built in

Every bochka sandbox can stream a 60fps desktop with Chromium, and you get computer-use and browser-control APIs. That lets an agent open the app it built and check it. Vercel Sandbox is headless only.

Drive the agents inside from outside

bochka runs Claude Code, Codex and five other agents in the sandbox and gives you one API to prompt them, steer them and stream their events. On Vercel the agents are installed, but you run them as plain commands and build that layer yourself.

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.

Vercel Sandbox

Vercel is a cloud platform for web apps and agents, and Vercel Sandbox is its product for running untrusted or agent-written code in isolated Linux microVMs.

Each sandbox is a Firecracker microVM with its own kernel, started from a Vercel image, your own OCI image, or a saved snapshot. You drive it with the JavaScript or Python SDK or the sandbox CLI: run commands, move files, open ports, and set network rules. It is aimed at code interpreters, app builders, test runs and agent tools, and Vercel's docs say it is not meant to run nonstop.

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 rankVercel Sandbox: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
Vercel has no desktop or browser for an agent to check the UI it built, no nested virtualization, and each session stops after 24 hours, so it only fits with workarounds.
3rd cheapest of 367
$634 a month
244th of 367, with limits
$3,351 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
Vercel's docs say sandboxes are not designed to run continuously; bochka machines can run with no session cap and keep their disk.
5th cheapest of 366
$657 a month
257th of 366, with limits
$3,657 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Vercel fits short code bursts better: it bills CPU only while code uses it, and bochka's per-plan start limits slow down large bursts.
186th of 345, with limits
$2,000 a month
22nd cheapest of 345
$216 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Both fit sandboxes for your own users; bochka ranks first and Vercel ranks 15th on cost for the same work.
Cheapest of 361
$209 a month
15th cheapest of 361
$1,267 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
Vercel fits many short parallel rollouts well thanks to high concurrency and fast starts; bochka's start limits make it a compromise here.
34th of 360, with limits
$2,000 a month
3rd cheapest of 360
$15,761 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
69th cheapest of 364
$1,508 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
4th cheapest of 377
$86 a month
107th cheapest of 377
$1,144 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
A dev box that stays up all day fits bochka; on Vercel it restarts every 24 hours and loses its running processes.
18th cheapest of 368
$26 a month
276th of 368, with limits
$145 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 a computer-use API; Vercel Sandbox has no desktop, so you would have to build one yourself.
6th cheapest of 369
$200 a month
235th of 369, with limits
$952 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
bochka ships Chromium with browser control; Vercel Sandbox has no browser feature.
7th cheapest of 367
$200 a month
259th of 367, with limits
$486 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
277th of 346, with limits
$468 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
234th of 338, with limits
$9,960 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
283rd of 360, with limits
$554 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

FeaturebochkaVercel Sandbox
IsolationFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hostsFirecracker microVM with its own kernel
Longest sessionNo cap on paid plans (--no-auto-stop); default TTL 1 hour, changeable24 hours per session on Pro and Enterprise, 45 minutes on Hobby; resume starts a new session
Saving filesSnapshot every minute while running and on stop; a stopped sandbox costs nothingFilesystem snapshot on stop, stored at a per-GB monthly rate and kept 30 days after last use by default
Memory on resumeNot kept; the machine reboots with its diskNot kept; a new session boots from the snapshot
Desktop, browser, computer use60fps desktop and Chromium, computer-use and browser-control APIs, embeddable streamNone; headless Linux only
Nested virtualizationYes, /dev/kvm (Android emulator, VMs)No
Docker insideYes, with root and systemdYes, with sudo
Custom imagesNamed snapshots (templates), shareable by code; no Dockerfile buildsYour own OCI images from a Dockerfile, via Vercel Container Registry
Coding agentsClaude Code, Codex, pi, OpenCode, Prime Agent, Kimi Code, Mistral Vibe, with an API to prompt, steer and stream eventsClaude Code, Codex, OpenCode and pi preinstalled; you start them as commands
Inbound accessHTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv6 or IPv4Public URLs for up to 15 ports, no built-in auth; no raw TCP or public IP
Egress rulesNo provider-side allowlist; firewall inside the VMAllow-all, deny-all or a domain and CIDR allowlist, changeable while running; static IPs and VPC peering on Enterprise
Keys kept outside the sandboxCredentials proxy for model providers and any HTTPS API you register; switch a credential to another account when one runs outCredentials brokering injects headers for any HTTPS domain you allow
RegionsEU only: Germany, Finland, France19 regions across the US, Europe, Asia, South America, Africa and Australia
Usage per sandboxUsage API per sandbox, scoped API keys, spend limitsUsage dashboard; spend alerts that can pause projects
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)
FeaturebochkaVercel Sandbox
Full VM (own kernel)YesYes
Docker insideYesYes
Nested virtualizationYesNo
RootYesYes
SystemdYesNot published
Desktop GUIYesNo
BrowserYesNo
Computer-use APIYesNo
SSHYesNo
Persistent diskYesYes
Pause/resumeYesYes
Automatic snapshotsYesYes
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 URLsYesYes
Raw TCP inboundYesNo
Public IPv4NoNo
Egress allowlistNoYes
Secret proxyYesYes
Secret proxy for any APIYesYes
Preinstalled agentsYesYes
Agent harness APIYesNo
MCP serverNoYes
GPUNoNo
WindowsNoNo
Arm64NoNo
Self-hostingNoNo
BYOCNoNo
Open sourceNoNo
Scoped API keysYesNot published
Spend limitsYesYes
Usage per sandbox (API)YesNo
Audit logsNoNot published
SSONoYes
SOC 2NoYes
HIPAANoYes
EU data residencyYesYes
Zero data retentionYesNot published

Performance

bochka26.69 runs/s
Vercel Sandbox12.96 runs/s

Both were measured on the same hpc-sandbox-benchmarks Node.js build-and-test loop at 4 vCPU / 8 GB. bochka did 26.69 runs per second and Vercel Sandbox did 12.96, so bochka finished about twice as many runs in the same time. This measures CPU speed only, not start time.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite.

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 monthVercel Sandbox, 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$57 · Pro
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$26 · $20/mo$236 · Pro · with limits
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$2,884 · Pro
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$828 · Pro
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$3,152 · Pro

bochka: bochka charges a flat price per size, per second, only while the machine runs; a stopped sandbox costs nothing. Plans start at $20 a month, and all of the fee is usage credit.

Vercel Sandbox: Vercel charges for CPU only while your code uses it, but charges for memory for the whole time the sandbox runs, idle time included, plus a small fee per sandbox created and a monthly fee per GB of snapshots. Rates are lowest in the US regions and higher elsewhere, and the $20 Pro credit is shared with your other Vercel usage.

Limits in those scenarios

For one agent that never stops, Vercel ends each session at 24 hours; the sandbox resumes from its snapshot, but running processes start over. For 1,000 short jobs at once, bochka does not fit: even the $2,000 plan allows 600 starts an hour and 2,400 a day, and bursts above 90 starts a minute wait in a queue. Vercel fits that burst, though its vCPU allocation starts at 150 a minute and climbs toward 5,000 with steady use. On Pro, one Vercel sandbox can be at most 8 vCPU / 16 GB.

ScenariobochkaVercel Sandbox
One coding agent, workdaysNone that biteNone that bite
One agent that never stopsNone that bite
  • Pro: sessions capped at 24 h
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 Vercel Sandbox when

you run many short bursts of untrusted code, or need to run close to users outside Europe.

  • Regions all over the world. Useful if your users are far from Europe: Vercel Sandbox runs in 19 regions, from Virginia to Tokyo and Sydney.
  • A firewall you control from outside. A running sandbox can be switched to deny-all, or to a list of allowed domains, without a restart.
  • Images from your Dockerfile. Useful if you already have a Dockerfile: you can build it into an image and boot sandboxes straight into it.

Use bochka when

your agents work for hours on one machine: builds, tests, Docker, emulators and a desktop with a browser, with an API to drive the agents inside from outside.

  • Agents can work all day. On Vercel each session stops at 24 hours and the resumed sandbox starts every process over, so a long build, test run or agent task is cut off in the middle.
  • A desktop and a browser built in. Without a screen an agent cannot open the web app it just built to see if it works, so broken pages reach you instead. On Vercel you would have to build that desktop yourself.
  • Drive the agents inside from outside. Without that API you write and maintain the code that starts each agent, sends it prompts, steers it and reads its output, for every agent you support.

Questions people ask

Is bochka cheaper than Vercel Sandbox?

bochka costs less in all five of our scenarios, though two come with a catch. One workday agent costs $20 a month on bochka vs $57 on Vercel, 50 parallel agents cost $317 vs $2,884, and sandboxes for your users cost $200 vs $828. One agent that never stops costs $26 on bochka; on Vercel it costs $236 and still restarts every 24 hours. For 1,000 short jobs at once, bochka's $2,000 plan still hits its start limits, while Vercel fits at $3,152.

Can Vercel Sandbox run 24/7?

Not as one session. Pro and Enterprise sessions last up to 24 hours, then stop; the sandbox can resume from its filesystem snapshot, but processes and memory start fresh. Vercel's docs say sandboxes are not designed to run continuously.

Does Vercel Sandbox have a desktop or browser for computer use?

No. It is a headless Linux microVM that you control with commands, files and ports. bochka includes a 60fps desktop, Chromium, and computer-use and browser-control APIs.

Are both real virtual machines?

Yes. Vercel runs each sandbox in a Firecracker microVM with its own kernel, and bochka runs each one as a full VM with its own kernel. bochka also exposes /dev/kvm, so you can run Android emulators or VMs inside; Firecracker does not offer nested virtualization.

Where do they run?

Vercel Sandbox runs in 19 regions around the world, with iad1 in the US as the default. bochka runs only in the EU (Germany, Finland and France) and keeps data in the EU, with a zero data retention option.

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.