Docker Cloud Sandboxes vs Upstash Box

Docker Cloud Sandboxes gives each coding agent a small microVM with its own kernel and Docker inside, for up to 24 hours at a time. Upstash Box gives each agent a light container that pauses when idle, can stay on all month, and wakes on the next request.

The companies and products

Docker Cloud Sandboxes

Docker Cloud Sandboxes runs Docker's sbx coding-agent microVMs on Docker-managed compute instead of your laptop.

Each sandbox is a microVM with its own Linux kernel and its own Docker Engine, started from the same sbx CLI you use locally, with Claude Code, Codex and other agents ready to run. You can move a sandbox from your laptop to the cloud and back, publish HTTPS ports and SSH in. It launched on September 24, 2026, is billed pay-as-you-go on a personal Docker account, and is built for developers who want their local agent sandboxes to keep going off their machine.

Upstash Box

Upstash Box is a cloud computer for AI agents from Upstash, the company known for serverless Redis, Vector and QStash.

Each box is a Docker container with its own filesystem, shell, git and an optional coding agent such as Claude Code, Codex or OpenCode, which you drive from TypeScript or Python SDKs. A box pauses when it sits idle, keeps its files, and you pay for the CPU it actually uses. Upstash built it to run its own Context7 service and opened it to everyone in March 2026.

Which use cases each one fits

For each use case, Battleships prices every sandbox provider on the same workload and sorts them from the cheapest monthly bill up. “280th cheapest of 367” means 279 of the other 366 providers run that workload, with every feature it needs, for less. “With limits” means the provider runs it but misses something, so it is listed after every full match. Open a use case for its whole ranking and what each provider misses.

Use case and its workloadDocker Cloud Sandboxes: price rankUpstash Box: price rankboat: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
A software factory runs agents for days and many at once; Docker stops each sandbox at 24 hours and allows 10 at a time, while Upstash runs 1,000 but has no Docker inside.
280th of 367, with limits
$4,928 a month
61st of 367, with limits
$464 a month
3rd cheapest of 367
$634 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An assistant that lives on its machine all month fits an Upstash keep-alive box, while a Docker session ends 24 hours after creation.
276th of 366, with limits
$5,110 a month
103rd of 366, with limits
$475 a month
5th cheapest of 366
$657 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Upstash fits short code runs best of the three: an idle box costs no CPU, and a paused box wakes when work arrives.
119th of 345, with limits
$233 a month
10th cheapest of 345
$119 a month
186th of 345, with limits
$2,000 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Serving your own users needs more than Docker's default 10 sandboxes at once; Upstash and boat both fit, and Upstash wakes a user's paused box on the next request.
136th of 361, with limits
$1,628 a month
2nd cheapest of 361
$222 a month
Cheapest of 361
$209 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
114th of 360, with limits
$7,000 a month
352nd of 360, with limits
$8,068 a month
34th of 360, with limits
$2,000 a month
Agent evals
250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month
167th of 364, with limits
$1,400 a month
52nd cheapest of 364
$1,011 a month
10th cheapest of 364
$200 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
CI that builds containers needs Docker inside, which Docker has and Upstash does not; Android builds need /dev/kvm, which only boat exposes.
172nd of 377, with limits
$672 a month
120th cheapest of 377
$1,520 a month
4th cheapest of 377
$86 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
A dev box that stays on all month needs no session cap: Upstash and boat have none, and Docker's sandboxes end after 24 hours.
127th of 368, with limits
$204 a month
10th cheapest of 368
$20 a month
18th cheapest of 368
$26 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
Computer-use agents need a screen; Docker is terminal only, Upstash has a headless browser, and boat streams a 60fps Linux desktop.
268th of 369, with limits
$1,400 a month
73rd of 369, with limits
$76 a month
6th cheapest of 369
$200 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
277th of 367, with limits
$700 a month
49th of 367, with limits
$38 a month
7th cheapest of 367
$200 a month
Scraping & bots (startup scale)
50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month
262nd of 346, with limits
$350 a month
37th cheapest of 346
$400 a month
6th cheapest of 346
$90 a month
Mass scraping & bots (undetectable)
1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month
190th of 338, with limits
$7,000 a month
200th of 338, with limits
$8,000 a month
71st of 338, with limits
$1,800 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
Parallel red teaming needs many full machines at once; Docker caps you at 10, Upstash boxes cannot run Docker, and boat fits both needs.
248th of 360, with limits
$350 a month
225th of 360, with limits
$259 a month
2nd cheapest of 360
$200 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Can't run itCan't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run itCan't run it

