Pilots vs Fly.io, the Same MicroVM Arranged Differently
Both run microVMs and both suspend with memory. Fly sells that as two products, and Pilots as one.
Fly.io is the closest thing Pilots has to a relative. Both run production services in microVMs and orchestrate those machines, where most platforms orchestrate containers. Pilots learned a great deal from how Fly built things and from what Fly has written about the parts that were hard.
Everything said about Fly here was read from its own pages in September 2026, and each claim links to the page it came from.
What the two agree on
- A microVM, not a container. Each machine has its own kernel on both platforms.
- Suspend keeps memory. Both can freeze a machine with its processes and bring it back far faster than a boot. Fly Machines have had this in every region since July 2024.
- A request wakes a sleeping machine. On both, the platform takes the request and starts the machine, and nothing of yours has to be running.
- Sandboxes. Fly has Sprites, which are microVMs too.
One product or two
Fly offers a platform for apps and sandboxes for agents as two products with two CLIs. Fly Machines host applications and are driven by fly. Sprites are driven by sprite, a separate CLI with its own install and its own API, which signs in with the same Fly account. Fly describes moving an agent from a Sprite to a Machine as a deploy.
Pilots is one product with one CLI, pilot. A sandbox and a production replica are the same machine. pilot promote turns a sandbox running your image into a service in one call, with nothing rebuilt and the URL unchanged.
Where a production disk lives
On Fly Machines, a volume exists on one server in a single region, and is not network storage. A machine with a volume is tied to the server that holds it, and migrating it copies the volume to the new server. Fly's Sprites work differently and keep the disk in object storage behind a local cache. Fly Machines, where production apps run, do not.
On Pilots, object storage is the truth for every machine's root disk and every volume, sandbox or production, and the host's own disk is a cache in front of it. Wipe any host and nothing is lost, which is what lets a suspended machine wake on another host.
What suspend promises
On Fly Machines, suspend comes with conditions, all stated in its documentation. Fly lists two gigabytes of memory or less as a requirement, along with no swap and no schedule. A snapshot is discarded when you deploy or when the machine moves to a different host, and is not guaranteed to persist, in which case the machine cold starts. Suspend is also a setting you choose, and a new app stops its machines by default.
An idle Sprite is first suspended with its memory and later stopped without it, and a Sprite's checkpoint captures files and not running processes or memory.
On Pilots suspend is the default for every machine, sandbox or service. A machine wakes on the host it slept on, and when that host is gone its memory image is restored on another host of the same processor family. When no such host is live the machine cold boots from its own disk, which is the one case where Pilots also loses the running processes. A checkpoint captures memory along with the disk.
What a sandbox is for
A Pilots sandbox is a computer, and the list of what it can do is the list of what a computer can do. It runs Linux with root access, so a browser, a compiler or a database is one install away.
That makes a fleet of sandboxes a fleet of users. Each one can open a real browser, use a product the way a person would and report what went wrong, and together they show how the product holds up when they all arrive at once. It also makes a sandbox the place to let an agent run with its permission prompts off, where unsafe code costs you a machine and not your laptop.
What Pilots is built for
- You want a fleet of disposable computers to test a product the way its users will use it.
- You want production storage that does not pin a machine to a server.
- You want suspend to be the default, in production as well as in a sandbox.
- You want sandboxes and production on one platform, with one CLI.
- You want a checkpoint of a sandbox to include what was running in it.
Questions people ask
Do Pilots and Fly.io both use microVMs?
Yes. Both run each machine as a microVM with its own kernel, and Fly's Sprites are microVMs too.
Can Fly.io suspend a machine with its memory?
Yes, with conditions. Fly lists two gigabytes of memory or less, no swap and no schedule, and the snapshot is discarded on a deploy. Pilots suspends every machine by default.
Does Fly.io have one CLI for apps and sandboxes?
No. Apps on Fly Machines are driven by fly, and Sprites by sprite, which is installed separately. Pilots has one CLI, pilot, for both.
What is the difference between Fly Sprites and a Pilots sandbox?
A Sprite is a separate product from Fly Machines, with its own CLI, and its checkpoints capture the filesystem. A Pilots sandbox is the same machine a service runs on, and its checkpoints capture memory too.
Every comparison, or install the CLI and hold Pilots against your own app.