E2B vs Together Code Sandbox
E2B is a self-serve API for microVMs that pause with their memory, wake on the next request and fork while running. Together Code Sandbox runs VMs that Together must enable for your organization, saves memory only when a sandbox ends, and sells a separate Python runner billed per hour-long session.
The companies and products
E2B
E2B calls itself the AI agent cloud: an API that gives each agent session its own isolated Linux machine.
Every E2B sandbox is a Firecracker microVM that boots from a snapshot, so it starts fast and can be paused and resumed with its memory. You build custom sandboxes from templates based on a Docker image, and drive them from Python or JavaScript SDKs. It is built for teams that run many short code, data or agent jobs, and its runtime is open source.
- Isolation
- Firecracker microVM per sandbox
- Bring your own cloud
- Enterprise data plane in your AWS, GCP or Azure account
- Compliance
- SOC 2 Type II; HIPAA BAA on request
- Machine size
- 1 to 8 vCPU and 1 to 8 GiB RAM, CPU only
Together Code Sandbox
Together AI is a cloud for running and training AI models, and Code Sandbox is its product for running code in isolated VMs.
You build a snapshot from a Docker image or Dockerfile on Together's builder, then start sandboxes from it and run commands and file operations through the together-sandbox SDK or CLI. When a sandbox ends you can save its disk, and its memory too, as a new snapshot to start more sandboxes from. It is aimed at model-generated code, agent tool calls and reinforcement learning rollouts, and it must be enabled for your organization by Together. Together also sells Code Interpreter, a separate API that runs Python code in short sessions.
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. “16th cheapest of 367” means 15 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 workload | E2B: price rank | Together Code Sandbox: price rank | boat: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month E2B runs Docker and root inside its sandboxes, while Together's new SDK runs commands as a normal user and does not document Docker inside; boat adds /dev/kvm and about twice E2B's CPU speed. | 16th cheapest of 367 $4,143 a month | 65th of 367, with limits $528 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 E2B's 24-hour cap and Together's 60-minute Code Interpreter sessions; boat has no session cap on paid plans. | 51st of 366, with limits $5,348 a month | 152nd of 366, with limits $1,095 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 E2B is built for short code runs that start fast and pause between requests; Together's Code Interpreter runs only Python, in 60-minute sessions that keep nothing afterward. | 37th cheapest of 345 $421 a month | 326th of 345, with limits $2,190 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 E2B wakes a paused sandbox on the next request, while every Together port is public and preview URLs are still coming soon; boat gives each user a faster machine with token-protected HTTPS. | 23rd cheapest of 361 $2,354 a month | 234th of 361, with limits $900 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 E2B ranks 2nd here thanks to memory forks of running sandboxes and a high start rate; Together can branch many copies from a memory snapshot, but only after the parent ends and only once Together enables the VMs. | 2nd cheapest of 360 $9,384 a month | 315th of 360, with limits $21,900 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 | 78th cheapest of 364 $1,975 a month | 258th of 364, with limits $450 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 Neither E2B nor Together offers nested virtualization, so CI that builds Android apps or VM images needs boat's /dev/kvm. | 337th of 377, with limits $1,429 a month | 251st of 377, with limits $180 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB | 192nd of 368, with limits $358 a month | 210th of 368, with limits $22 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 E2B has a Linux desktop for computer use and Together Code Sandbox has none; boat streams its desktop at 60fps. | 32nd cheapest of 369 $1,342 a month | 184th of 369, with limits $600 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 E2B has a browser and desktop; on Together you install a headless browser in your own image. | 100th of 367, with limits $746 a month | 301st of 367, with limits $900 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 | 57th cheapest of 346 $554 a month | 219th of 346, with limits $180 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 | 227th of 338, with limits $9,223 a month | 124th of 338, with limits $3,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 | 11th cheapest of 360 $1,043 a month | 167th of 360, with limits $150 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 | E2B | Together Code Sandbox | boat |
|---|---|---|---|
| Getting started | Self-serve sign-up, with a free Hobby plan and a one-time credit | VMs must be enabled for your organization by Together; only Code Interpreter is self-serve | Sign up and start a sandbox from the API, CLI or dashboard |
| Isolation | Firecracker microVM with its own kernel | A VM per sandbox on Together's infrastructure | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| CPU benchmark (4 vCPU / 8 GB) | 12.61 runs/s | Not measured | 26.69 runs/s |
| Machine size | 1 to 8 vCPU and 1 to 8 GiB RAM self-serve, more on request | 0.1 to 16 cores, 1 to 8 GB per core; disk size fixed | 2 to 16 vCPU with 2 GB per vCPU, up to 16 vCPU / 32 GB on the $100 plan and above |
| Session length | 1 hour on Hobby, 24 hours on Pro; pausing resets the clock | VMs run until their time to live ends; Code Interpreter sessions last 60 minutes | No cap on paid plans; you set the time to live |
| Saving state | Pause with memory and disk; resume in about a second with processes running | End a sandbox with a snapshot of its disk, or disk and memory, and start new ones from it | Disk saved every minute and on stop; a stopped sandbox costs nothing; resume boots the machine again |
| Fork | Fork a running sandbox with its memory, up to 20 copies per call | No live fork: the parent stops, then you start many sandboxes from its snapshot | Fork a running sandbox with its disk; the original keeps running |
| Idle and wake | Optional pause after a timeout, and wake on the next HTTP request or SDK call | Time to live counts from creation; no idle detection and no wake on request | Runs until you stop it or its time to live ends; started again by API |
| Docker, root and systemd | Docker, root and systemd inside | Commands run as user 1000 by default, root on request; Docker inside not documented | Docker, systemd and root on every machine |
| Nested virtualization | Not supported | Not documented | Yes, /dev/kvm for Android emulators and VMs |
| Reaching the sandbox | HTTPS URL per port, public unless you turn on a token; no dedicated IP | All ports public; preview URLs coming soon; experimental inbound allowlist | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv6 or IPv4 |
| Desktop and browser | Linux desktop and browser for computer use | None; headless command and file access only | Linux desktop streamed at 60fps, Chromium and computer-use tools |
| Keeping API keys out of the sandbox | Secrets injected into outbound HTTPS headers (private beta) | No credentials proxy documented | Credentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out |
| Regions and self-hosting | US, EU and APAC; open-source runtime and bring your own cloud on Enterprise | Regions not published; no self-hosting | EU only (Germany, Finland, France); no self-hosting |
Every feature Battleships tracks (43)
| Feature | E2B | Together Code Sandbox | boat |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Not published | Yes |
| Nested virtualization | No | No | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Yes | Not published | Yes |
| Desktop GUI | Yes | No | Yes |
| Browser | Yes | No | Yes |
| Computer-use API | Yes | No | Yes |
| SSH | Yes | No | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | Yes | No | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | No | Yes |
| Memory fork | Yes | Yes | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | Yes | No | No |
| Wake on request | Yes | No | No |
| HTTPS preview URLs | Yes | Yes | Yes |
| Raw TCP inbound | No | No | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | Yes | No | 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 | Yes | No |
| GPU | No | No | No |
| Windows | No | No | No |
| Arm64 | No | No | No |
| Self-hosting | Yes | No | No |
| BYOC | Yes | No | No |
| Open source | Yes | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | Yes | Yes | Yes |
| Usage per sandbox (API) | No | Yes | Yes |
| Audit logs | Not published | Not published | No |
| SSO | No | Yes | No |
| SOC 2 | Yes | Yes | No |
| HIPAA | Yes | No | No |
| EU data residency | Yes | Not published | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
E2B and boat ran in the same StarSling hpc-sandbox-benchmarks Node.js test at 4 vCPU / 8 GB: boat did 26.69 runs per second and E2B did 12.61, so boat finished about twice as much CPU work. Together Code Sandbox was not part of that run, so there is no comparable score for it.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Together Code Sandbox 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 | E2B, a month | Together Code Sandbox, a month | boat, 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 | $202 · Pro | $5 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $368 · Pro · with limits | $22 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | $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,773 · Pro | $264 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | $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 | $1,395 · Pro+ (600 concurrent) | $900 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · 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 | $2,797 · Pro++ (1,100 concurrent) | $6,000 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | $2,000 · $2000/mo · with limits |
E2B: E2B bills per second for the vCPU and RAM you set, idle time included, until you pause or kill the sandbox. Pro costs $150 a month for higher limits with no usage credit, and more concurrency costs $500 a month per 500 slots.
Together Code Sandbox: Together lists Code Sandbox at $0.0446 per vCPU-hour and $0.0149 per GiB-hour, but the VMs must be enabled for your organization, so the table prices Code Interpreter: $0.03 per 60-minute session from prepaid credits, with a $5 minimum purchase.
Together Code Sandbox: Plans start at $20 a month, and the whole fee is usage credit. You pay per second while a sandbox runs, and a stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
E2B caps a session at 24 hours on Pro, so it does not fit the always-on scenario, and Pro includes 20 GiB of disk. The Together column is Code Interpreter, which fails every scenario: sessions last 60 minutes, it runs only Python, nothing is kept, and the machine size is not published. At 1,000 short jobs at once, E2B Pro++ only queues bursts above 300 starts a minute, while boat's $2,000 plan caps starts per hour and per day.
| Scenario | E2B | Together Code Sandbox | boat |
|---|---|---|---|
| One coding agent, workdays |
|
| None that bite |
| One agent that never stops |
|
| None that bite |
| 50 agents in parallel |
|
| None that bite |
| Sandboxes for your users |
|
| None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use E2B when
you run many short jobs that pause between requests, need to fork running sandboxes with their memory, or must run in the US or APAC.
- Pause, wake and fork while running. For short jobs that sleep between requests: a paused sandbox wakes on the next call in about a second, processes intact.
- Self-serve today, in more places. Anyone can sign up and start sandboxes now, in the US, EU or APAC, with outbound allow and deny lists.
- Open source and your own cloud. Its runtime is Apache-2.0, and Enterprise customers can run it in their own AWS, GCP or Azure account.
Use Together Code Sandbox when
you already run models on Together and want sandboxes you can save with their memory and branch from, or a simple Python runner billed per session.
- Sandboxes next to your models. Handy if you already run inference or fine-tuning on Together: sandboxes and models share one account and API key.
- Very small and large machines. Sandboxes go from a tenth of a core up to 16 cores, which suits many light jobs or a few heavy ones.
- A simple Python runner. For plain Python, Code Interpreter runs code in sessions billed per 60 minutes, with no VM to manage.
Where boat fits
Both E2B and Together are built around short or snapshot-based runs. If your agents work for hours, build with Docker and emulators, use a desktop or serve apps to other people, boat gives each one a whole, faster machine that you can start today and keep as long as you like.
A whole machine, with KVM
Neither E2B nor Together offers nested virtualization, so Android emulators and VM-based tests do not start, and Together does not document Docker inside. boat has Docker, systemd, root and /dev/kvm on every machine.
No session cap, and more speed
E2B stops a session after 24 hours, so your code must pause and resume long tasks, and Together's self-serve sessions end at 60 minutes. boat has no cap on paid plans and did 26.69 CPU runs per second to E2B's 12.61.
Agents, desktop and private hosting built in
On E2B and Together you build the agent harness yourself, and Together has no desktop and leaves every port public. boat ships coding agents you drive from outside, a 60fps desktop, a credentials proxy and token-protected HTTPS on 50 ports.
Use boat when your agents do real work for hours: installs, builds, Docker, emulators, a desktop and servers other people reach, on a fast full machine with the agent and its keys already set up. Compare it one to one: boat vs E2B and boat vs Together Code Sandbox.
Questions people ask
Is E2B cheaper than Together Code Sandbox?
Together's only self-serve price is Code Interpreter, which does not fit these scenarios because sessions end after 60 minutes and keep no disk. It is lower for small runs, $264 against $2,773 a month for 50 agents, but higher at scale: $6,000 against $2,797 for 1,000 short jobs at once. boat is $317 and $2,000 for those two.
Which is faster, E2B or Together Code Sandbox?
There is no comparable CPU score for Together. E2B did 12.61 runs per second on the hpc-sandbox-benchmarks test at 4 vCPU / 8 GB, and boat did 26.69 in the same run.
Can E2B and Together Code Sandbox run Docker?
E2B runs Docker inside its sandboxes. Together builds sandboxes from Docker images, but its new SDK does not document Docker inside a sandbox, and neither offers nested virtualization. boat has Docker and /dev/kvm on every machine.
Which one can pause a sandbox with its memory?
Both can keep memory. E2B pauses a running sandbox and resumes it in about a second, even on the next request. Together saves disk and memory when a sandbox ends, and new sandboxes start from that snapshot with processes running.
Can I sign up for Together Code Sandbox today?
The VM product must be enabled for your organization, so you ask Together for access. Code Interpreter is self-serve with prepaid credits. E2B and boat are both self-serve.
Is boat SOC 2 compliant?
SOC 2 is in progress. We're open about where we stand: live status at status.ascii.dev and our data retention policy at docs.boat.dev/data-retention.
Try boat
Install the CLI, then run boat new.
7-day free trial