Key features

FeatureDocker Cloud SandboxesUpstash Boxboat
IsolationMicroVM with its own Linux kernel; hypervisor not namedDocker container per box on AWSFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts
Docker insideYes, its own Docker Engine; agent runs as a non-root user with sudoNot documented; the box is itself a Docker container, and custom images are listed as coming soonYes, with root and systemd
Nested virtualizationNot documentedNo; boxes are containers with no VM support documentedYes, /dev/kvm for Android emulators and VMs
Session length1 hour by default, at most 24 hours from creation; resuming starts a new timerNo cap; a standard box pauses when idle, and a keep-alive box stays on all monthNo cap on paid plans; you set the time to live
Sandboxes at once10 by default; no published way to raise it10 on Free, 1,000 on Pay as You Go, raised on request100 on the $20 plan, up to 2,000 on higher plans, self-serve
Stop and resumeStop keeps memory and files; resume picks up where it left offPauses itself when idle and keeps its files; storage keeps billing while pausedDisk saved every minute and on stop; a stopped sandbox costs nothing
Wake on requestNot documentedYes; a request to a public URL resumes a paused box and waits for the appNo; a stopped sandbox is started by API
ForkSnapshot a running sandbox with disk or disk and memory, then restore it as a new sandboxSnapshot a running box and start many new boxes from itFork a running sandbox with its disk
Desktop and browserTerminal sessions onlyManaged headless Chromium with AI page actions and CDP; no desktop60fps Linux desktop with Chromium and computer use
Inbound accessPublic HTTPS URL per published port, not protected by Docker sign-in; not a TCP tunnel; SSHHTTPS URL per port, public unless you add a token or basic auth; SSH through a gateway; no raw TCPHTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6
Outbound rulesAllow and deny rules by host, with allow-all, balanced and deny-all presetsAllow all, deny all, or allow and deny by domain and CIDR, changeable on a running boxOpen internet, no provider-side allowlist
Coding agentsClaude Code, Codex, Copilot, OpenCode and more, run and attached to from the sbx CLIClaude Code, Codex and OpenCode built in, with run and stream APIs, webhooks and scheduled promptsSeven agents preinstalled, with a prompt, steer and events API to drive them from outside
Keeping API keys out of the sandboxCloud proxy sets the auth header for built-in AI services and custom hosts; the sandbox sees a placeholderHost proxy injects headers into outbound HTTPS on port 443; set when the box is createdCredentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out
RegionsNot publishedUS only (AWS us-east-1)EU only (Germany, Finland, France)
Every feature Battleships tracks (43)
FeatureDocker Cloud SandboxesUpstash Boxboat
Full VM (own kernel)YesNoYes
Docker insideYesNoYes
Nested virtualizationNoNoYes
RootYesNot publishedYes
SystemdNot publishedNot publishedYes
Desktop GUINoNoYes
BrowserNoYesYes
Computer-use APINoNoYes
SSHYesYesYes
Persistent diskYesYesYes
Pause/resumeYesYesYes
Automatic snapshotsYesNoYes
Fork/cloneYesYesYes
Live fork (no pause)YesYesYes
Memory forkYesNoNo
Custom image (Docker or snapshot)YesYesYes
≥24 h sessionsYesYesYes
Idle auto-stopNoYesNo
Wake on requestNot publishedYesNo
HTTPS preview URLsYesYesYes
Raw TCP inboundNot publishedNoYes
Public IPv4NoNoNo
Egress allowlistYesYesNo
Secret proxyYesYesYes
Secret proxy for any APIYesYesYes
Preinstalled agentsYesYesYes
Agent harness APINoYesYes
MCP serverYesYesNo
GPUNoNoNo
WindowsNoNoNo
Arm64YesYesNo
Self-hostingNoNoNo
BYOCNoNoNo
Open sourceNoNoNo
Scoped API keysNot publishedNot publishedYes
Spend limitsNot publishedNot publishedYes
Usage per sandbox (API)NoYesYes
Audit logsNot publishedNot publishedNo
SSOYesNoNo
SOC 2NoYesNo
HIPAANoNoNo
EU data residencyNoNoYes
Zero data retentionNot publishedNot publishedYes

