Vercel Sandbox vs Koyeb

Both run each sandbox in its own microVM. Vercel Sandbox is built for short runs of untrusted code in 19 regions, with sessions capped at 24 hours, while Koyeb runs sandboxes as services that can sleep when idle, wake on the next request, and use GPUs.

The companies and products

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.

Koyeb

Koyeb is a serverless cloud for apps, inference and sandboxes, and in February 2026 it agreed to join Mistral AI.

A Koyeb sandbox is a Koyeb service: a microVM started from any Docker image and driven from Python or JavaScript SDKs that run commands, read files and expose a port. It can scale to zero when idle and wake on the next request, and it can run on CPU or GPU instance types. It is built for teams that run AI agents or untrusted code next to apps they already host on Koyeb.

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. “22nd cheapest of 345” means 21 of the other 344 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 workloadVercel Sandbox: price rankKoyeb: price rankbochka: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
Both are compromises for a software factory: Vercel stops each session at 24 hours, Koyeb's local disk is lost on redeploy, and neither has a desktop or /dev/kvm; bochka ranks 3rd.
244th of 367, with limits
$3,351 a month
54th of 367, with limits
$366 a month
3rd cheapest of 367
$634 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An assistant that lives on its machine all month hits Vercel's 24-hour session cap, and on Koyeb a deep sleep throws away the VM; bochka keeps its disk with no session cap.
257th of 366, with limits
$3,657 a month
135th of 366, with limits
$923 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 code bursts fit both: Koyeb ranks 4th with small instances that scale to zero, and Vercel ranks 22nd, billing CPU only while code uses it.
22nd cheapest of 345
$216 a month
4th cheapest of 345
$66 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 fit sandboxes for your own users; Koyeb ranks 6th, Vercel ranks 15th, and bochka ranks first on cost for the same work.
15th cheapest of 361
$1,267 a month
6th cheapest of 361
$495 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
Vercel fits many short parallel rollouts well and ranks 3rd, while Koyeb is a compromise here.
3rd cheapest of 360
$15,761 a month
237th of 360, with limits
$1,631 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
69th cheapest of 364
$1,508 a month
19th cheapest of 364
$429 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
107th cheapest of 377
$1,144 a month
142nd of 377, with limits
$88 a month
4th cheapest of 377
$86 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
A dev box that stays up all day restarts every 24 hours on Vercel and needs a volume to keep files on Koyeb; on bochka it keeps running and keeps its disk.
276th of 368, with limits
$145 a month
217th of 368, with limits
$37 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 Vercel Sandbox nor Koyeb has a desktop for a computer-use agent; bochka streams a 60fps Linux desktop with Chromium and ranks 6th.
235th of 369, with limits
$952 a month
81st of 369, with limits
$123 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
259th of 367, with limits
$486 a month
172nd of 367, with limits
$123 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
277th of 346, with limits
$468 a month
172nd of 346, with limits
$89 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
234th of 338, with limits
$9,960 a month
65th of 338, with limits
$1,683 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
283rd of 360, with limits
$554 a month
233rd of 360, with limits
$299 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
Koyeb runs GPU instances from RTX 4000 cards up to H100 and H200; Vercel Sandbox and bochka have no GPUs.
Can't run it3rd cheapest of 98
$628 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 itCan't run itCan't run it

Key features

