boxd vs Cloudflare Sandbox

Cloudflare Sandbox gives your Worker a container on the edge, with a disk that's wiped when it stops. A boxd machine is a persistent VM with its own disk, SSH and URL, that you can use without writing a Worker.

Checked Oct 30, 2026Every claim sourced
At a glance: boxd compared with Cloudflare Sandbox
At a glanceboxdCloudflare Sandbox
Where boxd is ahead
Sleeps with processes keptYes, standby and hibernateNo; disk is wiped
Starts from a snapshot, app runningYes · app answers in 1.19 sFilesystem only
Largest, self-serve8 vCPU · 32 GiB4 vCPU · 12 GiB · 20 GB
SSHNative, own port per machineThrough wrangler
Coding agents installedClaude Code, Codex, OpenCodeInstall them yourself
Built-in integrations100+, credentials kept outYour Worker holds tokens
Where Cloudflare Sandbox is ahead
RegionsFrankfurt (US waitlist)Global
Egress allowlistYesYes, off by default
While asleepHibernated: disk onlyStopped: free (disk gone)

Use boxd when

  • Your work needs a disk that stays
  • You want SSH and a URL without writing a Worker
  • You need more than 4 vCPU or 12 GiB

Use Cloudflare Sandbox when

  • You run short code executions from a Worker
  • You want sandboxes near users worldwide
  • You need the smallest possible instance

Sources for every Cloudflare Sandbox cell are in the full table below · This page as Markdown, for agents

On this page · 2 min

Where boxd stands out

The disk stays

A boxd machine keeps its 100 GB disk and its memory through sleep. A Cloudflare sandbox's disk is wiped when the instance stops; you save and restore a filesystem snapshot yourself, and processes start again.

Composable: the sandbox is one part of the kit

On Cloudflare you build that kit yourself out of Workers: cron triggers and Durable Objects for scheduling, your own Worker holding every token, and no documented network between sandboxes. Put together, boxd's parts ran the CI of 10 open-source projects 6× faster than one GitHub-hosted job.

Composable: the sandbox is one part of the kit: boxd compared with Cloudflare Sandbox
FeatureboxdCloudflare Sandbox
Composable
Ready machine described in codeMachine specs, built on one anotherDockerfile; config in your code
Machines create machinesYes, signed in as the machineNot published
Built-in integrations100+, credentials kept outYour Worker holds tokens
Schedules and event triggersCron and events; sleeps between runsThrough Workers Cron Triggers
Standalone disksYes, outlive the machineR2 mounts; no block volumes
Private network between machinesOrg network, split by tagsNot published
Tailscale or NetBirdBoth, built inWorkers VPC, for Workers
Agent skills or MCPAgent skills; no MCP serverSkills and MCP servers

Usable on its own

SSH in, open its URL, run an agent. A Cloudflare sandbox is driven by a Worker and Durable Object you write and deploy, which also route its preview URLs.

Room to work

boxd machines start at 2 vCPU and 8 GiB and go to 8 vCPU and 32 GiB. Cloudflare's largest instance is 4 vCPU, 12 GiB and 20 GB of disk.

Claude Code, Codex and OpenCode are already there

Every machine boots with all three installed, plus headless Chrome, a desktop you can open in the browser, Docker and the boxd CLI. Your API keys stay outside the machine: the guest holds a placeholder and our proxy swaps in the real value.

Timings are medians of ten runs on our production cluster, from a client in the same datacenter. How we measured

Side by side

Checked Oct 30, 2026. Each ↗ goes to where Cloudflare Sandbox says it. boxd's column is from our code and our own measurements.

boxd compared with Cloudflare Sandbox
FeatureboxdCloudflare Sandbox
The machine
Full VM, own kernelYes, every machineContainer inside a Firecracker VM↗
Default size2 vCPU · 8 GiB · 100 GB1/16 vCPU · 256 MiB · 2 GB↗
Largest, self-serve8 vCPU · 32 GiB4 vCPU · 12 GiB · 20 GB↗
Root, systemd, DockerYes, plus nested virtualizationRoot; Docker with limits; single process↗
CPU test (runs/s)12.6 (our run)Not measured
Composable
Ready machine described in codeMachine specs, built on one anotherDockerfile; config in your code↗
Machines create machinesYes, signed in as the machineNot published↗
Built-in integrations100+, credentials kept outYour Worker holds tokens↗
Schedules and event triggersCron and events; sleeps between runsThrough Workers Cron Triggers↗
Standalone disksYes, outlive the machineR2 mounts; no block volumes↗
Private network between machinesOrg network, split by tagsNot published↗
Tailscale or NetBirdBoth, built inWorkers VPC, for Workers↗
Agent skills or MCPAgent skills; no MCP serverSkills and MCP servers↗
Ready when you are
Sleeps with processes keptYes, standby and hibernateNo; disk is wiped↗
Wakes on a requestYes, HTTPS or SSH · app answers in 156 msYour Worker starts a new instance↗
Starts from a snapshot, app runningYes · app answers in 1.19 sFilesystem only↗
Session limitNoneNo cap, no guarantee↗
Built for agents
Coding agents installedClaude Code, Codex, OpenCodeInstall them yourself↗
SSHNative, own port per machineThrough wrangler↗
HTTPS URL per portYes, plus custom domainsRouted by your Worker↗
Raw TCP inboundYes, 3 ports per machineNo↗
Secrets kept outYes, swapped in at the proxyYes, outbound handlers↗
Price
vCPU-hour$0.047, CPU used$0.072 active only + $5/mo plan↗
RAM GiB-hour$0.014, memory in use$0.009, provisioned↗
While asleepHibernated: disk onlyStopped: free (disk gone)↗
Also worth knowing
GPUsNoNo
RegionsFrankfurt (US waitlist)Global↗
SOC 2SOC 2 in progressCloudflare yes; Containers not in scope↗
SAML SSONoYes↗
Egress allowlistYesYes, off by default↗
Self-hostYes, free to 16 vCPUsNo

Where Cloudflare Sandbox is stronger

Global placement. Sandboxes run near the request across Cloudflare's network, with EU, US and FedRAMP jurisdictions.

Egress control. Internet off by default, per-host allow and deny lists, and credentials added by your Worker after traffic leaves the sandbox.

Tiny and cheap. Instances start at 1/16 vCPU and CPU is billed only while busy.

One platform. If you're on Workers already, the sandbox sits next to your code, storage and queues.

Questions

Does a Cloudflare sandbox keep its files?
Not by itself: the disk is ephemeral and is wiped when the instance stops. You can save a filesystem snapshot and restore it, or mount R2. A boxd machine keeps its disk and memory, so files and running processes are both there when it wakes.
Do I need Workers to use boxd?
No. A boxd machine is reachable on its own: SSH, an HTTPS URL per port, the CLI, the API and the Python and TypeScript SDKs.