E2B sandbox benchmark
Our hardware probe found E2B runs each sandbox as a Firecracker microVM. We timed it through one SDK against 8 other sandbox providers: cold start, real agent work, everyday calls, pause and snapshots, bursts, machine speed, reliability and cost per task. Each result is a median with its p95 and 95% interval, on two tracks: the same 4 vCPU, 8 GB machine for every provider, and each provider's default machine.
Sandbox bench runs on Sandbox SDK, which the same team (opencoredev) builds. We may work with some of these providers. No provider paid for these results or decided how they were tested.
Same machine: 4 vCPU, 8 GB
- Cold start, median
- 0.79 s 4th of 9
- Tool replay, median
- 15 s 3rd of 9
Default machines
- Cold start, median
- 0.50 s 1st of 9
- Tool replay, median
- 16 s 3rd of 9
E2B on the same 4 vCPU, 8 GB machine
Every provider asked for Boat's machine, 4 vCPU and 8 GB, or its nearest size. Runs from 2026-10-22 to 2026-10-23, 9 providers. See every provider side by side on the full results.
- Asked for
- 4 vCPU, 8 GB, template r1h7gud12rf1f6iu29r0
- Measured inside
- 4 vCPU, 7.8 GB
- Cost per 1,000 tasks
- $1.56 (metered)
- Success rate
- 100.00% (1,073 of 1,073)
- Ran in: The Dalles, US.
- Cost: $0.0016 per task, their own usage records at published rates (metered over 10 tasks, medium confidence). A task is: create a sandbox, run the 100-call tool replay, delete it. Cost per task comes from a separate cost run, billed per sandbox.
- List price: $0.331 per hour for this machine, compute only.
- Pause and resume: supported; pause 1.29 s and resume 0.51 s median over 100 runs.
- Failures counted against E2B: none.
Start-up
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Cold start (lower is better) | 0.79 sp95 2.2 s95%: 0.71 s to 0.82 s | 2.2 s | 0.71 s to 0.82 s | 4th of 9 · lowest median: Superserve 0.52 s |
Agent work
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Agent tool replay (lower is better) | 15 sp95 17 s95%: 15 s to 16 s | 17 s | 15 s to 16 s | 3rd of 9 · lowest median: Daytona 12 s |
| npm install (lower is better) | 1.8 sp95 2.9 s95%: 1.7 s to 1.9 s | 2.9 s | 1.7 s to 1.9 s | 9th of 9, tied with Freestyle · lowest median: Daytona 0.75 s |
| pip install (lower is better) | 4.9 sp95 8.2 s95%: 4.2 s to 5.0 s | 8.2 s | 4.2 s to 5.0 s | 7th of 9 · lowest median: Tenki 3.3 s |
| git clone (lower is better) | 1.2 sp95 2.1 s95%: 1.1 s to 1.3 s | 2.1 s | 1.1 s to 1.3 s | 6th of 9, tied with Tenki · lowest median: Daytona 0.43 s |
| Dev server ready (lower is better) | 2.2 sp95 3.4 s95%: 2.1 s to 2.3 s | 3.4 s | 2.1 s to 2.3 s | 3rd of 9, tied with Freestyle · lowest median: Superserve 1.3 s |
| Preview URL first byte (lower is better) | 0.27 sp95 0.49 s95%: 0.27 s to 0.28 s | 0.49 s | 0.27 s to 0.28 s | 3rd of 9 · lowest median: Superserve 0.18 s |
| Edit, rebuild, reload (lower is better) | 0.33 sp95 0.56 s95%: 0.32 s to 0.34 s | 0.56 s | 0.32 s to 0.34 s | 3rd of 9 · lowest median: Freestyle 0.30 s |
Everyday calls
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Run a command (lower is better) | 0.13 sp95 0.19 s95%: 0.13 s to 0.14 s | 0.19 s | 0.13 s to 0.14 s | 1st of 9, tied with Daytona |
| Write + read 1 KB (lower is better) | 0.23 sp95 0.38 s95%: 0.23 s to 0.24 s | 0.38 s | 0.23 s to 0.24 s | 4th of 9 · lowest median: Superserve 0.10 s |
| Write + read 10 MB (lower is better) | 1.3 sp95 2.3 s95%: 1.3 s to 1.4 s | 2.3 s | 1.3 s to 1.4 s | 3rd of 9 · lowest median: Superserve 0.66 s |
| Reconnect (lower is better) | 0.46 sp95 1.8 s95%: 0.45 s to 0.46 s | 1.8 s | 0.45 s to 0.46 s | 3rd of 9 · lowest median: Daytona 0.30 s |
| Destroy (lower is better) | 0.11 sp95 0.15 s95%: 0.11 s to 0.12 s | 0.15 s | 0.11 s to 0.12 s | 1st of 9 |
Pause and snapshots
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Pause + resume (lower is better) | 1.8 sp95 3.5 s95%: 1.6 s to 2.0 s | 3.5 s | 1.6 s to 2.0 s | 5th of 6, tied with Upstash Box · lowest median: boxd 0.53 s |
| Take snapshot (lower is better) | 1.8 sp95 2.2 s95%: 1.1 s to 2.0 s | 2.2 s | 1.1 s to 2.0 s | 3rd of 8 · lowest median: Superserve 0.39 s |
| Start from snapshot (lower is better) | 1.1 sp95 3.2 s95%: 0.82 s to 1.6 s | 3.2 s | 0.82 s to 1.6 s | 3rd of 8, tied with Upstash Ephemeral Box · lowest median: Superserve 0.55 s |
Bursts
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| 10 at once, all ready (lower is better) | n/a | In one of its three bursts of 10, two creates failed on E2B's side (E2B reported a timeout), so only 2 of 3 bursts finished and the size is not published; coming in the next update | ||
| 25 at once, all ready (lower is better) | 1.1 sp95 1.3 s95%: 0.94 s to 1.3 s | 1.3 s | 0.94 s to 1.3 s | 2nd of 9, tied with Upstash Ephemeral Box · lowest median: Superserve 0.79 s |
Machine speed
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| CPU, one core (higher is better) | 10.3M/sp95 15.3M/s95%: 9.8M/s to 10.6M/s | 15.3M/s | 9.8M/s to 10.6M/s | 7th of 9 · highest median: Tenki 19.4M/s |
| CPU, all cores (higher is better) | 26.5M/sp95 37.8M/s95%: 24.8M/s to 27M/s | 37.8M/s | 24.8M/s to 27M/s | 8th of 9 · highest median: Upstash Ephemeral Box 51M/s |
| Memory bandwidth (higher is better) | 12.3 GB/sp95 14.0 GB/s95%: 11.7 GB/s to 12.7 GB/s | 14.0 GB/s | 11.7 GB/s to 12.7 GB/s | 9th of 9 · highest median: Tenki 45.9 GB/s |
| Disk write (higher is better) | 867 MB/sp95 1.0 GB/s95%: 750 MB/s to 902 MB/s | 1.0 GB/s | 750 MB/s to 902 MB/s | 4th of 9 · highest median: Upstash Ephemeral Box 2.4 GB/s |
| Disk read (higher is better) | 6.2 GB/sp95 7.5 GB/s95%: 5.9 GB/s to 6.4 GB/s | 7.5 GB/s | 5.9 GB/s to 6.4 GB/s | 8th of 9 · highest median: Upstash Ephemeral Box 23.1 GB/s |
| 4K random write (higher is better) | 6.9K IOPSp95 8.9K IOPS95%: 6.6K IOPS to 7.1K IOPS | 8.9K IOPS | 6.6K IOPS to 7.1K IOPS | 5th of 9 · highest median: Upstash Ephemeral Box 45.1K IOPS |
| 4K random read (higher is better) | 453K IOPSp95 601.5K IOPS95%: 436.3K IOPS to 476.2K IOPS | 601.5K IOPS | 436.3K IOPS to 476.2K IOPS | 5th of 9 · highest median: Boat 796.4K IOPS |
Quick picks on this track, all providers
| Need | Pick | Runner-up |
|---|---|---|
| Fastest cold start | Superserve 0.52 s | Upstash Ephemeral Box 0.68 s |
| Fastest agent work (tool replay) | Daytona 12 s | Superserve 13 s |
| Fastest 25-sandbox fan-out | Superserve 0.79 s | E2B 1.1 s |
| Fastest reconnect | Daytona 0.30 s | Superserve 0.33 s |
| Cheapest task | Upstash Ephemeral Box $0.00026 per task, $0.26 per 1,000 (billed) | Upstash Box $0.00034 per task, $0.34 per 1,000 (billed) |
| Most reliable | E2B, Tenki, Superserve, Upstash Box, Daytona, Upstash Ephemeral Box, Boat 100.00% (tied) | Freestyle 99.91% |
E2B on its default machine
Each provider's default sandbox, so machine sizes differ. Runs from 2026-10-22 to 2026-10-23, 9 providers. See every provider side by side on the full results.
- Asked for
- 2 vCPU, 512 MB, template base
- Measured inside
- 2 vCPU, 473 MB
- Cost per 1,000 tasks
- $0.49 (metered)
- Success rate
- 100.00% (1,076 of 1,076)
- Machine: E2B's default base template is 2 vCPU and 512 MB. E2B's pricing page says its default sandbox has 4 GB, so E2B ran smaller here than that.
- Ran in: The Dalles, US.
- Cost: $0.00049 per task, their own usage records at published rates (metered over 10 tasks, medium confidence). A task is: create a sandbox, run the 100-call tool replay, delete it. Cost per task comes from a separate cost run, billed per sandbox.
- List price: $0.109 per hour for this machine, compute only.
- Pause and resume: supported; pause 0.26 s and resume 0.45 s median over 100 runs.
- Failures counted against E2B: none.
Start-up
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Cold start (lower is better) | 0.50 sp95 2.0 s95%: 0.48 s to 0.51 s | 2.0 s | 0.48 s to 0.51 s | 1st of 9 |
Agent work
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Agent tool replay (lower is better) | 16 sp95 18 s95%: 16 s to 17 s | 18 s | 16 s to 17 s | 3rd of 9 · lowest median: Superserve 13 s |
| npm install (lower is better) | 2.1 sp95 2.8 s95%: 2.0 s to 2.3 s | 2.8 s | 2.0 s to 2.3 s | 9th of 9 · lowest median: Boat 0.86 s |
| pip install (lower is better) | 5.0 sp95 6.0 s95%: 4.8 s to 5.1 s | 6.0 s | 4.8 s to 5.1 s | 8th of 9 · lowest median: Superserve 3.8 s |
| git clone (lower is better) | 1.2 sp95 2.6 s95%: 1.1 s to 1.2 s | 2.6 s | 1.1 s to 1.2 s | 5th of 9, tied with Superserve, Tenki · lowest median: Upstash Ephemeral Box 0.61 s |
| Dev server ready (lower is better) | 2.3 sp95 3.3 s95%: 2.2 s to 2.6 s | 3.3 s | 2.2 s to 2.6 s | 4th of 9, tied with Freestyle · lowest median: Superserve 1.8 s |
| Preview URL first byte (lower is better) | 0.27 sp95 0.53 s95%: 0.26 s to 0.28 s | 0.53 s | 0.26 s to 0.28 s | 2nd of 9 · lowest median: Superserve 0.19 s |
| Edit, rebuild, reload (lower is better) | 0.34 sp95 0.59 s95%: 0.33 s to 0.36 s | 0.59 s | 0.33 s to 0.36 s | 2nd of 9, tied with Daytona · lowest median: Freestyle 0.31 s |
Everyday calls
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Run a command (lower is better) | 0.14 sp95 0.15 s95%: 0.14 s to 0.14 s | 0.15 s | 0.14 s to 0.14 s | 1st of 9, tied with Daytona |
| Write + read 1 KB (lower is better) | 0.24 sp95 0.26 s95%: 0.23 s to 0.24 s | 0.26 s | 0.23 s to 0.24 s | 5th of 9 · lowest median: Superserve 0.10 s |
| Write + read 10 MB (lower is better) | 1.3 sp95 2.4 s95%: 1.3 s to 1.4 s | 2.4 s | 1.3 s to 1.4 s | 3rd of 9 · lowest median: Superserve 0.64 s |
| Reconnect (lower is better) | 0.46 sp95 0.68 s95%: 0.46 s to 0.46 s | 0.68 s | 0.46 s to 0.46 s | 3rd of 9 · lowest median: Daytona 0.31 s |
| Destroy (lower is better) | 0.11 sp95 0.12 s95%: 0.11 s to 0.11 s | 0.12 s | 0.11 s to 0.11 s | 1st of 9 |
Pause and snapshots
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| Pause + resume (lower is better) | 0.74 sp95 3.6 s95%: 0.72 s to 0.84 s | 3.6 s | 0.72 s to 0.84 s | 3rd of 6 · lowest median: boxd 0.54 s |
| Take snapshot (lower is better) | 0.34 sp95 0.67 s95%: 0.32 s to 0.39 s | 0.67 s | 0.32 s to 0.39 s | 1st of 8 |
| Start from snapshot (lower is better) | 0.75 sp95 1.2 s95%: 0.55 s to 0.92 s | 1.2 s | 0.55 s to 0.92 s | 3rd of 8, tied with Freestyle · lowest median: Superserve 0.56 s |
Bursts
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| 10 at once, all ready (lower is better) | 1.1 sp95 1.1 s95%: 0.62 s to 1.1 s | 1.1 s | 0.62 s to 1.1 s | 4th of 9, tied with Upstash Ephemeral Box, Tenki · lowest median: Superserve 0.65 s |
| 25 at once, all ready (lower is better) | 0.87 sp95 1.2 s95%: 0.83 s to 1.2 s | 1.2 s | 0.83 s to 1.2 s | 2nd of 8 · lowest median: Superserve 0.75 s |
Machine speed
| Test | Median | p95 | 95% interval | Rank |
|---|---|---|---|---|
| CPU, one core (higher is better) | 10M/sp95 15.3M/s95%: 9.7M/s to 10.6M/s | 15.3M/s | 9.7M/s to 10.6M/s | 7th of 9 · highest median: Boat 18.8M/s |
| CPU, all cores (higher is better) | 14.1M/sp95 20.2M/s95%: 13.9M/s to 14.9M/s | 20.2M/s | 13.9M/s to 14.9M/s | 7th of 9 · highest median: Boat 51.7M/s |
| Memory bandwidth (higher is better) | 12.3 GB/sp95 14.2 GB/s95%: 12.1 GB/s to 12.7 GB/s | 14.2 GB/s | 12.1 GB/s to 12.7 GB/s | 9th of 9 · highest median: Upstash Ephemeral Box 41.1 GB/s |
| Disk write (higher is better) | 949 MB/sp95 1.1 GB/s95%: 885 MB/s to 996 MB/s | 1.1 GB/s | 885 MB/s to 996 MB/s | 4th of 9 · highest median: Upstash Ephemeral Box 2.4 GB/s |
| Disk read (higher is better) | 6.2 GB/sp95 7.6 GB/s95%: 6.1 GB/s to 6.5 GB/s | 7.6 GB/s | 6.1 GB/s to 6.5 GB/s | 8th of 9 · highest median: Upstash Ephemeral Box 23.0 GB/s |
| 4K random write (higher is better) | 7.2K IOPSp95 8.8K IOPS95%: 6.8K IOPS to 7.5K IOPS | 8.8K IOPS | 6.8K IOPS to 7.5K IOPS | 5th of 9 · highest median: Upstash Ephemeral Box 43.3K IOPS |
| 4K random read (higher is better) | 467K IOPSp95 643K IOPS95%: 451.7K IOPS to 479.1K IOPS | 643K IOPS | 451.7K IOPS to 479.1K IOPS | 5th of 9 · highest median: Boat 772.6K IOPS |
Quick picks on this track, all providers
| Need | Pick | Runner-up |
|---|---|---|
| Fastest cold start | E2B 0.50 s | Superserve 0.53 s |
| Fastest agent work (tool replay) | Superserve 13 s | Daytona 15 s |
| Fastest 25-sandbox fan-out | Superserve 0.75 s | E2B 0.87 s |
| Fastest reconnect | Daytona 0.31 s | Superserve 0.32 s |
| Cheapest task | Upstash Ephemeral Box $0.00013 per task, $0.13 per 1,000 (billed) | Upstash Box $0.00017 per task, $0.17 per 1,000 (billed) |
| Most reliable | E2B, Tenki, Superserve, Upstash Box, Daytona, Boat 100.00% (tied) | boxd 99.81% |
How to read these numbers
- Every call starts from one server in Florida, US. Providers hosted farther away pay that round trip on every call; Boat (France) and boxd (Germany) pay a transatlantic one.
- There are two tracks. Same machine: 4 vCPU, 8 GB: Every provider asked for Boat's machine, 4 vCPU and 8 GB, or its nearest size. A provider marked “machine differs” measured something else inside. Default machines: Each provider's default sandbox, so machine sizes differ.
- Cost per task has a kind. Billed comes from the provider's bill, metered from its usage records at published rates, and estimate from our measured time at list price. Kinds are not directly comparable. Prices cover compute only at list rates: disk, transfer, subscriptions and credits are excluded.
- Pause and resume times come from the previous SDK run, because the newest runs skipped them. A burst size is published only when all three bursts finished.
- Failures caused by our own code are set aside, not counted. Every provider-side failure is kept.
- Ranks compare medians. Medians inside each other's 95% intervals count as tied, so a close rank can be noise.
More results
- E2B alternatives, measured against E2B
- E2B vs Daytona, side by side
- Upstash Box vs E2B, side by side
- Daytona sandbox benchmark
- Superserve sandbox benchmark
- Upstash Box sandbox benchmark
- Upstash Ephemeral Box sandbox benchmark
- Boat sandbox benchmark
- Freestyle sandbox benchmark
- Tenki sandbox benchmark
- Every sandbox provider we benchmark
- Every provider on the same 4 vCPU, 8 GB machine
- Every provider on its default machine
- Raw data: results.json · results.md · llms.txt