FeatureVercel SandboxKoyebbochka
IsolationFirecracker microVM with its own kernelMicroVM per instanceFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts
Longest session24 hours on Pro and Enterprise, 45 minutes on Hobby; resume starts a new sessionNo forced cap; auto-delete timers are optionalNo cap on paid plans (--no-auto-stop); default TTL 1 hour, changeable
Saving filesFilesystem snapshot on stop, billed per GB a month and kept 30 days after last use by defaultLocal disk is lost on redeploy; volumes (preview, 1 to 10 GB, two regions) persist; SDK snapshots are experimentalDisk saved every minute while running and on stop; a stopped sandbox costs nothing
Sleep and wakeNo idle auto-stop; runs until its timeout or stop()Scales to zero after an idle period (5 minutes minimum) and wakes on the next request; Light Sleep wakes in about 200 msStop and start by API; a stopped sandbox costs nothing and keeps its disk
CPU speed (4 vCPU / 8 GB)12.96 runs/s on the Node.js benchmarkNot benchmarked; at least 0.25 dedicated vCPU per GB of memory, bursting to all cores26.69 runs/s on the Node.js benchmark
Biggest machine8 vCPU / 16 GB on Pro, 32 vCPU / 64 GB on EnterpriseInstance types up to 40 vCPU / 128 GB, and GPU types far largerUp to 16 vCPU / 32 GB on the $100 plan and above
GPUsNoRTX 4000 SFF Ada up to H100, H200 and multi-GPUNo
Nested virtualizationNoNot documentedYes, /dev/kvm for Android emulators and VMs
Desktop, browser, computer useNone; headless Linux onlyNo desktop or browser in the sandbox SDK60fps desktop and Chromium, computer-use and browser-control APIs, embeddable stream
Coding agentsClaude Code, Codex, OpenCode and pi preinstalled; you start them as commandsTutorials that run agents through the command API; an MCP server lets agents manage KoyebSeven agents preinstalled, with an API to prompt, steer and stream events
Inbound accessPublic URLs for up to 15 ports, no built-in auth; no raw TCP or public IPOne exposed HTTPS port at a time, plus an optional TCP proxy to one port; no dedicated IPHTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6
Egress rulesAllow-all, deny-all or a domain and CIDR allowlist, changeable while running; static IPs on EnterpriseBlock all outbound traffic, or allow only listed IPs and CIDRsOpen internet, no provider-side allowlist; firewall inside the VM
Keeping API keys out of the sandboxCredentials brokering injects headers for any HTTPS domain you allowSecrets are set as environment variables inside the serviceCredentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out
Regions19 regions across the US, Europe, Asia, South America, Africa and AustraliaFrankfurt, Paris, Washington D.C., AWS US East, Singapore, Tokyo, plus San Francisco in previewEU only: Germany, Finland, France
Every feature Battleships tracks (43)
FeatureVercel SandboxKoyebbochka
Full VM (own kernel)YesYesYes
Docker insideYesYesYes
Nested virtualizationNoNoYes
RootYesNot publishedYes
SystemdNot publishedNot publishedYes
Desktop GUINoNoYes
BrowserNoNoYes
Computer-use APINoNoYes
SSHNoNoYes
Persistent diskYesYesYes
Pause/resumeYesYesYes
Automatic snapshotsYesYesYes
Fork/cloneYesYesYes
Live fork (no pause)YesNot publishedYes
Memory forkNoYesNo
Custom image (Docker or snapshot)YesYesYes
≥24 h sessionsYesYesYes
Idle auto-stopNoYesNo
Wake on requestNoYesNo
HTTPS preview URLsYesYesYes
Raw TCP inboundNoYesYes
Public IPv4NoNoNo
Egress allowlistYesYesNo
Secret proxyYesNoYes
Secret proxy for any APIYesNoYes
Preinstalled agentsYesYesYes
Agent harness APINoNoYes
MCP serverYesYesNo
GPUNoYesNo
WindowsNoNoNo
Arm64NoNoNo
Self-hostingNoYesNo
BYOCNoYesNo
Open sourceNoNoNo
Scoped API keysNot publishedNot publishedYes
Spend limitsYesNoYes
Usage per sandbox (API)NoNoYes
Audit logsNot publishedYesNo
SSOYesYesNo
SOC 2YesYesNo
HIPAAYesNoNo
EU data residencyYesYesYes
Zero data retentionNot publishedNot publishedYes

Performance

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

On the 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. There is no comparable measurement for Koyeb: it was not part of that run. Koyeb publishes a CPU share of at least 0.25 dedicated vCPU per GB of memory, bursting to all cores, so its speed depends on how busy the host is.

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

ScenarioVercel Sandbox, a monthKoyeb, a monthbochka, 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
$57 · Pro$29 · Pro$20 · $20/mo
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$236 · Pro · with limits$57 · Pro$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
$2,884 · Pro$475 · Pro$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
$828 · Pro$329 · Scale$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
$3,152 · Pro$485 · Scale · with limits$2,000 · $2000/mo · with limits

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. The $20 Pro fee is usage credit shared with your other Vercel usage.

Koyeb: Koyeb bills each instance per second from the moment it starts, at a fixed price per instance type, and Deep Sleep costs nothing. Pro costs $29 a month with $10 of usage included and Scale $299 a month with $100 included; the rest of the fee is not credit.

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

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. Koyeb's priced shape, eco-xlarge, has a 20 GiB disk with no published price for more. For 1,000 short jobs at once, Vercel fits, though its vCPU allocation starts at 150 a minute and climbs with steady use, while Koyeb's eco instances guarantee only half of each vCPU and throttle above that. bochka does not fit that burst either: its $2,000 plan allows 600 starts an hour and queues bursts above 90 a minute.

