Cloudflare Sandbox vs Northflank: pricing, isolation and limits
Northflank bills allocated vCPUs at a low rate and costs less than Cloudflare, which bills active CPU but needs 3 GiB per vCPU.
On a waiting agent's workload, Runtime costs 53% less than Cloudflare and 42% less than Northflank. 1,000 one-minute runs at 2 vCPU are $1.35 on Cloudflare, $1.11 on Northflank and $0.64 on Runtime. Runtime charges for CPU the sandbox spends, not CPUs it holds, and creating one is a single API call: no Worker to deploy and no service to define. Rates checked 23 September 2026.
Estimated compute cost
53% less than Cloudflare Sandbox42% less than Northflank
2 vCPUs · 4 GiB · 60 s a run · 20 CPU-seconds busy
Compute only, at list rates checked 23 September 2026 (Cloudflare Containers pricing, Northflank pricing). Plan fees, network, taxes and free credits are left out. The worked example below shows the arithmetic.
At a glance
Cloudflare's Sandbox SDK is billed at Cloudflare Containers rates, used below.
| Cloudflare Sandbox SDK | Northflank | Runtime | |
|---|---|---|---|
| Isolation | A container in its own VM | microVMs for CPU workloads, gVisor for GPU workloads | Firecracker microVM, own kernel |
| CPU | $0.072 per active vCPU-hour, metered in 10 ms steps | $0.01667 per allocated vCPU-hour | $0.025 per vCPU-hour of measured CPU, with a small floor |
| Memory | $0.009 per provisioned GiB-hour; at least 3 GiB per vCPU | $0.00833 per GB-hour | $0.0075 per reserved GiB-hour |
| Plan fee | Workers Paid, at least $5 a month | None published for compute | None; prepaid credit from $10 |
| Free start | No free tier; the plan includes 375 vCPU-minutes a month | 2 free services and 1 free database | 50 sandbox hours, no card |
| Sandbox model | A Durable Object binding in a Worker | A service with a deployment plan | A sandbox, created in one call |
| Where it runs | Cloudflare's network, near the first request | Northflank's regions or your AWS, GCP or Azure | Dedicated servers Runtime operates |
Why is Northflank cheaper when Cloudflare bills only active CPU?
Because Cloudflare's memory rules cost more than Northflank's whole bill for CPU. Northflank charges $0.01667 per vCPU-hour for every vCPU a sandbox holds, so two vCPUs for a minute cost well under a cent whether they work or wait. Cloudflare charges only for CPU used, at $0.072 a vCPU-hour, but a 2 vCPU sandbox must be provisioned with at least 6 GiB of memory, billed for the whole run with its disk. In the example below Cloudflare's memory and disk alone come to $0.95, and Northflank's memory to $0.56.
Cloudflare wins only for sandboxes that barely compute: under about 8 of their 120 CPU-seconds in a one-minute run. Above that, Northflank is cheaper, and the gap grows with load.
Cost for the same job
Each of 1,000 runs holds 2 vCPU for 60 seconds and computes for 20 CPU-seconds. Northflank is priced with 4 GB and Runtime with 4 GiB. For Cloudflare the minimum of 3 GiB per vCPU means 6 GiB, and the disk is the 12 GB of Cloudflare's own example.
TextCloudflare CPU 1,000 × 20 s × $0.000020 = $0.40 Memory 1,000 × 60 s × 6 × $0.0000025 = $0.90 Disk 1,000 × 60 s × 12 × $0.00000007 = $0.05 Total $1.35Northflank CPU 1,000 × 60 s / 3,600 × 2 × $0.01667 = $0.556 Memory 1,000 × 60 s / 3,600 × 4 × $0.00833 = $0.555 Total $1.11Runtime 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.64A month at 100,000 runs is $135.04 on Cloudflare, $111.10 on Northflank and $63.89 on Runtime. The busy case turns the order: with both CPUs busy for the whole minute it is $1.11 on Northflank, $1.33 on Runtime and $3.35 on Cloudflare, so Northflank's low allocated rate wins there, the only such case here. Runtime stays below Northflank while a run keeps its CPUs busy for less than about 88 of 120 CPU-seconds, which is where agents waiting on a model sit. Cloudflare is priced as if each sandbox were destroyed at the end of its run, and plan fees, Workers requests, Durable Object time, storage, network and free allowances are omitted.
How much setup does each need?
Cloudflare's Sandbox SDK runs inside a Worker on the Workers Paid plan: a
Sandbox export, a Durable Object binding and a containers entry, deployed
with Wrangler and a local Docker build. Northflank creates each sandbox as a
service with a deployment plan. On Runtime a sandbox is one call, and an agent
connects by browser approval with no API key to copy:
Terminalnpx withruntime sandbox run --trial -- python3 -c 'print(6 * 7)'Pythonfrom withruntime import Sandboxwith Sandbox.create(funding="trial") as box: print(box.exec("python3 -c 'print(6 * 7)'", check=True).stdout)Which one to pick
| Workload | Best fit |
|---|---|
| A Workers app whose sandboxes almost never compute | Cloudflare Sandbox |
| Sandboxes started near users on Cloudflare's network | Cloudflare Sandbox |
| Every CPU busy all the time | Northflank |
| L4, A100 or H100 GPUs by the hour, or your own cloud account | Northflank |
| Agents that mostly wait on a model | Runtime |
For that last row Runtime is 42% below Northflank and 53% below Cloudflare, and its pause and forks keep memory and running processes. Northflank can also run in your own AWS, GCP or Azure account.
Porting from each
Cloudflare: getSandbox(env.Sandbox, name) becomes
Sandbox.getOrCreate(name), sandbox.exec(cmd) becomes exec, and
proxyToSandbox becomes box.previews.create(port). Northflank: where the
code creates a sandbox service, create a Runtime sandbox; send commands with
exec; and call stop() where the service was deleted.
The migration page holds one instruction a coding agent can
follow to port the project on a branch and test it on the free trial. For
Cloudflare users, npx withruntime switch --from cloudflare before the first
top-up matches it with up to $100 of credit. Read more in
Runtime vs Cloudflare,
Runtime vs Northflank,
microVM vs container and
gVisor.
Sources
Rates checked 23 September 2026.
- Cloudflare Containers pricing, Containers limits and instance types, Containers architecture
- Northflank pricing, Northflank sandboxes, Sandboxes on Northflank
- Runtime pricing
Facts on this page were checked on 25 September 2026.