Fly Machines
Fly Machines are VMs managed through a REST API, built from container images and executed inside Firecracker microVMs across Fly.io's global infrastructure. They expose lifecycle controls (start, stop, suspend, resume) and can autostart on inbound traffic through the Fly Proxy. Developers use them to deploy containerized workloads—including AI agent sandboxes—that need fast boot, per-second billing, and global placement.
| Pricing model | Per-second billing on running CPU/RAM preset; stopped machines billed for rootfs storage |
|---|---|
| Pricing The headline compute price as the provider states it. Sorting ranks prices stated per vCPU over time, converted to hourly. Other pricing models sort after, unranked. | From ~$0.0027/hr (shared-cpu-1x, 256 MB) with per-second metering |
| Free while idle Whether a stopped, paused, or sleeping sandbox costs nothing. | ✕ |
| Elastic Resources flex with what the sandbox actually uses, and the bill follows: yes when the provider bills on active or observed use, no when capacity is reserved or allocated and billed while it runs. | ✕ |
| Memory snapshots Whether RAM state survives a pause and resume, not just disk. | ✓ |
| Wake on request Whether a stopped sandbox wakes automatically on inbound traffic. | ✓ |
| Start / resume Typical time from create or resume to running. Sorting ranks stated times, converted to seconds; claims with no figure sort after, unranked. | Well under 1 s to start an existing or stopped Machine; a few hundred ms from suspend; ~2+ s for a cold start |
| Max runtime The longest a sandbox may run. | No fixed limit |
| Isolation The isolation technology between sandboxes. | Firecracker microVM |
| GPUs Whether GPU instances are available for sandboxes. | ✕ |
| Docker Whether Docker containers can run inside the sandbox. | ✓ |
| SDKs | Go, Python, Ruby |
✓ yes · ✕ no · – no cited public fact.
Suspend snapshots can be discarded after deployments, host migration, corruption, or maintenance, causing a cold start; attached volumes persist. Fly.io deprecated GPU Machines and removed the GPU documentation; GPU instances are no longer available.
Sources
- https://fly.io/docs/machines/flyctl/fly-machine-run/
- https://fly.io/docs/languages-and-frameworks/dockerfile/
- https://community.fly.io/t/feature-request-better-api-docs-or-an-official-fly-sdk/14894
- https://github.com/sosedoff/fly-machines
- https://community.fly.io/t/machines-take-3-8s-to-start-when-hitting-them-during-shutdown/7022
- https://dev.to/aerc18/why-my-lightning-fast-spring-boot-native-app-took-9-seconds-to-boot-on-flyio-db5
- https://fly.io/blog/fly-machines/
- https://fly.io/docs/about/pricing/
- https://fly.io/docs/machines/overview/
- https://fly.io/docs/reference/suspend-resume/
- https://community.fly.io/t/new-feature-in-preview-suspend-resume-for-machines/20672
- https://fly.io/docs/machines/
- https://docs.machines.dev/
- https://community.fly.io/t/fly-machines-create-and-forget-and-limitations/11244
- https://github.com/superfly/fly-openapi-sdk
- https://raw.githubusercontent.com/superfly/fly-go/main/README.md
- https://fly.io/docs/gpus/
- https://fly.io/docs/gpus/getting-started-gpus/
Last verified 2026-08-22. Corrections land through the update log.