ScenarioVercel SandboxKoyebbochka
One coding agent, workdaysNone that bite
  • disk beyond 20 GiB: price unknown
None that bite
One agent that never stops
  • Pro: sessions capped at 24 h
  • disk beyond 20 GiB: price unknown
None that bite
50 agents in parallelNone that biteNone that biteNone that bite
Sandboxes for your usersNone that biteNone that biteNone that bite
1,000 short jobs at onceNone that bite
  • burstable CPU: 50% of each vCPU guaranteed, throttled above that
  • 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)

Which one should you use?

Use Vercel Sandbox when

you run many short bursts of untrusted code, already build on Vercel, or need to run close to users in many regions.

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

Use Koyeb when

your sandboxes need GPUs, sleep most of the time and must wake on a request, or run for longer than a day.

  • GPUs in the same platform. Useful when an agent or eval needs a GPU: Koyeb runs instances from RTX 4000 cards up to H100 and H200.
  • Sleep when idle, wake on request. Good for sandboxes that sit idle between requests: Koyeb scales them to zero and wakes them on the next one.
  • No session cap. A Koyeb sandbox keeps running until you delete it, so long jobs are not cut off at 24 hours.

Where bochka fits

If your agents work for hours on one machine, both Vercel Sandbox and Koyeb leave gaps: Vercel stops each session at 24 hours, and Koyeb can lose its local disk. bochka gives each agent a full VM that keeps its disk, with a desktop, Docker, /dev/kvm and an API to drive the agents inside from outside. On the same CPU benchmark it did about twice the runs of Vercel Sandbox.

A disk that stays, saved every minute

Vercel snapshots only on stop and restarts every process after 24 hours. Koyeb loses the local disk on redeploy and a deep sleep discards the VM, so you add a preview volume of 1 to 10 GB or experimental snapshots.

A desktop, a browser and /dev/kvm

Neither Vercel Sandbox nor Koyeb has a desktop or browser, so an agent cannot open the app it built unless you build that screen yourself. Vercel has no nested virtualization and Koyeb does not document it, so Android emulators run elsewhere.

Agents, keys and ports handled for you

On both, coding agents run as plain commands and you write the harness to prompt and steer them. Vercel exposes 15 ports with no built-in auth, Koyeb one port at a time with keys as readable environment variables; bochka gives 50 token-protected HTTPS ports and a credentials proxy.

Use bochka when your agents work for hours on a machine that keeps its disk: builds, Docker, emulators, a desktop browser and preview servers, with an API to drive the agents inside from outside. Compare it one to one: bochka vs Vercel Sandbox and bochka vs Koyeb.

Questions people ask

Is Vercel Sandbox cheaper than Koyeb?

No, Koyeb costs less in all five of our scenarios. One workday agent costs $29 a month on Koyeb against $57 on Vercel, and 50 parallel agents cost $475 against $2,884. For 1,000 short jobs at once Koyeb is $485 but its eco CPU throttles, while Vercel fits at $3,152 a month.

Which is faster, Vercel Sandbox or Koyeb?

Only Vercel Sandbox was measured: 12.96 runs per second on the Node.js benchmark at 4 vCPU / 8 GB, against 26.69 for bochka. Koyeb was not part of that run, and it guarantees at least 0.25 dedicated vCPU per GB of memory.

Can Vercel Sandbox or Koyeb run 24/7?

Koyeb can: a sandbox keeps running until you delete it, though its local disk is lost on redeploy. Vercel Sandbox sessions stop after 24 hours on Pro and Enterprise and resume from a snapshot with processes started fresh.

Can they run Docker and Android emulators?

Vercel Sandbox runs Docker inside with sudo, and Koyeb sandboxes start from any Docker image. Vercel has no nested virtualization and Koyeb does not document it, so Android emulators need another machine. bochka runs Docker with root and systemd and exposes /dev/kvm.

Which one has GPUs?

Koyeb does, from an RTX 4000 SFF Ada up to H100 and H200, billed per second. Vercel Sandbox and bochka are CPU only.

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.

Try bochka

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.