Performance

Docker Cloud SandboxesNot measured
Upstash BoxNot measured
boat26.69 runs/s

Neither Docker Cloud Sandboxes nor Upstash Box has a result in the hpc-sandbox-benchmarks CPU test, so there is no comparable measurement between them. boat did 26.69 runs per second on that Node.js build-and-test loop at 4 vCPU / 8 GB, on dedicated AMD Ryzen 9 9950X hosts.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Docker Cloud Sandboxes and Upstash Box have no published run in this suite yet, so there is no like-for-like number to compare.

Pricing in five scenarios

Each bill is priced from the providers' public price lists by the open Battleships engine, with the cheapest plan that runs the scenario.

ScenarioDocker Cloud Sandboxes, a monthUpstash Box, a monthboat, a month
One coding agent, workdays
4 vCPU / 8 GB, 50 GB disk, 8 hours a day, 22 days a month, files kept between days
$49 · Docker Agentic Platform (pay-as-you-go)$21 · Pay as You Go$20 · $20/mo
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$204 · Docker Agentic Platform (pay-as-you-go) · with limits$21 · Pay as You Go$26 · $20/mo
50 agents in parallel
50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside
$2,464 · Docker Agentic Platform (pay-as-you-go) · with limits$900 · Pay as You Go · with limits$317 · $20/mo × 3 seats
Sandboxes for your users
2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once
$700 · Docker Agentic Platform (pay-as-you-go) · with limits$306 · Pay as You Go$200 · $100/mo × 2 seats
1,000 short jobs at once
2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month
$1,400 · Docker Agentic Platform (pay-as-you-go) · with limits$1,822 · Pay as You Go$2,000 · $2000/mo · with limits

Docker Cloud Sandboxes: Docker bills per second for the size you pick, from $0.07 an hour for 1 vCPU / 2 GiB to $1.12 an hour for 16 vCPU / 32 GiB, with no monthly fee. A stopped sandbox costs nothing, and volumes and egress are free.

Upstash Box: A standard box is billed for the CPU it actually uses, at $0.10, $0.20 or $0.40 per active CPU hour for Small, Medium and Large, plus $0.10 per GB-month of storage, and RAM is free. A keep-alive box costs a flat $8, $16 or $32 a month whether it is busy or not.

Upstash Box: Plans start at $20 a month, and the whole fee is usage credit. You pay per second while a sandbox runs, and a stopped sandbox costs nothing and keeps its disk.

Limits in those scenarios

Docker ends every sandbox 24 hours after creation, so one agent that never stops does not fit there, and its default of 10 sandboxes at once rules it out for 50 agents in parallel, sandboxes for your users and 1,000 short jobs at once. Upstash fits all of those except 50 agents in parallel, because a box cannot run Docker inside; its egress price is not published, and keep-alive boxes bill every month whether used or not. boat fits every scenario but the 1,000-job burst, where its start limits queue the jobs.

ScenarioDocker Cloud SandboxesUpstash Boxboat
One coding agent, workdaysNone that bite
  • flat pool: the tier is billed whether used or not
  • egress price not published
None that bite
One agent that never stops
  • Docker Agentic Platform (pay-as-you-go): sessions capped at 24 h
  • flat pool: the tier is billed whether used or not
  • egress price not published
None that bite
50 agents in parallel
  • Docker Agentic Platform (pay-as-you-go): max 10 concurrent
  • missing Docker inside
  • flat pool: the tier is billed whether used or not
  • egress price not published
None that bite
Sandboxes for your users
  • Docker Agentic Platform (pay-as-you-go): max 10 concurrent
  • egress price not published
None that bite
1,000 short jobs at once
  • Docker Agentic Platform (pay-as-you-go): max 10 concurrent
  • egress price not published
  • max 2,400 starts/day (needs ~6,667)
  • max 600 starts/hour (needs ~1,000)
  • bursts above 90 starts/min are queued (a burst of 333 takes ~4 min to start)

