Blaxel vs Upstash Box

Blaxel gives each sandbox a Firecracker microVM with its own kernel that sleeps in seconds and wakes in under 25 ms with its memory and processes. Upstash Box gives each agent a Docker container with a coding agent built in, billed only for the CPU it uses.

The companies and products

Blaxel

Blaxel is a San Francisco company that runs cloud infrastructure for AI agents, and since September 2026 it is part of Baseten.

You get sandboxes, batch jobs, MCP server hosting and a model gateway. Each sandbox is a Firecracker microVM with its own kernel that drops to standby when nothing is connected and resumes in under 25 ms with its memory and running processes. It is built for agent products that start many sandboxes and want them asleep most of the time.

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. “10th cheapest of 367” means 9 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 workloadBlaxel: price rankUpstash Box: price rankbochka: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
Blaxel fits a software factory because it runs Docker inside its microVMs, while an Upstash box is itself a container with no Docker inside; bochka adds /dev/kvm and a real disk.
10th cheapest of 367
$2,373 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
12th cheapest of 366
$2,832 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 suit short code runs: Blaxel sleeps seconds after the last connection and Upstash charges no CPU while a box is idle, while bochka is not built for this.
14th cheapest of 345
$144 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
Upstash allows 1,000 boxes at once on Pay as You Go, while Blaxel's public tiers stop at 200 at once, and bochka fits 300 users on a self-serve plan.
101st of 361, with limits
$926 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
77th of 360, with limits
$4,378 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
Upstash fits evals with up to 1,000 boxes at once, while Blaxel's public tiers cap at 200 and bochka starts a fresh VM per task from a snapshot.
136th of 364, with limits
$704 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 images need Docker, which Blaxel and bochka run inside the sandbox and Upstash does not.
57th cheapest of 377
$431 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 makes a light dev box, Blaxel has no native SSH, and bochka is a full VM you SSH into.
265th of 368, with limits
$114 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
Blaxel and bochka both run a desktop for computer use, while Upstash offers only a headless Chromium with no desktop.
14th cheapest of 369
$634 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
16th cheapest of 367
$317 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
16th cheapest of 346
$215 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
147th of 338, with limits
$4,292 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
Blaxel and bochka both fit parallel red teaming, while an Upstash box fits only as a compromise, and Blaxel adds domain-level egress rules on the provider side.
3rd cheapest of 360
$217 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

