Vercel Sandbox vs Tensorlake
Both run each sandbox in a Firecracker microVM with its own kernel. Vercel Sandbox is built for short runs in 19 regions and stops each session after 24 hours, while Tensorlake lets a sandbox sleep with its memory and wake up warm, with no session cap on Pro.
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.
Tensorlake
Tensorlake is a San Francisco company that sells infrastructure for AI agents, with sandboxes as its main product.
Tensorlake Sandboxes are microVMs, backed by Firecracker and Cloud Hypervisor, that you create through an API and that boot in a few hundred milliseconds. Named sandboxes suspend when idle and keep their memory and running processes, and you can copy a running sandbox into several warm clones. Around them Tensorlake sells versioned file systems, hosted Git, an orchestration layer and a bring-your-own-cloud option, aimed at teams running coding agents, evals and RL rollouts.
- Headquarters
- San Francisco
- Investors shown
- Redpoint and Amplify Partners
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 workload | Vercel Sandbox: price rank | Tensorlake: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Tensorlake ranks 5th and fits fully, while Vercel Sandbox ranks 244th as a compromise because of its 24-hour sessions and no desktop; bochka ranks 3rd and adds /dev/kvm for emulators. | 244th of 367, with limits $3,351 a month | 5th cheapest of 367 $1,010 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB Tensorlake ranks 9th because Pro sessions have no time cap, while Vercel Sandbox ranks 257th since its sessions stop at 24 hours; bochka ranks 5th. | 257th of 366, with limits $3,657 a month | 9th cheapest of 366 $1,381 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 Vercel Sandbox ranks 22nd and Tensorlake ranks 24th, close for short code bursts; bochka ranks 186th because its start limits queue big bursts. | 22nd cheapest of 345 $216 a month | 24th cheapest of 345 $250 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; Tensorlake ranks 5th, Vercel Sandbox ranks 15th, and bochka ranks 1st. | 15th cheapest of 361 $1,267 a month | 5th cheapest of 361 $471 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 Tensorlake ranks 1st and Vercel Sandbox ranks 3rd for many short parallel rollouts; bochka ranks 34th because of its start-rate limits. | 3rd cheapest of 360 $15,761 a month | Cheapest of 360 $5,637 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 | 24th cheapest of 364 $506 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 fresh build machines; Tensorlake ranks 54th, Vercel Sandbox ranks 107th, and bochka ranks 4th with the fastest measured CPU. | 107th cheapest of 377 $1,144 a month | 54th cheapest of 377 $424 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Neither fits a box that stays on all day well: Vercel Sandbox ranks 276th and Tensorlake ranks 185th, while bochka ranks 18th. | 276th of 368, with limits $145 a month | 185th of 368, with limits $250 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 Tensorlake ranks 9th with an XFCE desktop and Firefox over VNC; Vercel Sandbox ranks 235th because it has no desktop; bochka ranks 6th with a 60fps desktop. | 235th of 369, with limits $952 a month | 9th cheapest of 369 $294 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 | 13th cheapest of 367 $250 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 | 22nd cheapest of 346 $250 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 | 121st of 338, with limits $3,484 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 | 4th cheapest of 360 $250 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 | Can't run it | 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 | Vercel Sandbox | Tensorlake | bochka |
|---|---|---|---|
| Isolation | Firecracker microVM with its own kernel | Firecracker and Cloud Hypervisor microVMs with their own kernel; GPU sandboxes use gVisor | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Longest session | 24 hours on Pro and Enterprise, 45 minutes on Hobby; resume starts a new session | No cap on Pro; 24 hours on prepaid Usage Credits, 2 hours on Free; idle timeout still applies | No cap on paid plans (--no-auto-stop); default TTL 1 hour, changeable |
| Memory on resume | Not kept; a new session boots from the filesystem snapshot | Kept: named sandboxes suspend with memory and running processes and restore warm | Not kept; the machine reboots with its disk |
| Clone a sandbox | New sandboxes from a filesystem snapshot, without memory | Copy a running or suspended sandbox into many warm clones with memory | Fork a running sandbox (disk) |
| Saving files | Filesystem snapshot on stop, billed per GB-month and kept 30 days after last use by default | Named sandboxes suspend, billed as snapshot storage; ephemeral ones end on idle timeout | Snapshot every minute while running and on stop; a stopped sandbox costs nothing |
| Desktop and computer use | None; headless Linux only | XFCE desktop with Firefox over VNC, with screenshot, mouse and keyboard calls | 60fps desktop and Chromium, computer-use and browser-control APIs, embeddable stream |
| Coding agents | Claude Code, Codex, OpenCode and pi preinstalled; you start them as commands | You bring and run your own agent; managed images are plain OS bases | Claude Code, Codex, OpenCode, pi and more preinstalled, with an API to prompt, steer and stream events |
| Nested virtualization | No | No: sandboxes set SANDBOX_KVM_AVAILABLE=0 | Yes, /dev/kvm inside, so Android emulators and VMs run |
| Docker inside | Yes, with sudo | Yes, on the tensorlake/ubuntu-systemd image | Yes, with root and systemd |
| Inbound access | Public URLs for up to 15 ports, no built-in auth; no raw TCP or public IP | HTTP, WebSocket and gRPC through an authenticated proxy; no raw TCP | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IP |
| Outbound rules | Allow-all, deny-all or a domain and CIDR allowlist, changeable while running; static IPs on Enterprise | allow_out and deny_out lists by domain, IP or CIDR, or no internet at all | No provider-side allowlist; you set your own firewall as root |
| Keys kept outside the sandbox | Credentials brokering injects headers for any HTTPS domain you allow | Stored secrets are injected into the sandbox | Credentials proxy for model providers and any HTTPS API you register; switch a credential to another account when one runs out |
| GPUs | None | GPU sandboxes by request (H100 shown in the docs) | None |
| Where it runs | 19 regions across the US, Europe, Asia, South America, Africa and Australia | US and EU, or your own cloud account through BYOC | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | Vercel Sandbox | Tensorlake | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | No | No | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Not published | Yes | Yes |
| Desktop GUI | No | Yes | Yes |
| Browser | No | Yes | Yes |
| Computer-use API | No | Yes | Yes |
| SSH | No | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | Yes | Yes | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | No | Yes | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | No | Yes | No |
| Wake on request | No | Yes | No |
| HTTPS preview URLs | Yes | Yes | Yes |
| Raw TCP inbound | No | No | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | Yes | No | Yes |
| Secret proxy for any API | Yes | No | Yes |
| Preinstalled agents | Yes | No | Yes |
| Agent harness API | No | No | Yes |
| MCP server | Yes | No | No |
| GPU | No | Yes | No |
| Windows | No | No | No |
| Arm64 | No | No | No |
| Self-hosting | No | No | No |
| BYOC | No | Yes | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | Yes | Not published | Yes |
| Usage per sandbox (API) | No | No | Yes |
| Audit logs | Not published | Not published | No |
| SSO | Yes | Yes | No |
| SOC 2 | Yes | Yes | No |
| HIPAA | Yes | Yes | No |
| EU data residency | Yes | Yes | Yes |
| Zero data retention | Not published | Yes | Yes |
Performance
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. Tensorlake has no published result on this benchmark, so there is no comparable CPU measurement for it. 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. Tensorlake 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 | Vercel Sandbox, a month | Tensorlake, 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 | $57 · Pro | $250 · 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 | $250 · 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 | $1,030 · 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 | $293 · Pro | $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 | $1,127 · Pro | $2,000 · $2000/mo · with limits |
Vercel Sandbox: Vercel charges for CPU only while your code uses it, but for memory the whole time the sandbox runs, plus a small fee per sandbox created and a monthly fee per GB of snapshots. The $20 Pro credit is shared with your other Vercel usage.
Tensorlake: Tensorlake Pro is $250 per billing cycle, which includes $250 of usage, then $0.01 per CU. CPU is billed only while working, RAM and disk on what you allocate while running, and a suspended sandbox pays snapshot storage.
Tensorlake: 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.
Limits in those scenarios
Vercel Sandbox ends each session at 24 hours, so one agent that never stops does not fit: it resumes from its snapshot, but running processes start over. Tensorlake Pro has no session cap, but an ephemeral sandbox ends after 10 idle minutes by default and only named sandboxes can suspend. On Pro, Vercel allows up to 10,000 sandboxes at once with at most 8 vCPU / 16 GB each, while Tensorlake allows 1,000 at once with up to 16 vCPU / 64 GB. bochka does not fit 1,000 short jobs at once, because even its $2,000 plan queues bursts above 90 starts a minute.
| Scenario | Vercel Sandbox | Tensorlake | bochka |
|---|---|---|---|
| One coding agent, workdays | None that bite | 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 | None that bite |
| Sandboxes for your users | None that bite | None that bite | None that bite |
| 1,000 short jobs at once | None that bite | None that bite |
|
Which one should you use?
Use Vercel Sandbox when
you run many short bursts of code close to users around the world, or already build on Vercel and want images from your Dockerfile.
- Regions all over the world. Useful if your users are spread out: Vercel Sandbox runs in 19 regions, from Virginia to Tokyo and Sydney.
- Coding agents and Dockerfile images ready. Claude Code, Codex, OpenCode and pi come preinstalled, and you can boot sandboxes from an image built from your Dockerfile.
- A firewall you can change while it runs. A running sandbox can be switched to deny-all, or to a list of allowed domains, without a restart.
Use Tensorlake when
your sandboxes must sleep and wake with their memory, fan out warm clones for RL rollouts, or need GPUs or your own cloud account.
- Memory snapshots and warm clones. Useful when an agent must pick up mid-process: Tensorlake saves a sandbox's memory and can copy it into warm clones.
- No session cap on Pro. A Pro sandbox can run as long as it stays busy, and a named one sleeps with its memory when idle.
- GPUs, a desktop and your own cloud. Tensorlake offers GPU sandboxes by request, a VNC desktop for computer use, and can run inside your own cloud account.
Where bochka fits
If your agents do long, hands-on work on one machine, such as builds, tests, Docker, emulators and checking the app they built in a browser, look at bochka. It gives each agent a full VM with /dev/kvm, a 60fps desktop and coding agents you drive from outside. Pick Vercel Sandbox or Tensorlake instead for huge bursts of short jobs, which bochka's start limits queue.
Run emulators and VMs inside
Neither Vercel Sandbox nor Tensorlake exposes /dev/kvm, so an Android emulator or a VM does not start at all. A bochka sandbox is a full VM with /dev/kvm, so an agent can test a mobile app.
Let the agent see what it built
Vercel Sandbox has no screen, so an agent cannot open the web app it built. Tensorlake has a VNC desktop with Firefox. bochka streams a 60fps desktop with Chromium and computer-use and browser-control APIs.
Drive the agents inside from outside
Vercel preinstalls agents but you run them as plain commands, and on Tensorlake you install your own. Either way you write the code to prompt, steer and read each agent. bochka gives you one API for that.
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. Compare it one to one: bochka vs Vercel Sandbox and bochka vs Tensorlake.
Questions people ask
Is Vercel Sandbox cheaper than Tensorlake?
Only for small workloads. One coding agent on workdays costs $57 a month on Vercel Sandbox vs $250 on Tensorlake Pro, but 50 agents in parallel cost $2,884 vs $1,030, and 1,000 short jobs at once cost $3,152 vs $1,127. On bochka those cost $20, $317 and $2,000, though bochka's start limits mean the last one does not fit.
Which is faster, Vercel Sandbox or Tensorlake?
Vercel Sandbox scored 12.96 runs per second on the hpc-sandbox-benchmarks Node.js loop at 4 vCPU / 8 GB. Tensorlake has no published result there, so the two cannot be compared on CPU. bochka scored 26.69 on the same test.
Can Vercel Sandbox or Tensorlake run 24/7?
Vercel Sandbox sessions stop after 24 hours and resume with processes started over; for one agent that never stops it costs $236 a month and still does not fit. Tensorlake Pro has no session cap and fits at $250. bochka fits at $26 with no session cap on paid plans.
Can they run Docker?
Yes, both can. Vercel Sandbox runs Docker with sudo, and Tensorlake runs it on its tensorlake/ubuntu-systemd image. bochka runs Docker with root and systemd.
Which one has a desktop for computer use?
Tensorlake has an XFCE desktop with Firefox over VNC, with screenshot, mouse and keyboard calls. Vercel Sandbox is headless only. bochka streams a 60fps desktop with Chromium and computer-use and browser-control APIs.
Where do they run?
Vercel Sandbox runs in 19 regions around the world. Tensorlake runs in the US and the EU, or in your own cloud account through BYOC. bochka runs only in the EU (Germany, Finland and France).
Try bochka
Install the CLI, then run bochka new.
Product preview
More comparisons
- bochka vs Vercel Sandbox
- bochka vs Tensorlake
- E2B vs Vercel Sandbox
- Daytona vs Vercel Sandbox
- Modal vs Vercel Sandbox
- Vercel Sandbox vs Cloudflare Sandbox
- Vercel Sandbox vs Blaxel
- Vercel Sandbox vs Runloop
- Vercel Sandbox vs Morph Cloud
- Vercel Sandbox vs CodeSandbox SDK
- Vercel Sandbox vs Northflank
- Vercel Sandbox vs Fly.io Machines