Which one should you use?

Use Docker Cloud Sandboxes when

you already run agents in sbx on your laptop, need Docker inside, and want a few of them to keep going in the cloud for up to a day with memory kept across stops.

  • Docker inside every sandbox. For agents that run databases or build images in Docker, each sandbox has its own Docker Engine, which an Upstash box does not offer.
  • Stop and fork with memory. For agents that pause between steps, a stopped sandbox comes back with its memory and running processes, and can be forked with them.
  • The same sandbox on your laptop. If you already run sbx locally, the cloud is the same microVM and CLI, and you can move a sandbox either way.

Use Upstash Box when

your agents mostly wait, need to wake on an incoming request, run by the hundreds for short jobs, or must run in the US, and do not need Docker inside.

  • No session cap. For agents that live on their machine, a keep-alive box stays on all month, while a Docker sandbox ends after 24 hours.
  • Idle costs no CPU, and a request wakes the box. For agents that wait a lot, an idle box costs no CPU, and a request to its URL wakes a paused box.
  • Many boxes at once. For big bursts, Pay as You Go runs 1,000 boxes at once by default, against Docker's default of 10.

Where boat fits

Docker gives you a real microVM with Docker inside but stops it after a day and runs 10 at a time; Upstash runs for weeks and by the thousand but in a container without Docker. If your agents need both, a full machine that runs as long and as wide as the work, look at boat.

A whole machine that keeps running

boat sandboxes are full VMs with root, systemd, Docker and /dev/kvm, with no session cap on paid plans. On Docker your code must restart agents before the 24-hour mark; on Upstash, Docker and emulators are not offered at all.

Wide fleets with Docker inside

boat runs 100 sandboxes at once on its first plan. On Docker the eleventh agent waits for a free slot, which rules out 50 agents in parallel. Upstash allows 1,000 boxes, but without Docker inside the same 50-agent scenario does not fit there either.

A desktop the agent can see

boat streams a 60fps Linux desktop with Chromium and computer-use tools. Docker's sandboxes are terminal only, and Upstash's browser is headless, so on either you would add a separate service for desktop apps or a human watching along.

Use boat when your agents need a full machine with Docker, emulators and a desktop, run for days or by the dozen, or have to be driven from your own app through an API. Compare it one to one: boat vs Docker Cloud Sandboxes and boat vs Upstash Box.

Questions people ask

Is Docker Cloud Sandboxes cheaper than Upstash Box?

For one coding agent on workdays, Upstash is cheaper: $21 a month against $49 on Docker for a 4 vCPU / 8 GiB machine. Docker does not fit the other four scenarios on this page, because of its 24-hour session cap or its default of 10 sandboxes at once.

Which is faster, Docker Cloud Sandboxes or Upstash Box?

There is no comparable measurement: neither is in the hpc-sandbox-benchmarks CPU test. boat did 26.69 runs per second on that test at 4 vCPU / 8 GB.

Can Upstash Box run Docker like Docker Cloud Sandboxes?

Its docs do not offer it: each box is itself a Docker container, and custom images are listed as coming soon. Each Docker cloud sandbox is a microVM with its own Docker Engine, and boat sandboxes are full VMs where Docker and systemd work as on any Linux server.

Can either run longer than 24 hours?

Upstash can: a standard box pauses when idle and resumes later with its files, and a keep-alive box stays on all month. A Docker cloud sandbox cannot go past 24 hours from creation, and resuming starts a new timer. boat has no session cap on paid plans.

How many sandboxes can I run at once?

Docker allows 10 concurrent and 50 stored per account by default, with no published way to raise it. Upstash Pay as You Go allows 1,000 boxes at once and raises it on request. boat's $20 plan runs 100 at once, and higher plans go up to 2,000.

Does either have a desktop for computer use?

No. Docker's cloud sandboxes are terminal sessions, and Upstash gives a headless Chromium with AI page actions and no desktop. boat streams a full Linux desktop at 60fps with computer-use tools preinstalled.

Try boat

Install the CLI, then run boat new.

7-day free trial

More comparisons