Fly.io Machines vs Koyeb
Fly.io Machines are microVMs for hosting your own apps in 17 regions, and you build any sandbox on top yourself. Koyeb is a serverless cloud with a sandbox SDK, GPU instances and sandboxes that sleep when idle and wake on the next request.
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.
Koyeb
Koyeb is a serverless cloud for apps, inference and sandboxes, and in February 2026 it agreed to join Mistral AI.
A Koyeb sandbox is a Koyeb service: a microVM started from any Docker image and driven from Python or JavaScript SDKs that run commands, read files and expose a port. It can scale to zero when idle and wake on the next request, and it can run on CPU or GPU instance types. It is built for teams that run AI agents or untrusted code next to apps they already host on Koyeb.
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 | Koyeb: price rank | boat: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Neither keeps a whole disk by default, so a software factory on Fly or Koyeb needs a volume per agent; boat ranks 3rd with the disk, Docker and /dev/kvm built in. | 92nd of 367, with limits $836 a month | 54th of 367, with limits $366 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB | 125th of 366, with limits $816 a month | 135th of 366, with limits $923 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 Koyeb ranks 4th for short code runs, with small instances that scale to zero and wake on request, well ahead of Fly at 75th. | 75th of 345, with limits $94 a month | 4th cheapest of 345 $66 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 boat ranks 1st and Koyeb ranks 6th; Koyeb wakes sleeping sandboxes on request, while Fly's API starts about one Machine per second per app. | 69th of 361, with limits $600 a month | 6th cheapest of 361 $495 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 48th for RL rollouts, far ahead of Koyeb at 237th; boat ranks 34th. | 48th of 360, with limits $2,838 a month | 237th of 360, with limits $1,631 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 Koyeb fits agent evals fully and ranks 19th, while Fly is a compromise because its cheapest shared vCPUs throttle under steady load. | 117th of 364, with limits $457 a month | 19th cheapest of 364 $429 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 | 152nd of 377, with limits $288 a month | 142nd of 377, with limits $88 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 | 217th of 368, with limits $37 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 Fly nor Koyeb ships a desktop, so computer-use agents need one built into your own image; boat streams a 60fps desktop with Chromium. | 95th of 369, with limits $173 a month | 81st of 369, with limits $123 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 | 172nd of 367, with limits $123 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 | 172nd of 346, with limits $89 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 ranks 44th here, ahead of Koyeb and boat, since it can spread scrapers across 17 regions and bill only the seconds they run. | 44th of 338, with limits $1,232 a month | 65th of 338, with limits $1,683 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 | 233rd of 360, with limits $299 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 Koyeb ranks 3rd for GPU eval jobs with instances up to H100 and H200; Fly has discontinued GPU Machines and boat has no GPUs. | Can't run it | 3rd cheapest of 98 $628 a month | 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 | Koyeb | boat |
|---|---|---|---|
| Kind of product | App hosting platform; Machines are its VM building block with a REST API | Serverless cloud for apps, inference and sandboxes, with Python and JavaScript sandbox SDKs | Agent sandbox: a full VM per agent, ready to use |
| Isolation | Firecracker microVM with its own kernel | MicroVM per instance | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| CPU | Shared vCPUs guarantee 6.25% of a core plus bursts; performance vCPUs get the full core at a higher rate | At least 0.25 dedicated vCPU per GB of memory, bursting to all cores; eco instances guarantee half of each vCPU | One CPU class on every plan, no burst balance; 26.69 runs/s on the CPU benchmark |
| Docker, systemd and nested virtualization | Root and Docker you install yourself; Fly's own init, no systemd; /dev/kvm not offered | Starts from any Docker image; nested virtualization not documented | Docker, root, systemd and /dev/kvm on every machine |
| Files after a stop | Root file system is ephemeral; one Volume of up to 500GB per Machine, billed for its full size around the clock | Local disk is lost on redeploy; volumes are in preview at 1 to 10 GB, in Frankfurt and Washington | The whole disk is kept, saved every minute and on stop; a stopped sandbox costs nothing |
| Sleep and wake | Fly Proxy stops or suspends idle Machines and wakes them on a request; suspend keeps memory up to 2GB | Scales to zero after at least 5 idle minutes and wakes on the next request; Light Sleep wakes in about 200 ms | Stop and start through the API; resume reboots from disk |
| Snapshots and fork | Clone copies a Machine's config; a cloned Volume starts empty | SDK snapshots of the filesystem, or with running processes, then new sandboxes from them (experimental) | Fork a running sandbox, disk included |
| Desktop and browser | None built in; you add a desktop and browser to your own image | No desktop or browser in the sandbox SDK | 60fps Linux desktop with Chromium, computer use and browser control |
| Coding agents | None built in; you install and run agents yourself | Tutorials that run agents through the command API; an MCP server lets agents manage Koyeb | Claude Code, Codex and more preinstalled, with a prompt, steer and events API |
| Keeping keys out of the sandbox | Secrets arrive as environment variables; an open-source tokenizer proxy you deploy yourself | Secrets are set as environment variables inside the service | AI credentials proxy for model providers and any HTTPS API |
| Reaching the sandbox | Public HTTPS and TCP through Fly Proxy, Anycast IPs, custom domains, private network | One exposed HTTPS port at a time, plus an optional TCP proxy to one port; no dedicated IP | HTTPS URLs for up to 50 ports, token-protected; raw TCP; dedicated IPv4 or IPv6 |
| Outbound rules | Network policies allow chosen ports and protocols and deny the rest | Block all outbound traffic, or allow only listed IPs and CIDRs | Open internet on every plan; no provider-side allowlist |
| GPUs | GPU Machines discontinued, unavailable from 2026-08-01 | RTX 4000 SFF Ada up to H100, H200 and multi-GPU | No |
| Regions | 17 regions on six continents | Frankfurt, Paris, Washington D.C., AWS US East, Singapore, Tokyo, San Francisco in preview | EU only: Germany, Finland, France |
Every feature Battleships tracks (43)
| Feature | Fly.io Machines | Koyeb | boat |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | No | No | Yes |
| Root | Yes | Not published | Yes |
| Systemd | No | Not published | Yes |
| Desktop GUI | No | 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 | Not published | Yes |
| Memory fork | No | 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 | Yes | Yes | Yes |
| Public IPv4 | Yes | No | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | No | No | Yes |
| Secret proxy for any API | No | No | Yes |
| Preinstalled agents | No | Yes | Yes |
| Agent harness API | No | No | Yes |
| MCP server | Yes | Yes | No |
| GPU | No | Yes | 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 | No | Yes |
| Usage per sandbox (API) | No | No | Yes |
| Audit logs | Not published | Yes | No |
| SSO | No | Yes | No |
| SOC 2 | Yes | Yes | No |
| HIPAA | Yes | No | No |
| EU data residency | Yes | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
There is no comparable measurement for Fly.io Machines or Koyeb: neither was part of the StarSling run where boat did 26.69 Node.js build-and-test runs per second at 4 vCPU / 8 GB. On paper, Fly's shared vCPUs guarantee 6.25% of a core with a burst balance, while Koyeb guarantees at least 0.25 dedicated vCPU per GB of memory and bursts to all cores.
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 Koyeb 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 | Koyeb, a month | boat, 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 | $29 · Pro | $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 | $57 · Pro | $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 | $475 · Pro | $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 | $329 · Scale | $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 | $485 · Scale · 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 here use shared vCPUs bought in 1-year reservation blocks for 40% off, the lowest rate Fly sells.
Koyeb: Koyeb bills each instance per second at a fixed price per instance type, and Deep Sleep costs nothing. Pro costs $29 a month with $10 of usage included and Scale $299 a month with $100 included; the rest of the fee is not credit.
Koyeb: Plans start at $20 a month and the whole fee is usage credit, spent per second while sandboxes run. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
Fly is marked a compromise in every scenario: its lowest prices need a 1-year reservation, and its shared vCPUs guarantee only 6.25% of each core, so long builds drain the burst balance and get throttled. Koyeb's priced eco-xlarge shape has a 20 GiB disk with no published price for more, and its Pro plan allows 100 services. At 1,000 short jobs at once nobody fits as priced: Fly's API starts about one Machine per second per app, Koyeb's eco CPU guarantees only half of each vCPU, and boat queues starts above 90 a minute.
| Scenario | Fly.io Machines | Koyeb | boat |
|---|---|---|---|
| One coding agent, workdays |
|
| None that bite |
| One agent that never stops |
|
| None that bite |
| 50 agents in parallel |
| None that bite | None that bite |
| Sandboxes for your users |
| None that bite | None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use Fly.io Machines when
you host apps or light services that must run near users on many continents, sleep between requests and wake on traffic, or need large volumes.
- 17 regions worldwide. Useful if users sit in South America, Oceania or Africa: Fly runs Machines in 17 regions on six continents.
- Bigger lasting volumes. Useful for agents with large data: a Fly Volume holds up to 500GB, while Koyeb's preview volumes stop at 10 GB.
- A full app platform around each Machine. Useful if you host whole products: Anycast IPs, custom domains, private networking and port-level network policies come with every Machine.
Use Koyeb when
you want a ready sandbox SDK, need GPUs next to your sandboxes, or run sandboxes that sit idle and must wake on a request in the US or Asia.
- GPUs in the same platform. Useful when an agent or eval needs a GPU: Koyeb runs instances from RTX 4000 cards up to H100 and H200.
- A sandbox SDK out of the box. Useful if you want sandboxes without building the plumbing: Python and JavaScript SDKs run commands, read files and expose a port.
- More guaranteed CPU. Useful for steady work: Koyeb guarantees at least 0.25 dedicated vCPU per GB of memory, against 6.25% of a core on Fly's shared vCPUs.
Where boat fits
If what you are really running is coding agents that work for hours, both Fly and Koyeb leave you building the sandbox yourself: the disk, the tools, the desktop and the agent harness. boat gives each agent a full VM that keeps its disk, with Docker, /dev/kvm, a desktop and coding agents ready. Pick Fly or Koyeb instead when you need regions outside Europe, GPUs or wake on request.
A disk that keeps everything, and forks
Fly's root file system is ephemeral and a Volume is billed for its full size even while stopped. Koyeb loses the local disk on redeploy, and its volumes are a 1 to 10 GB preview. boat keeps the whole disk and can fork a running sandbox.
A full VM with systemd and /dev/kvm
Neither Fly nor Koyeb offers /dev/kvm, so Android emulators and nested VMs have to run elsewhere, and Fly boots its own init instead of systemd. boat has root, systemd, Docker and /dev/kvm on every machine.
Agents, desktop and keys handled
On both, secrets reach the sandbox as environment variables an agent's code can read, and you build the desktop, browser and agent control yourself. boat ships a 60fps desktop, preinstalled coding agents you drive from outside, and a credentials proxy.
Use boat when your agents do real work for hours on a full VM that keeps its disk: builds, Docker, emulators, a desktop browser and preview servers, with coding agents and keys handled for you. Compare it one to one: boat vs Fly.io Machines and boat vs Koyeb.
Questions people ask
Is Fly.io Machines cheaper than Koyeb?
Often, if you accept a 1-year reservation and shared vCPUs that guarantee 6.25% of a core: one agent on workdays is $15 on Fly against $29 on Koyeb, and 300 user sandboxes are $110 against $329 a month. For 50 agents in parallel they are close, $487 against $475 a month, and boat is $317.
Which is faster, Fly.io Machines or Koyeb?
Neither has a comparable benchmark, so there is no measured answer. Koyeb guarantees more CPU on paper, at least 0.25 dedicated vCPU per GB of memory, while Fly's shared vCPUs guarantee 6.25% of a core; Fly's performance vCPUs get the full core at a higher rate.
Can I run Docker inside Fly.io Machines or Koyeb?
Both start from Docker images. On Fly you can install and run Docker inside a Machine yourself since you have root, but there is no /dev/kvm; Koyeb does not document nested virtualization. boat has Docker, systemd and /dev/kvm ready on every machine.
Do they keep my files when a machine stops?
Only on a volume. A Fly Machine's root file system is ephemeral, and one Volume of up to 500GB holds lasting data; Koyeb's local disk is lost on redeploy and its volumes are a 1 to 10 GB preview. boat keeps the whole disk and saves it every minute.
Do Fly.io Machines or Koyeb have GPUs?
Koyeb does, from an RTX 4000 SFF Ada up to H100 and H200, billed per second. Fly has discontinued GPU Machines, which are unavailable from 2026-08-01. boat is CPU only.
Where do they run?
Fly runs Machines in 17 regions on six continents. Koyeb runs in Frankfurt, Paris, Washington D.C., AWS US East, Singapore and Tokyo, with San Francisco in preview. boat runs only in the EU, in Germany, Finland and France.
Try boat
Install the CLI, then run boat new.
7-day free trial
More comparisons
- boat vs Fly.io Machines
- boat vs Koyeb
- 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