← Providers
Deno Sandbox
provider: "deno"
Billed on CPU time, not wall clock (estimate assumes both vCPUs busy); fixed 2 vCPU, 0.75-4 GB, max 30 min lifetime; needs a paid Deno Deploy plan.
List price per hour
| 1 vCPU · 2 GB | $0.250 |
| 2 vCPU · 4 GB | $0.300 |
| 4 vCPU · 8 GB | max 2 vCPU |
| 8 vCPU · 16 GB | max 2 vCPU |
| 16 vCPU · 32 GB | max 2 vCPU |
| 32 vCPU · 128 GB | max 2 vCPU |
- Source
- deno.com, 2026-11-04 (an estimate, not a bill)
- Billing
- CPU only while busy; shown with every core busy
- Plan
- $20/mo: the free Deno Deploy plan has no sandboxes; Pro includes allowances, not credit
Adapter
- Supports
- Exec + streaming · Files · Custom image
- Max size
- 2 vCPU · 4 GB
- Routing
- Chosen when it's the cheapest fit, or as a fallback
- Docs
- docs.deno.com
Measured on real accounts
- Real-account check
- not run yet
- tested against a mock of its API only
- Cold start
- not measured
- no benchmark run yet
- Succeeded
- not measured
- no benchmark run yet
- Size you get
- not measured
- no cost run yet
- Billed vs list price
- not measured
- no cost run yet
Help verify Deno Sandbox
Have a Deno Sandbox account? These run real sandboxes on it, for a few cents at most, and write result files that fill in the blanks above. Results never include your keys. Run them in a clone of the repo and open a pull request with the files: CI checks every file for keys and impossible numbers, and a maintainer reviews each one before it shows here.
terminal
npx @sandboxrouter/sdk check --provider deno --save --by YOUR_GITHUB_USERNAME
npx @sandboxrouter/sdk bench --provider deno --runs 5 --share --label "your city or cloud region" --by YOUR_GITHUB_USERNAME
npx @sandboxrouter/sdk cost run --provider deno --minutes 10 --by YOUR_GITHUB_USERNAMEReal-account check, step by step
Not run on a real account yet; the adapter is tested against a mock of Deno Sandbox's API.
setup
npm i @sandboxrouter/sdk @deno/sandbox
export DENO_DEPLOY_TOKEN=...use Deno Sandbox
import { Router } from "@sandboxrouter/sdk";
const router = new Router();
const sbx = await router.create({}, { provider: "deno" });
await sbx.exec("uname -a", { onStdout: (c) => process.stdout.write(c) });
await sbx.kill();