Morph Cloud vs Unikraft Cloud
Morph Cloud gives each agent a full Linux VM with Docker that you can snapshot and branch with its memory, billed by the hour. Unikraft Cloud turns a Dockerfile into a tiny microVM that wakes in milliseconds and sleeps when traffic stops, sold as flat monthly pools of running capacity.
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
Unikraft Cloud
Unikraft Cloud is a microVM cloud from Unikraft Inc. that runs any Dockerfile-based workload as a minimal Linux microVM with millisecond cold starts and scale-to-zero.
Your Dockerfile becomes the VM image at build time, and each instance runs on a heavily customized Firecracker VMM, so it boots in milliseconds and can go into standby when no traffic arrives. It is a general compute platform built for dense, bursty work such as HTTP services, headless browsers and agent fleets, sold as flat self-serve plans plus Enterprise dedicated hosts, on-prem and bring your own cloud. It is not a dev machine you log into: instances are reached through services, the CLI and a sandbox plugin for commands and files.
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 | Unikraft Cloud: 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 runs Docker and test suites inside the sandbox, which Morph supports and Unikraft does not document; bochka adds preinstalled coding agents you drive by API. | 198th of 367, with limits $2,288 a month | Can't run it | 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 | Can't run it | 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 Morph fits short code runs well because a paused machine keeps its memory and wakes on the next request; Unikraft is built for this shape too, but it is not ranked here because it publishes no per-hour rate and its self-serve pools cap running capacity. | 16th cheapest of 345 $154 a month | Can't run it | 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 Morph fits with pause and wake on request per user; Unikraft Pro holds 5,000 sleeping instances but only 24 running ones, so hundreds of active users need an Enterprise contract. | 12th cheapest of 361 $905 a month | Can't run it | 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; Unikraft has checkpoints, but its self-serve pools are too small for a big rollout fleet. | 86th of 360, with limits $4,847 a month | Can't run it | 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 | Can't run it | 10th cheapest of 364 $200 a month |
| CI runners 40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month Morph sells managed GitHub Actions runners; on Unikraft, nested virtualization is Enterprise only, and bochka gives /dev/kvm on every plan for your own runner. | 39th cheapest of 377 $355 a month | Can't run it | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB This is the only use case where Unikraft is ranked: its $39 Team pool is cheaper than Morph at $116 a month, but it has no SSH and no Docker inside, while bochka costs $26 for a full machine. | 85th cheapest of 368 $116 a month | 219th of 368, with limits $39 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 Morph nor Unikraft ships a browser or computer use API, so you build the desktop yourself; bochka streams one at 60fps with Chromium. | 182nd of 369, with limits $595 a month | Can't run it | 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 On Morph you run headless Chrome yourself in Docker, and on Unikraft you build it into your image; bochka has Chromium ready on its desktop. | 214th of 367, with limits $250 a month | Can't run it | 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 | Can't run it | 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 | Can't run it | 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 | Can't run it | 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 | Unikraft Cloud | bochka |
|---|---|---|---|
| Isolation | Full VM with its own kernel | Minimal Linux microVM on a customized Firecracker VMM; full VMs on Enterprise | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Self-serve capacity | Account pools of 64 vCPU on Developer, 256 on Team and 1,024 on Scale | Plan pools shared by all running instances: 2 vCPU / 4 GiB, 8 vCPU / 8 GiB or 24 vCPU / 32 GiB | 100 to 2,000 sandboxes at once on paid plans, up to 16 vCPU / 32 GB each |
| Docker and systemd inside | Yes, including Docker in Docker and local Kubernetes | Runs as root; the Dockerfile becomes the VM image, with no container runtime inside documented | Yes, Docker, systemd and root, like any Ubuntu machine |
| Nested virtualization | Experimental | Enterprise only, with a per-instance flag and permission | Yes, /dev/kvm for Android emulators and VMs on every plan |
| SSH | Yes, through Morph's gateway | Not yet; commands and files go through the sandbox plugin and CLI | Yes, into every sandbox |
| Idle and saving work | Pause keeps memory and bills only the snapshot; a plain stop deletes the instance | Standby after a 1 second idle cooldown by default; stateful mode snapshots memory, and sleeping instances do not count toward the pool | Disk saved every minute and on every stop; a stopped sandbox is free and boots again on start |
| Wake on request | Yes; a paused VM resumes on the next HTTP request, SSH or exec call | Yes; incoming traffic wakes a sleeping instance in milliseconds | No; a stopped sandbox is started by API |
| Fork a running machine | Branch with its memory, as many copies as you ask for, in under 250 ms | Checkpoint memory and volumes with a pause of a few milliseconds, then start new instances from it; forking is in preview | Fork a running sandbox with its disk |
| Desktop and browser | Browser-based remote desktop; you install the browser and any computer use agent yourself | None built in; you can run your own headless browser from a Dockerfile | 60fps Linux desktop with Chromium and a computer use API |
| Coding agents | You install the agent, then drive it through a tmux API that sends keys and reads the screen | None preinstalled; you bring the agent in your own image | Seven agents preinstalled, with a prompt, steer and events API |
| Keeping API keys out of the sandbox | Responses Proxy for model APIs; other secrets are handed to the machine | Network shield can inject secrets into traffic, Enterprise only, limited access | Credentials proxy for model providers and any HTTPS API on every plan; switch a credential to another account when credits run out |
| Inbound access | Named HTTP services with optional API key auth; no raw TCP | Services on its load balancer: HTTP on 80, HTTPS on 443, TLS-wrapped TCP on other ports; no public IP per instance | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6 |
| Other systems and hardware | Experimental Windows and macOS (x86) guests | GPUs, arm64, dedicated hosts, on-prem and your own cloud on Enterprise | Linux only; no GPUs, arm64 or self-hosting |
| Regions | Not published | Dallas, Frankfurt, San Francisco, Singapore and Washington DC, more on request | EU only (Germany, Finland, France), with zero data retention |
Every feature Battleships tracks (43)
| Feature | Morph Cloud | Unikraft Cloud | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | No | Yes |
| Nested virtualization | Yes | Yes | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Yes | Not published | Yes |
| Desktop GUI | Yes | No | Yes |
| Browser | No | No | Yes |
| Computer-use API | No | No | Yes |
| SSH | Yes | No | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | Yes | Yes | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | Yes | Yes | 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 | Not published | 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 | No | Yes |
| Agent harness API | Yes | No | Yes |
| MCP server | No | No | No |
| GPU | No | Yes | No |
| Windows | Yes | No | No |
| Arm64 | No | Yes | No |
| Self-hosting | No | Yes | No |
| BYOC | No | Yes | 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 | No | Yes |
| Audit logs | Yes | Yes | No |
| SSO | Not published | No | No |
| SOC 2 | Not published | Yes | No |
| HIPAA | Not published | Yes | No |
| EU data residency | Not published | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
There is no comparable CPU measurement for Morph Cloud or Unikraft Cloud: neither is in the hpc-sandbox-benchmarks run. bochka did 26.69 runs per second on that Node.js build-and-test loop at 4 vCPU / 8 GB. Morph's under 250 ms snapshot restore and Unikraft's under 10 ms cold start are their own figures and measure 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 Unikraft Cloud 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 | Unikraft Cloud, 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 | $39 · Hobby | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $121 · Team | $39 · Hobby | $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 | Can't run it | $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 | Can't run it | $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 | Can't run it | $2,000 · $2000/mo · with limits |
Morph Cloud: Morph bills MCUs at $0.05 each: per hour, a machine uses the largest of its vCPUs, its RAM in 4 GiB steps or its disk in 16 GiB steps. Team and Scale are prepaid MCU bundles at a discount, and a paused VM bills only its snapshot storage.
Unikraft Cloud: Unikraft charges a flat monthly fee for a pool of running capacity: free for 2 vCPU / 4 GiB, $39 for 8 vCPU / 8 GiB, $199 for 24 vCPU / 32 GiB. It publishes no per-hour rate, so anything bigger is an Enterprise quote.
Unikraft Cloud: 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
Unikraft's Team pool has 8 vCPU and 8 GiB in total, so one 4 vCPU / 8 GB agent fills it, and the 50-agent, user-sandbox and burst scenarios fit no self-serve plan. Morph fits all five scenarios, but it prices each machine by its largest resource, so disk beyond 16 GiB per MCU raises the bill, and neither publishes egress prices. bochka has no session cap, but at 1,000 short jobs at once its $2,000 plan queues starts, while Morph Scale fits.
| Scenario | Morph Cloud | Unikraft Cloud | 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 run as a fleet sized by the hour without a sales call.
- Branch a running VM with its memory. For agents that fan out from one running state: Morph copies a VM with its memory into many branches in under 250 ms.
- A full machine with Docker, sized by the hour. Each Morph VM runs Docker and Kubernetes inside, and account pools reach 1,024 vCPU on the Scale plan.
- Managed CI runners and other guests. Morph also sells GitHub Actions runners and lists experimental Windows and macOS guests for agents that need them.
Use Unikraft Cloud when
you run many small services or headless browsers that sleep most of the time and must wake in milliseconds, want a flat monthly bill, or need US or Asia regions.
- Millisecond starts and scale-to-zero. For many small services that sleep most of the time and must answer the next request in milliseconds.
- A flat monthly bill. Unikraft charges one fee for a pool of running capacity, and sleeping instances do not count against it.
- Regions and hardware options. Unikraft runs in the US, Frankfurt and Singapore, and Enterprise adds GPUs, arm64, on-prem or your own cloud.
Where bochka fits
Morph and Unikraft both give you a VM and leave the agent setup to you. If what you are really running is coding or computer use agents, bochka gives each one a full machine with the agents, the desktop and the key handling already inside, and runs fleets of them on self-serve plans.
Agents you drive from outside
On Morph you install the agent and steer it through tmux by sending keys and reading the screen; on Unikraft you bake it into the image. bochka ships seven coding agents with a prompt, steer and events API.
Real keys stay outside the machine
Morph's Responses Proxy covers model APIs only, and Unikraft's secret injection is Enterprise only. Elsewhere the keys sit inside a machine the agent controls. bochka's proxy covers any HTTPS API on every plan.
A whole machine with a desktop
Unikraft has no SSH, no documented Docker inside and nested virtualization only on Enterprise, and neither ships a browser. bochka gives Docker, systemd, /dev/kvm, SSH and a 60fps desktop with Chromium on every plan.
Use bochka when your agents need a real machine that arrives ready: coding agents you drive from outside, a desktop with Chromium, real keys kept outside, Docker and /dev/kvm, and fleets without a sales call. Compare it one to one: bochka vs Morph Cloud and bochka vs Unikraft Cloud.
Questions people ask
Is Morph Cloud cheaper than Unikraft Cloud?
It depends on the shape. One coding agent on workdays costs $32 a month on Morph against $39 for Unikraft's Team pool, but an agent that never stops costs $121 on Morph and still $39 on Unikraft. For 50 agents, sandboxes for your users or 1,000 short jobs, no self-serve Unikraft plan is big enough.
Which is faster, Morph Cloud or Unikraft Cloud?
Neither has a comparable CPU measurement. For starting, Unikraft says its microVMs cold boot in under 10 ms, and Morph says it restores a snapshot in under 250 ms; both wake a sleeping machine on the next request.
Can I run Docker inside Morph Cloud or Unikraft Cloud?
On Morph, yes: each VM runs Docker, Docker in Docker and local Kubernetes. Unikraft uses your Dockerfile to build the VM's filesystem, and its docs do not describe running a container runtime inside a running instance.
Can I SSH into them?
Morph gives SSH through its gateway. Unikraft has announced SSH as coming soon, and today you run commands and move files through its sandbox plugin and CLI.
Can both fork a running machine?
Morph branches a running VM with its memory into many copies in under 250 ms. Unikraft can checkpoint a running microVM's memory and volumes and start new instances from it, and its forking is in preview. bochka forks a running sandbox with its disk.
How does bochka compare to Morph Cloud and Unikraft Cloud?
bochka is a full VM like Morph, with Docker, systemd and /dev/kvm on every plan, plus seven preinstalled coding agents, a 60fps desktop with Chromium and a credentials proxy for any HTTPS API. It does not keep memory when it stops or wake on request, and it runs only in the EU.
Try bochka
Install the CLI, then run bochka new.
Product preview