# Runtime vs Vercel Sandbox Runtime and Vercel Sandbox both use Firecracker microVMs and bill active CPU; Runtime charges less, and a pause keeps memory. This page compares the two for teams looking for a Vercel Sandbox alternative. Facts about Vercel come from its public pricing and documentation, checked 22 September 2026, at the rates of its default `iad1` region; check the links at the end before relying on them. Equal vCPU counts do not prove equal performance, and the two services have not been benchmarked against each other. ## At a glance | | Runtime | Vercel Sandbox | | --------------- | ---------------------------------------------------- | ---------------------------------------------------- | | Isolation | Firecracker microVM, own kernel | Firecracker microVM, own kernel | | CPU billing | $0.025 per active vCPU-hour, with a small floor | $0.128 per active CPU-hour | | Memory billing | $0.0075 per reserved GiB-hour | $0.0212 per provisioned GB-hour | | Plan | None; prepaid credit from $10 | Hobby allowance free; usage beyond it needs Pro | | Free start | 20 sandbox hours, no card | 5 active CPU-hours and 420 GB-hours a month on Hobby | | Session length | Leases of up to an hour, extended as often as needed | 45 minutes on Hobby, 24 hours on Pro | | Stop and resume | Pause keeps files and memory | Stop keeps the filesystem; processes start again | | Regions | One | 19 | ## Cost for the same job Take 1,000 runs of a 2 vCPU sandbox with 4 GiB on Runtime and 4 GB on Vercel. Each run lasts 60 seconds and keeps the CPU busy for 20 CPU-seconds, which is typical of an agent that spends most of its time waiting for a model. ``` Runtime CPU 1,000 × 20 s / 3,600 × $0.025 = $0.14 Memory 1,000 × 60 s / 3,600 × 4 × $0.0075 = $0.50 Total $0.64 Vercel CPU 1,000 × 20 s / 3,600 × $0.128 = $0.71 Memory 1,000 × 60 s / 3,600 × 4 × $0.0212 = $1.41 Total $2.12 ``` Both bill CPU by use, so the gap holds as a workload gets busier: with both CPUs busy for the whole minute, the same job costs $1.33 on Runtime and $5.68 on Vercel. A GiB is about 7% larger than a GB, so Runtime's memory figure covers slightly more. Creations, network, storage, plan fees, taxes and free allowances are excluded from both. See [pricing](./pricing) for Runtime's terms. ## Where Vercel Sandbox is stronger - **Regions and scale.** Vercel runs sandboxes in 19 regions, with up to 10,000 at once on Pro. Runtime runs in one region. - **Size.** Enterprise sandboxes go up to 32 vCPUs and 64 GB. - **Persistence.** Vercel sandboxes save their filesystem on every stop by default, and Drives add persistent storage that sandboxes can share. - **Platform.** If your application already runs on Vercel, sandboxes share its account, billing and observability, and Vercel reports SOC 2 Type II. Runtime has not completed an outside security audit. - **Snapshots.** Runtime's are paused while an issue is fixed; build a [custom image](./javascript#custom-images) to start many sandboxes from one setup. ## Where Runtime is stronger - **Price.** Active CPU costs about a fifth as much, and memory about a third. - **Memory survives a pause.** A paused Runtime sandbox wakes with its processes still running. See [pricing](./pricing) for paused storage. - **Setup by the agent.** An agent runs `npx withruntime run --trial -- ...`, shows you a link, and starts work once you approve it in the browser. No API key is copied into a prompt or a config file, and the [MCP server](./mcp) reuses the same connection. - **No platform to join.** Runtime needs no hosting plan or project; prepaid credit is the whole account. ## Moving from Vercel Sandbox Vercel Sandbox: ```js import { Sandbox } from "@vercel/sandbox"; const sandbox = await Sandbox.create(); const command = await sandbox.runCommand("echo", ["hello"]); console.log(await command.stdout()); await sandbox.stop(); ``` Runtime: ```ts import { Sandbox } from "withruntime"; const box = await Sandbox.create({ funding: "trial" }); try { console.log((await box.exec("echo hello", { check: true })).stdout); } finally { await box.stop(); } ``` To have a coding agent make the switch, test it and compare costs on your own workload, give it the prompt in [migration](./migrate). Keep Vercel Sandbox available until the same job passes on both. ## Sources - [Vercel Sandbox pricing and quotas](https://vercel.com/docs/sandbox/pricing) - [Understanding Vercel Sandboxes](https://vercel.com/docs/sandbox/concepts) - Runtime [pricing](./pricing), [security](./security) and [products](./products)