FeatureBlaxelUpstash Boxbochka
IsolationFirecracker microVM, own kernelDocker container per box on AWSFull VM, own kernel, on dedicated AMD Ryzen 9 9950X hosts
Docker insideYes, with a Docker-in-sandbox imageNot documented; the box is itself a Docker containerYes, Docker and systemd run as on any Linux server
Nested virtualizationNo: Firecracker guests do not get /dev/kvmNo; boxes are containersYes: /dev/kvm, so Android emulators and VMs run inside
Sleep and wakeStandby a few seconds after the last connection, wakes in under 25 ms with memory and processesPauses when idle and keeps its files; a request to its URL wakes itStop keeps the disk and costs nothing; resume boots the VM again
ForkFork with memory and running processes (private preview)Snapshot a running box and start many new boxes from itFork a running sandbox with its disk
DiskFiles live in memory (about half the RAM); one block volume can be attached at creation5, 10 or 20 GB by size, billed per GB-month50 GB at the default 4 vCPU / 8 GB size, saved every minute and on stop
ImagesCustom images built from Docker imagesCustom images listed as coming soon; reuse environments with snapshotsTemplates from named snapshots, shareable by code
Shell accessRoot, terminal through bl connect, no native SSHSSH through a gatewayReal SSH, root and systemd
Desktop and browserDesktop and browser for computer useManaged headless Chromium with AI page actions and CDP; no desktopLinux desktop streamed at 60fps, Chromium and computer-use tools
Inbound trafficPreview URL per port, public or token-protected; no raw TCPHTTPS URL per port, public unless you add a token or basic auth; no raw TCPHTTPS URLs for up to 50 ports, token-protected by default; raw TCP
Outbound rulesDomain allow and deny lists, method and path rules, static egress IPsAllow or deny by domain and CIDR, changeable on a running boxOpen internet; filter inside the VM with nftables
Coding agentsClaude Code image you drive from its terminal or your own harnessClaude Code, Codex and OpenCode built in, with run and stream APIs, webhooks and scheduled promptsClaude Code, Codex, OpenCode, pi and more, driven by a prompt, steer and events API
Keeping API keys outProxy fills secrets into outbound HTTPS requests (public preview)Host proxy injects headers into outbound HTTPS, set when the box is createdCredentials proxy for model providers and any HTTPS API; switch to another account when credits run out
RegionsUS (Oregon, North Virginia), London, FrankfurtUS only (AWS us-east-1)EU only: Germany, Finland, France
Every feature Battleships tracks (43)
FeatureBlaxelUpstash Boxbochka
Full VM (own kernel)YesNoYes
Docker insideYesNoYes
Nested virtualizationNoNoYes
RootYesNot publishedYes
SystemdNoNot publishedYes
Desktop GUIYesNoYes
BrowserYesYesYes
Computer-use APIYesNoYes
SSHNoYesYes
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-stopYesYesNo
Wake on requestYesYesNo
HTTPS preview URLsYesYesYes
Raw TCP inboundNoNoYes
Public IPv4NoNoNo
Egress allowlistYesYesNo
Secret proxyYesYesYes
Secret proxy for any APIYesYesYes
Preinstalled agentsYesYesYes
Agent harness APINoYesYes
MCP serverYesYesNo
GPUNoNoNo
WindowsNoNoNo
Arm64NoYesNo
Self-hostingNoNoNo
BYOCYesNoNo
Open sourceNoNoNo
Scoped API keysYesNot publishedYes
Spend limitsNoNot publishedYes
Usage per sandbox (API)YesYesYes
Audit logsNot publishedNot publishedNo
SSOYesNoNo
SOC 2YesYesNo
HIPAAYesNoNo
EU data residencyYesNoYes
Zero data retentionYesNot publishedYes

Performance

Blaxel19.48 runs/s
Upstash BoxNot measured
bochka26.69 runs/s

On the hpc-sandbox-benchmarks Node.js build-and-test loop at 4 vCPU / 8 GB, run on September 29, 2026, bochka did 26.69 runs per second and Blaxel 19.48, so bochka got through about 1.4 times the work. Upstash Box has no result in that test, so there is no comparable measurement for it. Higher is better.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Blaxel measured on: Sandbox (active time, RAM-only pricing, CPU bundled). Upstash Box has 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.

ScenarioBlaxel, a monthUpstash Box, a monthbochka, 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
$33 · Pay-as-you-go Tier 1$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
$120 · Pay-as-you-go Tier 1$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,489 · Pay-as-you-go Tier 1$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
$396 · Pay-as-you-go Tier 2 · 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
$876 · Pay-as-you-go Tier 2 · with limits$1,822 · Pay as You Go$2,000 · $2000/mo · with limits

Blaxel: Blaxel charges for allocated RAM per second while a sandbox has an open connection, with CPU included (8 GB comes with 4 cores). In standby you pay only snapshot storage, and volumes are billed on their full size.

Upstash Box: Upstash bills the CPU a box 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.

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

Limits in those scenarios

Blaxel's self-serve tiers allow 10, 50 or 200 sandboxes at once, standby ones included, so the 300-user and 1,000-job scenarios need a sales tier, and Tiers 0 and 1 delete sandboxes after 7 or 30 days. Upstash runs 1,000 boxes at once but has no Docker inside, so the 50-agent scenario does not fit there, and its egress price is not published. bochka limits how many machines start per minute, so 1,000 jobs at the same moment get queued.

ScenarioBlaxelUpstash Boxbochka
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 stopsNone that bite
  • flat pool: the tier is billed whether used or not
  • egress price not published
None that bite
50 agents in parallelNone that bite
  • missing Docker inside
  • flat pool: the tier is billed whether used or not
  • egress price not published
None that bite
Sandboxes for your users
  • Pay-as-you-go Tier 2: max 200 concurrent
  • egress price not published
