Morph Cloud vs Upstash Box
Morph Cloud gives each agent a full virtual machine that you can snapshot and branch with its memory. Upstash Box gives each agent a light container with a coding agent built in, billed only for the CPU it actually uses.
The companies and products
Morph Cloud
Morph Cloud sells full virtual machines for AI agents that can be snapshotted, branched and restored with their memory, which it calls Infinibranch.
You get MorphVM instances as low-level building blocks and Devboxes as ready workspaces on top of them, with SSH, preview URLs and a tmux API for running coding agents you install yourself. Everything is billed in MCUs, where one MCU is 1 vCPU, 4 GB of RAM or 16 GB of disk for an hour. It is built for teams that fan agents out from one saved state, and it also sells managed GitHub Actions runners and a shared filesystem.
- Regions
- Not published
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. “16th cheapest of 345” means 15 of the other 344 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 workload | Morph Cloud: price rank | Upstash Box: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month A software factory needs Docker for databases and test services, which Morph's VMs run and an Upstash box, itself a container, does not; bochka runs Docker and adds preinstalled coding agents. | 198th of 367, with limits $2,288 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 | 235th of 366, with limits $3,014 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 Both fit short code runs well: Upstash bills no CPU while a box is idle, and Morph can pause a machine with its memory and wake it on the next request. | 16th cheapest of 345 $154 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 Both fit, and both wake a user's paused machine on the next request; bochka also fits and gives each user a full VM with HTTPS on up to 50 ports. | 12th cheapest of 361 $905 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 Morph's memory branching suits rollouts that all start from the same running state, while Upstash branches only from filesystem snapshots. | 86th of 360, with limits $4,847 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 | 38th cheapest of 364 $675 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 jobs that build containers need Docker, which Morph has and Upstash does not; Morph also sells managed GitHub Actions runners. | 39th cheapest of 377 $355 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 Upstash's flat-price keep-alive box is a light dev box; Morph and bochka give a full VM with root and Docker. | 85th cheapest of 368 $116 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 Neither ships a desktop with a computer use API: Morph has a remote desktop you set up yourself, and Upstash's browser is headless; bochka streams a 60fps desktop with Chromium. | 182nd of 369, with limits $595 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 Upstash ships a managed headless Chromium with AI page actions, while on Morph you run headless Chrome yourself in Docker. | 214th of 367, with limits $250 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 | 239th of 346, with limits $234 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 | 154th of 338, with limits $4,750 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 | 214th of 360, with limits $228 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 it | Can't run it | Can't run it |
| macOS agents 5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month | Can't run it | Can't run it | Can't run it |
Key features
| Feature | Morph Cloud | Upstash Box | bochka |
|---|---|---|---|
| Isolation | Full VM with its own kernel | Docker container per box on AWS | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Docker inside | Yes, including Docker in Docker and local Kubernetes | Not documented; the box is itself a Docker container | Yes, Docker and systemd run as on any Linux server |
| Nested virtualization | Experimental | No; no VM support documented | Yes, /dev/kvm for Android emulators and VMs |
| Pause with memory | Yes; resume brings back every process, and a paused VM bills only its snapshot | No; a box pauses when idle and keeps its files, and storage keeps billing | No; disk is saved every minute and on stop, and a stopped sandbox is free |
| Fork | Branch a running VM with its memory into many copies in under 250 ms | Snapshot a running box's files and start many new boxes from it | Fork a running sandbox with its disk |
| Wake on request | Yes, on the next HTTP request, SSH or exec call | Yes, on a request to the box's public URL | No; a stopped sandbox is started by API |
| Coding agents | You install the agent and drive it through a tmux API | Claude Code, Codex and OpenCode built in, with run and stream APIs, webhooks and scheduled prompts | Claude Code, Codex and other agents preinstalled, with a prompt, steer and events API |
| Desktop and browser | Browser-based remote desktop; you install the browser and any computer use agent | Managed headless Chromium with AI page actions and CDP; no desktop | Linux desktop streamed at 60fps, Chromium and a computer use API |
| Keeping API keys out of the sandbox | Responses Proxy for model APIs only | Host proxy injects headers into outbound HTTPS, set when the box is created | Credentials proxy for model providers and any HTTPS API, with a switch to another account when credits run out |
| Inbound access | Named HTTP services with optional API key auth; SSH through a gateway; no raw TCP | HTTPS URL per port, public unless you add a token or basic auth; SSH through a gateway; no raw TCP | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP |
| Outbound rules | No provider-side allowlist documented | Allow all, deny all, or allow and deny by domain and CIDR on a running box | Open internet, no provider-side allowlist |
| Machine size | Account pools from 64 vCPU / 256 GB on Developer to 1,024 vCPU / 4,096 GB on Scale | Small 2 vCPU / 4 GB, Medium 4 / 8 GB, Large 8 / 16 GB, with 5, 10 or 20 GB disk | Up to 16 vCPU / 32 GB on the $100 plan and above; 50 GB disk at 4 vCPU / 8 GB |
| Guest systems | Linux, with experimental Windows and macOS (x86) | Linux | Linux |
| Where data lives | Regions not published | US only (AWS us-east-1) | EU only (Germany, Finland, France), with zero data retention |
Every feature Battleships tracks (43)
| Feature | Morph Cloud | Upstash Box | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | No | Yes |
| Docker inside | Yes | No | Yes |
| Nested virtualization | Yes | No | Yes |
| Root | Yes | Not published | Yes |
| Systemd | Yes | Not published | Yes |
| Desktop GUI | Yes | No | Yes |
| Browser | No | Yes | Yes |
| Computer-use API | No | No | Yes |
| SSH | Yes | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | Yes | No | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | Yes | No | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | Yes | Yes | No |
| Wake on request | Yes | Yes | No |
| HTTPS preview URLs | Yes | Yes | Yes |
| Raw TCP inbound | No | No | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | No | Yes | No |
| Secret proxy | Yes | Yes | Yes |
| Secret proxy for any API | No | Yes | Yes |
| Preinstalled agents | No | Yes | Yes |
| Agent harness API | Yes | Yes | Yes |
| MCP server | No | Yes | No |
| GPU | No | No | No |
| Windows | Yes | No | No |
| Arm64 | No | Yes | No |
| Self-hosting | No | No | No |
| BYOC | No | No | No |
| Open source | No | No | No |
| Scoped API keys | Yes | Not published | Yes |
| Spend limits | Not published | Not published | Yes |
| Usage per sandbox (API) | Yes | Yes | Yes |
| Audit logs | Yes | Not published | No |
| SSO | Not published | No | No |
| SOC 2 | Not published | Yes | No |
| HIPAA | Not published | No | No |
| EU data residency | Not published | No | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
Neither Morph Cloud nor Upstash Box is in the hpc-sandbox-benchmarks CPU test, so there is no comparable measurement for either. bochka 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. Morph's under-250 ms snapshot restore measures start time, not CPU speed.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Morph Cloud 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.
| Scenario | Morph Cloud, a month | Upstash Box, a month | bochka, 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 | $32 · Developer | $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 | $121 · Team | $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 | $1,459 · Scale | $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 | $325 · Scale | $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 | $869 · Scale | $1,822 · Pay as You Go | $2,000 · $2000/mo · with limits |
Morph Cloud: Morph bills MCUs at $0.05 an hour: a machine uses the largest of its vCPUs, its RAM in 4 GiB steps or its disk in 16 GiB steps. Team ($40 a month) and Scale ($250 a month) are prepaid MCU bundles at a discount, and a paused VM bills only its snapshot.
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 by size, 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.
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
Upstash does not run Docker inside a box, so the 50-agent scenario does not fit there, and its disks stop at 5, 10 or 20 GB. Morph prices a machine by its largest resource, so disk beyond 16 GiB per vCPU raises the bill, and its Developer pool of 64 vCPU holds only 16 machines at 4 vCPU. Neither publishes egress prices. bochka's limit is start rate: for 1,000 short jobs at once it queues the starts, while both Morph and Upstash fit.
| Scenario | Morph Cloud | Upstash Box | bochka |
|---|---|---|---|
| One coding agent, workdays |
|
| None that bite |
| One agent that never stops |
|
| None that bite |
| 50 agents in parallel |
|
| None that bite |
| Sandboxes for your users |
|
| None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use Morph Cloud when
your agents need a full VM with Docker, branch from one running state with its memory, or need experimental Windows and macOS guests.
- Branch a running machine with its memory. For agents that fan out from one running state: each copy continues with its processes still running, in under 250 ms.
- A full VM with Docker. For agents that run databases or build images in Docker, which an Upstash box does not offer.
- Windows and macOS guests. For agents that must test software on those systems, if experimental support is good enough.
Use Upstash Box when
your agents mostly wait, want a coding agent built in, must stay inside an outbound allowlist, or must run in the US.
- Idle costs no CPU. For agents that wait a lot: you pay only for CPU actually used, and RAM is not billed.
- Coding agents built in. For teams that want Claude Code, Codex or OpenCode ready, with run and stream APIs, webhooks and scheduled prompts.
- Outbound network rules. For agents that may only reach a short list of domains or IP ranges, changeable on a running box.
Where bochka fits
Morph gives you a full VM but leaves the agent, browser and desktop for you to install. Upstash gives you the agent but in a container with no Docker and a small disk. bochka gives agents a full VM with the agents, the desktop and the key handling already inside.
A full machine with the agents already in it
On Upstash an agent that needs Docker or an emulator gets stuck, so the 50-agent scenario does not fit. On Morph you install the agent and drive it by keystrokes through tmux. bochka has both: Docker, /dev/kvm and preinstalled agents with an API.
A desktop the agent can see
Upstash's browser is headless with no desktop, and on Morph you build the desktop image, browser and click loop yourself. bochka streams a 60fps Linux desktop with Chromium and a computer use API in every sandbox.
Keys for any API stay outside
Morph's proxy covers model APIs only, so keys for GitHub or Stripe sit inside the machine. Upstash's header proxy is fixed when the box is created. bochka's credentials proxy covers any HTTPS API and can switch to another account when credits run out.
Use bochka when your agents need a full VM that arrives ready: Docker and /dev/kvm, preinstalled coding agents, a 60fps desktop with Chromium, real keys kept outside, and hosting on many ports in the EU. Compare it one to one: bochka vs Morph Cloud and bochka vs Upstash Box.
Questions people ask
Is Morph Cloud cheaper than Upstash Box?
Usually not. Upstash costs less for one agent on workdays, one that never stops ($21 a month against $121 on Morph) and sandboxes for your users. Morph costs less for 1,000 short jobs at once, $869 a month against $1,822.
Which is faster, Morph Cloud or Upstash Box?
Neither has a result in the hpc-sandbox-benchmarks CPU test, so there is no fair comparison. bochka did 26.69 runs per second on that test at 4 vCPU / 8 GB.
Can Upstash Box run Docker?
Its docs do not offer it: each box is itself a Docker container, and custom images are listed as coming soon. Morph Cloud and bochka are full VMs where Docker runs inside.
Can I run Claude Code on each?
Yes. Upstash builds in Claude Code, Codex and OpenCode with run and stream APIs. On Morph you install the agent and drive it through a tmux API. bochka preinstalls them with a prompt, steer and events API.
Do they have a desktop for computer use?
Morph has a browser-based remote desktop, but you install the browser and any computer use agent yourself. Upstash has a headless Chromium and no desktop. bochka streams a 60fps Linux desktop with Chromium and a computer use API.
Can either keep a machine's memory between runs?
Morph can pause a VM with its memory and branch it into many running copies. Upstash snapshots only the filesystem, so a new box starts its processes again.
Try bochka
Install the CLI, then run bochka new.
Product preview