# Sandbox cold start benchmark — Hanzo AI

> Time to a running sandbox: a V8 context ready to execute JavaScript in 0.13 ms, the median of one pass, reproducible by one command.

[Benchmarks](https://hanzo.ai/benchmarks) / Sandbox cold start

measured

# Cold start, by primitive

A V8 context ready to execute JavaScript in 0.13 ms, the median of one pass, reproducible by one command.

harness

[hanzoai/benchmarks · sandbox](https://github.com/hanzoai/benchmarks/tree/main/sandbox)

`node sandbox/sandbox.mjs`prints the table on this page — transcribed from bench/README.md, the pass of 2026-09-07

## What is measured

The time from asking for a sandbox to having one that will execute code. A V8 context is a fresh global inside a V8 isolate that is already running: it is cheap because it shares that isolate’s heap. Timings are the median of the pass.

## Results

an M-series laptop · the pass of 2026-09-07 · median of the pass

primitive

measured here

what it can run

V8 context

0.13 ms

JavaScript, sharing the heap

A context runs JavaScript, which makes it the right primitive for a JavaScript transform. An agent that installs a package or runs a shell gets a microVM instead, which is a separate measurement.

## What this measures, and what it does not

Cold start is not throughput. This is the time to the first instruction, on an idle machine. It says nothing about what happens when a thousand sandboxes are asked for at once.

One machine, one day. A single pass on one laptop, reproducible by one command. Read it as a floor that has been established rather than as a service level.

It is one of three costs, not the cost. A sandbox is what an agent needs to run a command. What it costs to keep an agent that is doing nothing is [477 bytes and a 0.034 ms resume](https://hanzo.ai/benchmarks/fleet), and what a running agent holds is [601 bytes of heap and 125 ns to spawn](https://hanzo.ai/benchmarks/goroutine). The three are separate measurements with separate commands and they do not add up into a single number.

Hanzo AI Cloud

### Build on Hanzo Cloud

[Start on Hanzo Cloud](https://cloud.hanzo.ai)[View Models & Pricing](https://hanzo.ai/pricing)

[PreviousLive agent footprint](https://hanzo.ai/benchmarks/goroutine)

[All Benchmarks Board](https://hanzo.ai/benchmarks)

[NextEngine prefill on CUDA vs llama.cpp](https://hanzo.ai/benchmarks/inference)

### Related in runtime

[Fleet residency](https://hanzo.ai/benchmarks/fleet)[Live agent footprint](https://hanzo.ai/benchmarks/goroutine)

Other benchmarks[LoCoMo](https://hanzo.ai/benchmarks/locomo) · [MemoryAgentBench](https://hanzo.ai/benchmarks/memoryagentbench) · [LongMemEval](https://hanzo.ai/benchmarks/longmemeval) · [CronQuestions](https://hanzo.ai/benchmarks/cronquestions) · [RepoBench-R](https://hanzo.ai/benchmarks/repobench-r) · [LoCoMo · subject scope](https://hanzo.ai/benchmarks/locomo-subject-scope) · [LoCoMo-Conv](https://hanzo.ai/benchmarks/locomo-conv) · [Engine prefill on CUDA vs llama.cpp](https://hanzo.ai/benchmarks/inference) · [GPQA-Diamond](https://hanzo.ai/benchmarks/gpqa)

harness and the committed table: [hanzoai/benchmarks · sandbox](https://github.com/hanzoai/benchmarks/tree/main/sandbox) · `sandbox.mjs` needs a container runtime; `colima start` is enough on macOS