None that bite
1,000 short jobs at once
  • Pay-as-you-go Tier 2: max 200 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 Blaxel when

your sandboxes sit idle most of the time and must wake in milliseconds with their memory, need Docker inside, or must run in the US or Europe.

  • Wakes in milliseconds with memory. For sandboxes that sit idle, Blaxel sleeps seconds after the last connection and wakes in under 25 ms with processes still running.
  • Docker inside a real kernel. Each sandbox is a microVM with its own kernel, so Docker runs inside, which an Upstash box does not offer.
  • US and Europe. Blaxel runs in Oregon, North Virginia, London and Frankfurt, while Upstash Box runs only in AWS us-east-1.

Use Upstash Box when

your agents mostly wait, you want to pay only for CPU used, you need up to 1,000 boxes at once, and a container without Docker is enough.

  • Pay only for CPU used. For agents that wait a lot, an idle Upstash box costs no CPU and RAM is never billed.
  • 1,000 boxes at once. Pay as You Go allows 1,000 boxes at once by default, where Blaxel's public tiers stop at 200.
  • Agents with an API built in. Claude Code, Codex and OpenCode come built in, with run and stream APIs, webhooks and scheduled prompts.

Where bochka fits

Both Blaxel and Upstash Box are built around sandboxes that sleep most of the time. If your agents work for hours on builds, tests, Docker and emulators, bochka gives each one a whole Linux machine with a real disk that stays. It also measured the fastest CPU of the three on our benchmark.

A whole machine with /dev/kvm

Neither Blaxel's Firecracker guests nor Upstash's containers get /dev/kvm, so an Android emulator or a nested VM does not start. Upstash also has no Docker inside, so the 50-agent scenario does not fit there.

A disk that stays, and room to grow

Blaxel keeps files in memory, about half the RAM, unless you attach a volume at creation. Upstash stops at 20 GB. bochka gives 50 GB at 4 vCPU / 8 GB, saved every minute, and stops cost nothing.

A faster CPU and a desktop to watch

bochka ran 26.69 runs per second against Blaxel's 19.48 on the same test, so builds wait less. Upstash has only a headless browser, while bochka streams a 60fps desktop you can embed.

Use bochka when your agents do real work for hours: builds, tests, Docker and emulators on a whole Linux machine with a real disk, a faster CPU, a 60fps desktop and agents built in. Compare it one to one: bochka vs Blaxel and bochka vs Upstash Box.

Questions people ask

Is Blaxel cheaper than Upstash Box?

Mostly no. For one coding agent on workdays Upstash is $21 against $33, and for one agent that never stops $21 against $120. For 1,000 short jobs at once Blaxel is cheaper, $876 against $1,822, but Blaxel's self-serve tiers cap at 200 at once, so that scenario needs a sales tier.

Which is faster, Blaxel or Upstash Box?

Blaxel did 19.48 runs per second on the hpc-sandbox-benchmarks Node.js test at 4 vCPU / 8 GB, and Upstash Box has no result there, so they cannot be compared directly. bochka did 26.69 on the same test.

Can Blaxel or Upstash Box run Docker?

Blaxel can, with its Docker-in-sandbox image. Upstash's docs do not offer Docker inside a box, since each box is itself a Docker container. bochka runs Docker and systemd in every sandbox.

Is Upstash Box a VM like Blaxel?

No. Blaxel gives each sandbox a Firecracker microVM with its own kernel, while Upstash gives each box a Docker container. bochka is a full VM with its own kernel and /dev/kvm.

Do Blaxel and Upstash Box keep memory when they sleep?

Blaxel saves memory and running processes in standby and resumes in under 25 ms. Upstash pauses an idle box and keeps its files, and a request to its URL wakes it.

Where do Blaxel and Upstash Box run?

Blaxel runs in Oregon, North Virginia, London and Frankfurt. Upstash Box runs only in AWS us-east-1. bochka runs in the EU, in Germany, Finland and France.

Try bochka

Install the CLI, then run bochka new.

Product preview

More comparisons

Bochka product preview · Pricing, benchmarks and commands are illustrative. Sandbox provisioning is not connected.