Fly.io Machines vs Claude Managed Agents
Fly.io Machines are fast-starting microVMs that boot your own image in 17 regions, so you build the sandbox and the agent loop yourself. Claude Managed Agents is Anthropic's hosted agent: you send a task as events, and Claude works in a small container that Anthropic runs for you.
The companies and products
Fly.io Machines
Fly.io is an app hosting platform, and Machines are the microVMs underneath it that you can also start and stop through a REST API.
A Fly Machine boots your Docker image as a Firecracker microVM on Fly's own servers, in one of 17 regions. You pick a shared or performance CPU preset, attach at most one Volume for data that must last, and Fly Proxy can stop, suspend and wake Machines as traffic comes and goes. It is built for teams that host web apps and services worldwide; it is not a sandbox product, so this page compares the parts that overlap with agent work.
Claude Managed Agents
Claude Managed Agents is Anthropic's ready-made agent harness: Claude runs as an autonomous agent in a cloud sandbox that Anthropic manages, and you talk to it through an events API.
This is an agent platform, not a sandbox you rent. You define an agent (model, prompt, tools, MCP servers, skills) and an environment, then start sessions, send messages as events and stream back what Claude does; the harness handles tool calls, prompt caching and compaction. Each session gets its own Ubuntu container, or runs its tools on a worker you host yourself. It is built for teams that want Claude doing long tasks without building their own agent loop or sandbox.
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. “92nd cheapest of 367” means 91 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 workload | Fly.io Machines: price rank | Claude Managed Agents: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Fly gives a coding agent a microVM with root but a root disk that resets on restart, Managed Agents gives a container with up to 8 GB of memory, and bochka fits fully with Docker, /dev/kvm and a desktop. | 92nd of 367, with limits $836 a month | 106th of 367, with limits $964 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB Managed Agents sleeps idle sessions for free but keeps sandbox state only 30 days after creation; Fly keeps only what sits on one Volume; bochka keeps the whole disk. | 125th of 366, with limits $816 a month | 219th of 366, with limits $2,511 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 beat bochka for short bursts: Fly bills per second with no plan fee, and Managed Agents bills runtime only while the agent is working. | 75th of 345, with limits $94 a month | 163rd of 345, with limits $756 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 Fly can host one VM per user with public HTTPS, while a Managed Agents sandbox has no inbound ports; bochka gives each sandbox HTTPS URLs on up to 50 ports. | 69th of 361, with limits $600 a month | 231st of 361, with limits $823 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 Fly ranks well above Managed Agents here thanks to per-second billing with no plan fee, but Fly's API creates about one Machine per second per app. | 48th of 360, with limits $2,838 a month | 252nd of 360, with limits $3,978 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 | 117th of 364, with limits $457 a month | 244th of 364, with limits $320 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 keeps the CPU busy, which drains a shared Fly vCPU's burst balance, and Managed Agents lists Docker only in limited availability; bochka has Docker and /dev/kvm ready. | 152nd of 377, with limits $288 a month | 227th of 377, with limits $96 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB | 118th of 368, with limits $53 a month | 224th of 368, with limits $48 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 or computer use built in (Managed Agents has headless Chromium with Playwright); bochka streams a Linux desktop at 60fps. | 95th of 369, with limits $173 a month | 127th of 369, with limits $288 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 | 160th of 367, with limits $90 a month | 126th of 367, with limits $288 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 | 161st of 346, with limits $67 a month | 127th of 346, with limits $390 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 Fly is the strongest of the three here: it spreads scrapers across 17 regions and pays only for the seconds they run. | 44th of 338, with limits $1,232 a month | 155th of 338, with limits $4,798 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 | 118th of 360, with limits $63 a month | 179th of 360, with limits $160 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 | Fly.io Machines | Claude Managed Agents | bochka |
|---|---|---|---|
| What it is | App hosting platform; Machines are microVMs you boot from your own image through a REST API | A hosted Claude agent: Anthropic's harness runs Claude in a sandbox and you send it events | Agent sandbox: a full VM per agent, with coding agents built in |
| Isolation | Firecracker microVM with its own kernel | Isolated Linux container per session | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Machine size | Shared or performance CPU presets you choose; one Volume of up to 500GB | Up to 8 GB memory and 10 GB disk; vCPU count not published; not configurable | Up to 16 vCPU / 32 GB on the $100 plan and above |
| Docker, systemd and /dev/kvm | Root and Docker you install yourself; Fly's own init, no systemd; no /dev/kvm | Docker in limited availability; root, systemd and /dev/kvm not documented | Root, Docker, systemd and /dev/kvm on every machine |
| Files after a stop | Root file system is ephemeral; lasting data goes on one Volume, billed for its full size all month | Checkpointed when a session goes idle; state kept only 30 days after the sandbox is created | The whole disk, saved every minute and on stop, for as long as you keep the sandbox |
| Pause and wake | Fly Proxy stops or suspends idle Machines and wakes them on a request; suspend keeps memory up to 2GB | An idle session resumes from its checkpoint on the next message, and idle time is not billed | Started and stopped through the API; resume reboots from disk |
| Fork | Clone copies a Machine's config; a cloned Volume starts empty | No fork or clone of a session or sandbox | Fork a running sandbox, disk included |
| Agent loop | None built in; you install agents and write the code that drives them | Anthropic's harness with Claude models, caching, compaction, memory stores and webhooks | Claude Code, Codex and five more preinstalled, driven from outside with a prompt, steer and events API |
| Browser and desktop | None built in; you add a browser and desktop to your own image | Headless Chromium with Playwright; no desktop or computer-use tool | 60fps Linux desktop with Chromium, computer use and browser control |
| Inbound access | Public HTTPS and TCP through Fly Proxy, Anycast IPs, custom domains, private network | No inbound ports or SSH; reached only through the sessions and events API | HTTPS URLs on up to 50 ports, token-protected; raw TCP; SSH |
| Keeping API keys out of the sandbox | Secrets arrive as environment variables; an open-source tokenizer proxy you deploy yourself | Vault secrets sit in the sandbox as placeholders and are swapped in at egress, per host | Credentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out |
| Outbound rules | Network policies allow chosen ports and protocols and deny the rest | Unrestricted, or limited to listed hosts plus package registries and MCP servers | Open internet, no provider-side allowlist |
| Models and agents | Any, since you bring your own code | Claude models only, through Anthropic's harness | Claude Code, Codex, OpenCode and more, with any model provider |
| Where it runs | 17 regions on six continents | US workspace geo only; inference can be global or US | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | Fly.io Machines | Claude Managed Agents | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | No | Yes |
| Docker inside | Yes | Not published | Yes |
| Nested virtualization | No | No | Yes |
| Root | Yes | Not published | Yes |
| Systemd | No | Not published | Yes |
| Desktop GUI | No | No | Yes |
| Browser | No | Yes | 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 | No | Yes |
| Live fork (no pause) | Yes | No | 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 | No | Yes |
| Raw TCP inbound | Yes | No | Yes |
| Public IPv4 | Yes | No | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | No | Yes | Yes |
| Secret proxy for any API | No | Yes | Yes |
| Preinstalled agents | No | Yes | Yes |
| Agent harness API | No | Yes | Yes |
| MCP server | Yes | Yes | No |
| GPU | No | No | No |
| Windows | No | No | No |
| Arm64 | No | No | No |
| Self-hosting | No | Yes | No |
| BYOC | No | Yes | No |
| Open source | Yes | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | No | Yes | Yes |
| Usage per sandbox (API) | No | Yes | Yes |
| Audit logs | Not published | Not published | No |
| SSO | No | Yes | No |
| SOC 2 | Yes | Yes | No |
| HIPAA | Yes | No | No |
| EU data residency | Yes | No | Yes |
| Zero data retention | Not published | No | Yes |
Performance
There is no comparable measurement for either: neither Fly.io Machines nor Claude Managed Agents was part of the public StarSling run, where bochka did 26.69 Node.js build-and-test runs per second at 4 vCPU / 8 GB. Fly's results would depend on the CPU class, since shared vCPUs guarantee only 6.25% of a core, and Anthropic does not publish how many vCPUs a Managed Agents sandbox gets.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Fly.io Machines and Claude Managed Agents 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 | Fly.io Machines, a month | Claude Managed Agents, 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 | $15 · Pay As You Go · with limits | $13 · Claude API (pay-as-you-go, usage tiers) · with limits | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $36 · Pay As You Go · with limits | $53 · Claude API (pay-as-you-go, usage tiers) · with limits | $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 | $487 · Pay As You Go · with limits | $634 · Claude API (pay-as-you-go, usage tiers) · 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 | $110 · Pay As You Go · with limits | $360 · Claude API (pay-as-you-go, usage tiers) · 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 | $232 · Pay As You Go · with limits | $796 · Claude API (pay-as-you-go, usage tiers) · with limits | $2,000 · $2000/mo · with limits |
Fly.io Machines: Fly bills each Machine per second while it runs, by CPU preset and memory, with no plan fee; Volumes are billed for their full size all month. The figures use Fly's lowest rate: shared vCPUs bought in 1-year reservation blocks.
Claude Managed Agents: Managed Agents bills model tokens at API rates plus a flat session runtime fee, measured only while the session is running, including time waiting on the model. The table shows runtime only; tokens come on top and usually cost more.
Claude Managed Agents: Plans start at $20 a month, and the whole fee is usage credit spent per second while a sandbox runs. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
Neither fits any scenario cleanly. Fly's lowest figures need a 1-year reservation and use shared vCPUs that guarantee 6.25% of each core, so long builds get throttled, and its API creates about one Machine per second per app. Managed Agents caps a sandbox at 8 GB of memory and 10 GB of disk, does not publish its vCPU count, and has Docker only in limited availability. On bochka the 1,000-job burst is queued even on the $2,000 plan, at 90 starts per minute and 2,400 a day.
| Scenario | Fly.io Machines | Claude Managed Agents | 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 Fly.io Machines when
you want to build your own sandbox from your own image, host apps around it, and run near users in 17 regions.
- 17 regions worldwide. Useful when agents or users sit outside Europe and the US: Fly runs Machines in 17 regions, from Sydney to Johannesburg.
- Host the whole app next to it. Useful if you host products too: public HTTPS and TCP, Anycast IPs, custom domains and a private network around each Machine.
- Any image, any agent. Useful if you want full control: Fly boots your own Docker image, so you pick the agent, the model and every tool.
Use Claude Managed Agents when
you want Claude itself doing long text and code tasks with no harness to build, and idle time that costs nothing.
- No agent loop to build. Teams that want Claude doing long tasks get the harness, caching, compaction, memory and webhooks ready to use.
- Idle sessions sleep for free. Agents that wait long between messages pay runtime only while working, and resume on the next message with files kept.
- Host allowlists and your own workers. Teams with strict network rules can limit sandboxes to listed hosts, or run every tool call on their own infrastructure.
Where bochka fits
Fly.io Machines give you a VM but leave the sandbox and the agent to you, and Claude Managed Agents gives you the agent but only a small container you cannot open. If what you are running is coding or computer-use agents that need a real machine, bochka sits in between: a full VM with agents built in, a disk that lasts and ports you can open.
A full machine that keeps its disk
A Fly Machine resets its root disk on restart unless you pay for a Volume all month, and a Managed Agents container caps out at 8 GB with state that expires after 30 days. bochka keeps the whole disk, saved every minute, and a stopped sandbox costs nothing.
Docker, systemd and /dev/kvm ready
Fly has no systemd or /dev/kvm, and Managed Agents lists Docker only in limited availability, so emulators and nested VMs have nowhere to run. Every bochka machine has root, Docker, systemd and /dev/kvm.
Agents and a desktop you can open
On Fly you build the image, desktop and agent driver yourself; on Managed Agents you get only Claude and no inbound ports. bochka ships Claude Code, Codex and more, a 60fps desktop, and HTTPS on up to 50 ports.
Use bochka when your agents need a real machine: Docker, emulators, a desktop and browser, ports you can open, a disk that lasts, and the choice of Claude Code, Codex or other agents. Compare it one to one: bochka vs Fly.io Machines and bochka vs Claude Managed Agents.
Questions people ask
Is Fly.io Machines cheaper than Claude Managed Agents?
For runtime, Fly costs less in four of the five scenarios, using its 1-year reserved shared vCPUs: for example 50 agents in parallel are $487 a month on Fly against $634 on Managed Agents, and bochka is $317. For one agent on workdays Managed Agents is lowest, and its model tokens always come on top.
Which is faster, Fly.io Machines or Claude Managed Agents?
Neither has a published CPU measurement, so there is no fair answer. Fly's shared vCPUs guarantee only 6.25% of a core and throttle sustained load, and Managed Agents does not publish its vCPU count. bochka measured 26.69 runs per second at 4 vCPU / 8 GB.
Can I run Docker on Fly.io Machines or Claude Managed Agents?
On Fly you can install and run Docker yourself, since a Machine is a microVM with root, but there is no /dev/kvm for nested VMs. Managed Agents lists Docker only as limited availability. bochka has Docker, systemd and /dev/kvm on every machine.
Can I run Claude Code on either?
On Fly you can, by installing it in your own image and writing the code that drives it. Managed Agents runs Anthropic's own harness, not Claude Code. bochka has Claude Code, Codex and five other agents preinstalled.
Do they keep files when the agent stops?
A Fly Machine keeps only what is on its one Volume, since its root file system is ephemeral. Managed Agents checkpoints an idle session but keeps sandbox state only 30 days after creation. bochka keeps the whole disk, saved every minute, until you delete the sandbox.
Where does my data run?
Fly runs Machines in 17 regions worldwide. Managed Agents stores data and runs code in the US workspace geo only. bochka runs only in the EU (Germany, Finland and France), with EU data residency.
Try bochka
Install the CLI, then run bochka new.
Product preview
More comparisons
- bochka vs Fly.io Machines
- bochka vs Claude Managed Agents
- E2B vs Fly.io Machines
- Daytona vs Fly.io Machines
- Modal vs Fly.io Machines
- Vercel Sandbox vs Fly.io Machines
- Cloudflare Sandbox vs Fly.io Machines
- Blaxel vs Fly.io Machines
- Runloop vs Fly.io Machines
- Tensorlake vs Fly.io Machines
- Morph Cloud vs Fly.io Machines
- CodeSandbox SDK vs Fly.io Machines