Upstash Box vs Islo
Both give a coding agent its own computer in the cloud. Upstash Box runs each agent in a light container that costs no CPU while idle, while Islo runs each one in a microVM with its own kernel, Docker inside and a gateway that controls and logs every outbound call.
The companies and products
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.
Islo
Islo is an agent sandbox from Incredibuild: each coding agent gets its own microVM, with network rules and credentials handled at a gateway.
An Islo sandbox is a Linux microVM with its own kernel, built from a container image, with Claude Code, Cursor CLI and Codex preinstalled. Outbound traffic can pass through a gateway that allows or blocks hosts, injects credentials and logs every request. It is built for teams that run coding agents, evals and RL rollouts in the background, on Islo's cloud or in their own cloud account.
- Launched
- May 4, 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. “10th cheapest of 345” means 9 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 | Upstash Box: price rank | Islo: 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: Islo runs it inside its microVMs, an Upstash box is itself a container and does not, and bochka adds /dev/kvm and a desktop. | 61st of 367, with limits $464 a month | 326th of 367, with limits $7,402 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB Both keep an agent around for weeks; Islo pauses an idle one with its memory and wakes it on the next request, while Upstash offers a flat-price keep-alive box. | 103rd of 366, with limits $475 a month | 30th cheapest of 366 $9,928 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 well, since an idle box costs no CPU and RAM is not billed, while Islo bills cores, memory and disk for as long as a sandbox runs. | 10th cheapest of 345 $119 a month | 153rd of 345, with limits $503 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 Upstash allows 1,000 boxes at once and wakes a user's paused box on the next request; Islo's Team plan is reported at 50 running sandboxes, so 300 users at once needs a custom limit. | 2nd cheapest of 361 $222 a month | 171st of 361, with limits $3,160 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 | 352nd of 360, with limits $8,068 a month | 167th of 360, with limits $15,265 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 Islo has a built-in Harbor integration and gateway rules that stop trials from looking up answers; bochka runs evals on more sandboxes at once. | 52nd cheapest of 364 $1,011 a month | 198th of 364, with limits $2,456 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 | 120th cheapest of 377 $1,520 a month | 119th cheapest of 377 $1,507 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB A flat-price keep-alive box makes Upstash a cheap light dev box; Islo gives a heavier microVM with Docker, and bochka a full VM with root and a 50 GB disk. | 10th cheapest of 368 $20 a month | 112th cheapest of 368 $402 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 has a desktop: Upstash offers a headless Chromium and Islo a browser for tests, while bochka streams a full Linux desktop at 60fps. | 73rd of 369, with limits $76 a month | 310th of 369, with limits $2,210 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 and CDP, Islo a browser inside the sandbox for testing; bochka gives the agent a visible desktop browser. | 49th of 367, with limits $38 a month | 113th of 367, with limits $1,105 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 | 37th cheapest of 346 $400 a month | 66th cheapest of 346 $748 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 | 200th of 338, with limits $8,000 a month | 265th of 338, with limits $14,966 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 | 225th of 360, with limits $259 a month | 47th of 360, with limits $746 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 | Upstash Box | Islo | bochka |
|---|---|---|---|
| Isolation | One Docker container per box on AWS | A microVM with its own kernel per sandbox | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Docker inside | Not documented; the box is itself a Docker container, and custom images are listed as coming soon | Yes, Docker inside and sudo, built from your container image | Yes, Docker, root and systemd as on any Linux server |
| Nested virtualization | No; containers with no VM support documented | No /dev/kvm or nested virtualization documented | Yes, /dev/kvm for Android emulators and VMs |
| Idle billing | Only CPU actually used is billed, RAM is free; storage bills while paused | Cores, memory and disk bill while running until a pause-after-idle timer fires, set only at creation | Per second while running; a stopped sandbox costs nothing and keeps its disk |
| Pause and resume | Pauses itself when idle and keeps its files | Pause keeps files, processes and memory; resumes on the next exec, file access or webhook | Disk saved every minute and on stop; a resumed sandbox reboots from disk |
| Fork | Snapshot a running box and start many new boxes from it | Snapshot a running sandbox's files, then start new sandboxes from it | Fork a running sandbox with its disk |
| Desktop and browser | Managed headless Chromium with AI page actions and CDP; no desktop | A browser inside the sandbox for testing; no desktop or computer-use API | Linux desktop streamed at 60fps, Chromium and computer-use tools |
| Inbound access | HTTPS URL per port, public unless you add a token or basic auth; SSH through a gateway; no raw TCP | HTTPS share links anyone with the URL can open, expiring after 24 hours by default; SSH through the CLI; no raw TCP | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP |
| Outbound rules | Allow all, deny all, or allow and deny by domain and CIDR, changeable on a running box | Gateway rules by host, path and HTTP method, default deny, rate limits, and a log of every request | Open internet, no provider-side allowlist |
| Keeping API keys out of the sandbox | Host proxy injects headers into outbound HTTPS on port 443, set when the box is created | Gateway injects stored credentials into outbound requests for any host | Credentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out |
| Coding agents | Claude Code, Codex and OpenCode built in, with run and stream APIs, webhooks and scheduled prompts | Claude Code, Cursor CLI and Codex preinstalled; factory lines run agent steps on a schedule, webhook or GitHub, Slack and Linear events | Claude Code, Codex, OpenCode and more preinstalled, with a prompt, steer and events API |
| Sandboxes at once | 10 on Free, 1,000 on Pay as You Go, raised on request | 5 on Free and 50 on Team per launch coverage; paused ones do not count | 100 to 2,000 running sandboxes by plan, raised by adding seats |
| Machine size | Up to 8 vCPU / 16 GB, with 5, 10 or 20 GB of disk by size | Cores, memory and disk set per sandbox | Up to 16 vCPU / 32 GB on the $100 plan and above; 50 GB disk at 4 vCPU / 8 GB |
| Where it runs | AWS us-east-1 only | US West, or inside your own cloud account with BYOC | EU only: Germany, Finland, France, with EU data residency |
Every feature Battleships tracks (43)
| Feature | Upstash Box | Islo | bochka |
|---|---|---|---|
| Full VM (own kernel) | No | Yes | Yes |
| Docker inside | No | Yes | Yes |
| Nested virtualization | No | No | Yes |
| Root | Not published | Yes | Yes |
| Systemd | Not published | Not published | Yes |
| Desktop GUI | No | No | Yes |
| Browser | Yes | Yes | Yes |
| Computer-use API | No | No | Yes |
| SSH | Yes | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | No | Yes | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | No | 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 | Yes | Yes | No |
| Secret proxy | Yes | Yes | Yes |
| Secret proxy for any API | Yes | Yes | Yes |
| Preinstalled agents | Yes | Yes | Yes |
| Agent harness API | Yes | Yes | Yes |
| MCP server | Yes | No | No |
| GPU | No | No | No |
| Windows | No | No | No |
| Arm64 | Yes | No | No |
| Self-hosting | No | No | No |
| BYOC | No | Yes | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | Not published | Not published | Yes |
| Usage per sandbox (API) | Yes | Yes | Yes |
| Audit logs | Not published | Yes | No |
| SSO | No | Yes | No |
| SOC 2 | Yes | Not published | No |
| HIPAA | No | Not published | No |
| EU data residency | No | No | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
There is no comparable measurement for either: neither Upstash Box nor Islo has a result in StarSling's hpc-sandbox-benchmarks CPU test. bochka did 26.69 Node.js build-and-test runs per second 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. Upstash Box and Islo 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 | Upstash Box, a month | Islo, 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 | $21 · Pay as You Go | $101 · Free | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $21 · Pay as You Go | $420 · Free | $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 | $900 · Pay as You Go · with limits | $4,863 · Team | $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 | $306 · Pay as You Go | $1,382 · Team · with limits | $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,822 · Pay as You Go | $3,053 · Team · with limits | $2,000 · $2000/mo · with limits |
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.
Islo: Islo bills each CPU core and each GB of memory and disk while a sandbox runs, with no plan fee. An idle sandbox keeps billing until its pause-after-idle timer fires, and egress has no published price.
Islo: Plans start at $20 a month, and the whole fee becomes usage credit spent per second on running sandboxes. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
Upstash has no Docker inside a box, so the 50-agent scenario does not fit there, and disks stop at 20 GB. Islo's Team plan is reported at 50 running sandboxes at once, so 300 sandboxes for your users and 1,000 short jobs at once do not fit it without a custom contract. Neither publishes an egress price. bochka's limit is start rate, so the 1,000-job burst is queued even on the $2,000 plan.
| Scenario | Upstash Box | Islo | 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 Upstash Box when
your agents mostly wait, need to wake on an incoming request, run in large numbers of light boxes, and do not need Docker.
- Idle costs no CPU. Good for agents that wait a lot: Upstash bills only the CPU a box uses, and RAM is free.
- Wake on request at scale. Suits user-facing agents: a request to a box's URL wakes it, and 1,000 boxes can run at once.
- Flat-price boxes that stay on. For one agent that never stops, a keep-alive box costs a flat monthly price with CPU and storage included.
Use Islo when
your agents need Docker inside a VM, strict egress rules with a log of every call, pause with memory, or your own cloud account.
- Docker inside a real VM. For agents that run databases or build images: each Islo sandbox is a microVM with its own kernel and Docker.
- Egress rules and request logs. For teams that must control what agents reach: rules by host, path and method, with every call logged.
- Pause with memory, or your own cloud. Pauses an idle agent with its memory and wakes it on request, and can run inside your own cloud account.
Where bochka fits
If your agents need more than a shell, look at bochka. It gives each one a full VM with Docker, /dev/kvm and a desktop it can see, ports you can host on, and up to 2,000 sandboxes at once, in the EU.
A whole machine with /dev/kvm
Upstash boxes have no Docker inside, so the 50-agent scenario does not fit there. Islo has Docker but no /dev/kvm, so Android emulators and tools that start their own VMs stop at boot.
A desktop the agent can see
Both are headless: Upstash has a CDP browser and Islo a browser for tests. A computer-use agent needs a screen, and on Islo you would build a VNC stack into each image yourself.
Ports you can host on
Upstash URLs are public unless you add a token, and Islo share links expire after 24 hours by default. Neither offers raw TCP. bochka serves 50 HTTPS ports with tokens, plus raw TCP.
Use bochka when your agents need a real machine: Docker and /dev/kvm, a desktop they can see, ports you can host on, and up to 2,000 sandboxes at once in the EU. Compare it one to one: bochka vs Upstash Box and bochka vs Islo.
Questions people ask
Is Upstash Box cheaper than Islo?
In every scenario we priced, yes: one coding agent on workdays comes to $21 a month on Upstash and $101 on Islo, and one agent running all month to $21 against $420. But the 50-agent scenario does not fit Upstash at all, since it has no Docker inside.
Which is faster, Upstash Box or Islo?
There is no comparable measurement: neither has a result in StarSling's public CPU benchmark. bochka did 26.69 runs per second on that test at 4 vCPU / 8 GB.
Can Upstash Box or Islo run Docker?
Islo can: each sandbox is a microVM with Docker inside and sudo. Upstash Box does not offer it, since each box is itself a Docker container. bochka runs Docker, systemd and /dev/kvm on every sandbox.
Are they containers or VMs?
Upstash Box runs each box as a Docker container. Islo runs each sandbox as a microVM with its own kernel, built from a container image. bochka gives every sandbox a full VM.
Can I limit what an agent reaches on the internet?
On both. Upstash allows or denies by domain and CIDR range, and you can change it on a running box. Islo's gateway goes further, with rules by host, path and HTTP method and a log of every request. bochka has open internet with no provider-side allowlist.
Where do Upstash Box and Islo run?
Upstash Box runs in AWS us-east-1. Islo runs in US West, or inside your own cloud account with BYOC. bochka runs only in the EU, in Germany, Finland and France.
Try bochka
Install the CLI, then run bochka new.
Product preview