← Providers
Beam
provider: "beam"
Per second, Performance tier (sandbox default); Developer plan $20/mo incl. $20 credits; GPUs billed separately.
List price per hour
| 1 vCPU · 2 GB | $0.070 |
| 2 vCPU · 4 GB | $0.140 |
| 4 vCPU · 8 GB | $0.280 |
| 8 vCPU · 16 GB | $0.560 |
| 16 vCPU · 32 GB | $1.12 |
| 32 vCPU · 128 GB | max 30 vCPU |
- Source
- www.beam.cloud, 2026-11-04 (an estimate, not a bill)
- Billing
- the size you ask for, while it runs
- Plan
- $20/mo (credited): Developer plan; no free plan
Adapter
- Supports
- Exec + streaming · Files · Custom image
- Max size
- 30 vCPU · 64 GB
- Routing
- Chosen when it's the cheapest fit, or as a fallback
- Docs
- docs.beam.cloud
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 Beam
Have a Beam 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 beam --save --by YOUR_GITHUB_USERNAME
npx @sandboxrouter/sdk bench --provider beam --runs 5 --share --label "your city or cloud region" --by YOUR_GITHUB_USERNAME
npx @sandboxrouter/sdk cost run --provider beam --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 Beam's API.
setup
npm i @sandboxrouter/sdk @beamcloud/beam-js
export BEAM_TOKEN=...
export BEAM_WORKSPACE_ID=...use Beam
import { Router } from "@sandboxrouter/sdk";
const router = new Router();
const sbx = await router.create({}, { provider: "beam" });
await sbx.exec("uname -a", { onStdout: (c) => process.stdout.write(c) });
await sbx.kill();