Which is better, Fly Machines or Morph?
It depends on whether your agent waits, serves users or branches. Agents that idle between model calls cost the least on Runtime: $0.64 for 1,000 one-minute runs, against $1.53 on Fly Machines and $1.67 on Morph, because it bills measured CPU. It also forks a running sandbox and pauses with memory at any size. Pick Fly Machines for a service in any of 17 regions, with volumes and Managed Postgres in the same account. Pick Morph when a search needs hundreds of branches of one running machine.
At a glance
| Fly Machines | Morph | Runtime | |
|---|---|---|---|
| Isolation | Firecracker microVM | Full virtual machines | Firecracker microVM, own kernel |
| How it bills | A fixed size per second while started | $0.05 per MCU-hour for the machine's size | $0.025 per vCPU-hour of measured CPU, with a small floor |
| Memory | Inside the size; more at $6 per GB per month | Inside the MCU: 4 GB per MCU | $0.0075 per reserved GiB-hour |
| 2 vCPU, 4 GB | performance-2x, $0.0916704 an hour (iad) |
2 MCUs, $0.10 an hour | $0.08 an hour fully busy, $0.03125 waiting |
| Plan fee | None; pay as you go | Developer free with no credit; Team $40 and Scale $250 per month | None; prepaid credit from $10 |
| At once | Not stated on the pricing page | 8 devboxes free, 32 on Team, 128 on Scale | 100 sandboxes paid |
| Keep a running VM | Suspend, for Machines with 2 GB of memory or less | Snapshots of memory and disk; branches to many replicas | Pause, snapshot and fork keep memory and processes |
Can you snapshot and branch a running machine?
On Morph, yes. It is the center of the product. A snapshot captures a VM's memory and disk, and Morph's Infinibranch starts hundreds of parallel replicas from one running machine. Snapshot storage is billed in MCUs too: one MCU covers 5 TB-hours of snapshot. Morph's own example puts an 8 vCPU, 8 GB RAM, 8 GB disk VM kept as a snapshot at $0.12 per month.
A Fly Machine does not branch. Its nearest feature is suspend, which saves the whole VM state (CPU registers, memory and open file handles) in a Firecracker snapshot and resumes in a few hundred milliseconds. Suspend needs 2 GB of memory or less, so the 4 GB size in the example below cannot use it. Fly says a deploy, a host migration or maintenance discards the snapshot. A Machine's root disk is temporary. Files that must last go on a Fly Volume.
Runtime does both at any size. fork makes 1 to 100 running copies of a
sandbox, with its files, memory and processes. A snapshot saves the machine so
you can start more copies later, for as long as you have credit. See
what a sandbox fork is and
what a sandbox snapshot is.
Cost for the same job
1,000 runs of a 2 vCPU, 4 GiB sandbox. Each run lasts 60 seconds and keeps the
CPU busy for 20 CPU-seconds: an agent that mostly waits for a model. The Fly
Machine is a performance-2x with 4 GB. On Morph, 2 vCPUs and 4 GB is 2 MCUs.
- Size
- 1,000 × 60 s / 3,600 × $0.0916704
- $1.53
- Size
- 1,000 × 60 s / 3,600 × 2 MCU × $0.05
- $1.67
- CPU
- 1,000 × 20 s / 3,600 × $0.025
- $0.14
- Memory
- 1,000 × 60 s / 3,600 × 4 × $0.0075
- $0.50
At 100,000 runs per month, the cost is $152.78 on Fly Machines, $166.67 on Morph and $63.89 on Runtime. With both CPUs busy for the whole minute, the job costs $1.33 on Runtime, against $1.53 on Machines and $1.67 on Morph. Runtime is cheaper however busy the sandbox is. Morph charges an MCU for whichever of CPU, memory or disk a machine needs most, so a 2 vCPU, 8 GB machine is still 2 MCUs. Plan fees, included credit, storage, network and free credits are left out.
Which one to pick
- Pick Fly Machines to run a service that stays up, in any of Fly's 17 regions, with volumes and Managed Postgres in the same account.
- Pick Morph if your agent's search needs hundreds of branches of one running machine concurrently.
- Pick Runtime for forks and pauses that keep memory at any size, measured CPU at $0.025 a vCPU-hour, no plan fee, and an agent that connects without an API key.
Runtime Cloud
Runtime runs the same job for 58% less than a Fly Machine and 62% less than Morph. 1,000 one-minute runs of a 2 vCPU, 4 GiB sandbox cost $1.53 on Fly Machines, $1.67 on Morph and $0.64 on Runtime, because Runtime bills the CPU your code uses rather than the size it holds. Like Morph, it copies a running sandbox with its memory. Rates checked 25 October 2026.
To try it, run npx withruntime login and use the free usage. The migration guide covers moving existing Machines or Morph code.
Switch from either one
If you branched a Morph snapshot or kept a warm Machine to copy, prepare one Runtime sandbox and fork it. The copies start running together:
Pythonfrom withruntime import Sandboxwith Sandbox.create() as base: base.exec("pip install --quiet requests") forks = base.fork(count=2) # memory and processes included for fork in forks: print(fork.exec("python3 -c 'import requests; print(requests.__version__)'").stdout) fork.stop()For one-off jobs, create a sandbox where you created a Machine or an instance,
and stop it at the end. Or give your coding agent the one instruction in
migration. It switches the project on a branch, tests it on
the free usage, and reports the monthly saving.
npx withruntime compare --from fly-machines (or --from morph) prices what
you ran at the old provider's rates. Credit you add within 30 days of signing up is matched, up to $1,000 in total. The full
side-by-sides are Runtime vs Fly.io and
Runtime vs Morph.
Sources
Fly.io prices checked 25 October 2026.
Rates checked 25 October 2026. The Fly suspend and Morph pricing pages were read 26 October 2026.
- Fly.io pricing, Machine suspend and resume, Fly Volumes, Fly.io regions
- Morph Cloud pricing, Morph Devboxes, Morph snapshots
- Runtime pricing and JavaScript SDK
Facts on this page were checked on 26 October 2026.