Skip to content
Runtime

Fly Machines vs Sprites which Fly.io product fits agent sandboxes?

Runtime Cloud (withruntime.com) costs 58% less than either. Sprites meter use, and Machines bill their size.

Estimated compute cost2 vCPUs · 4 GiB · 60 s a run · 20 CPU-seconds busy

73% less than Fly Sprites58% less than Fly Machines

1,000

Compute only, at list rates checked 25 October 2026 (Fly.io pricing). Plan fees, network, taxes and free credits are left out. The worked example below shows the arithmetic.

Which is better, Fly Machines or Fly Sprites?

It depends on how your agent spends its time and where it must run. For agents that mostly wait on a model, Runtime has the lowest bill: $0.64 for 1,000 one-minute runs, against $1.53 on a Machine and $2.40 on Sprites. It bills measured CPU, and its pause keeps memory and processes. Pick Sprites for a long-lived machine whose 100 GB disk costs very little while asleep. Pick Machines for 17 regions, or for volumes and Managed Postgres in the same account.

At a glance

Both are Fly.io products, and both run Firecracker microVMs. Sprites are Fly's sandboxes for agents. Machines are its general-purpose VMs. Machine figures are for a performance-2x with 4 GB, at the rates of Fly's Ashburn (iad) region.

Fly Sprites Fly Machines Runtime
Isolation Firecracker microVM Firecracker microVM Firecracker microVM, own kernel
CPU $0.0385 per CPU-hour of measured CPU By size while started: $0.0916704 an hour for 2 vCPUs and 4 GB $0.025 per vCPU-hour of measured CPU, with a small floor
Memory $0.021875 per GB-hour of memory in use; managed by Fly Included in the size; more at $6 per GB per month $0.0075 per reserved GiB-hour
Size 100 GB disk; you pay for the bytes written Up to 16 performance vCPUs and 128 GB Up to 16 vCPUs and 64 GiB paid, chosen apart
When idle Pauses after about 30 s; compute billing stops Billed until stopped; a stop resets the root filesystem Pause keeps files, memory and processes while you have credit
Memory kept While warm; dropped when it goes cold With suspend, on Machines of 2 GB or less While you have credit
Free start $30 of trial credit Not stated on the pricing page 100 free hours of a 1 GB machine in the first 30 days, no card
Interfaces API, CLI, MCP server; JavaScript, Python, Go, Elixir SDKs Machines API and flyctl API, CLI, MCP server, JavaScript and Python SDKs

When is a Sprite cheaper than a Machine?

When it uses little memory. A Sprite's CPU is cheap for an agent that waits, because only measured CPU is billed: $0.21 for the job below. Its memory is not cheap: $0.021875 per GB-hour of memory actually in use, or $2.19 of the $2.40 total when all 4 GB are used. A Machine's $0.0916704 an hour covers two performance vCPUs, whole cores kept for it, and 4 GB, busy or not.

For 1,000 one-minute runs with 20 CPU-seconds each, a Sprite that uses 1 GB costs $0.76, less than the Machine's $1.53. At about 2.4 GB in use they cost the same. Past that point the Machine is cheaper. A Sprite that uses all 4 GB costs $2.40. The busier the CPU, the further the Machine pulls ahead, because its price does not change with load.

A shared-cpu-2x Machine with 4 GB costs about $0.59 for the same runs. Its shared vCPUs are guaranteed 6.25% of a core each and start with a small burst allowance, so a new one would not fit 20 CPU-seconds into the minute.

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 Sprite is assumed to use all 4 GB for the whole minute. The Machine is a performance-2x with 4 GB.

Sprites$2.40
CPU
1,000 × 20 s / 3,600 × $0.0385
$0.21
Memory
1,000 × 90 s / 3,600 × 4 × $0.021875
$2.19
Machines$1.53
Size
1,000 × 60 s / 3,600 × $0.0916704
$1.53
Runtime$0.64
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 $240.14 on Sprites, $152.78 on Machines and $63.89 on Runtime. With both CPUs busy for the whole minute, the job costs $1.33 on Runtime, against $3.47 on Sprites and $1.53 on Machines. Runtime is cheaper however busy the sandbox is. The Machine figure assumes it is removed when its run ends. The Sprite figure includes the 30 seconds or so that a Sprite stays awake and billed after its run. Storage, network, plan fees, taxes and free credits are left out.

What happens when the agent goes idle?

A Sprite handles idle time by itself. After about 30 seconds with nothing to do, it pauses, and compute billing stops. At first it is warm, with memory frozen in place, and the next request resumes it in 100 to 500 ms. Later it goes cold, dropping memory and processes. It wakes in 1 to 2 seconds, with processes started fresh. Its disk survives both states, and a sleeping Sprite's disk costs $0.02 per GB-month.

A Machine is billed for as long as it is started. Stopped, it costs storage only. A stop resets its root filesystem, so files that must last go on a Fly Volume. Suspend keeps memory and resumes in a few hundred milliseconds. Fly lists 2 GB of memory or less as a requirement, so the 4 GB Machine here cannot use it.

A Runtime sandbox pauses when you call pause() or after idlePauseSeconds. It keeps files, memory and processes while you have credit, and it wakes on the next request. Name it, and the next process gets the same one back:

Pythonfrom withruntime import Sandboxdev = Sandbox.get_or_create("dev", idle_pause_seconds=900)dev.exec("git pull || true")

Which one to pick

  • Pick Sprites for a long-lived agent machine with a 100 GB disk that costs very little while asleep.
  • Pick Machines for 17 regions, or for volumes and Managed Postgres in the same account.
  • Pick Runtime for measured CPU at 35% below the Sprite rate, memory you size and plan against, and a pause that keeps memory and processes for as long as you choose.

Runtime Cloud

Runtime runs the same job for 58% less than a Fly Machine and 73% less than a Sprite. 1,000 one-minute runs of a 2 vCPU, 4 GiB sandbox cost $1.53 on a Machine, $2.40 on Sprites and $0.64 on Runtime. Runtime bills measured CPU like a Sprite, at 35% below its rate, and reserved memory at 66% below the Sprites memory rate. Rates checked 25 October 2026.

New accounts start free with npx withruntime login. The migration guide moves code written for either one.

Switch from either one

From Sprites, the calls map one-to-one. client.createSprite(name) becomes Sandbox.create(), a Sprite by name becomes Sandbox.getOrCreate(name), and sprite.execFile(cmd, args) becomes exec([cmd, ...args]). From Machines, if you create a Machine for each job through the Machines API, create a Runtime sandbox instead and stop it when the job ends.

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. Credit you add within 30 days of signing up is matched, up to $1,000 in total. The full side-by-side is Runtime vs Fly.io. For each one against Cloudflare, see Cloudflare Sandbox vs Fly Sprites and Cloudflare Sandbox vs Fly Machines.

Sources

Rates checked 25 October 2026. The Sprite lifecycle and Machine suspend pages were read 26 October 2026.

Facts on this page were checked on 26 October 2026.

Keep comparing.

100 free hoursin your first 30 days.

of a 1 GB machine

  • No credit card
  • Four sandboxes at once, 2 vCPU and 4 GiB each
  • Then prepaid credit from $10, no plan fee
Start free, no card
Start free, no card