Run CloudRun CloudGet access

Sandbox comparison · Reviewed July 2026

Fly.io Machinesvs Run Cloud

Fly Machines are fast-launching VMs controlled through a lower-level Machines API. Run Cloud wraps infrastructure in agent-oriented sandbox primitives while preserving a Fly-shaped migration path.

Fly.io Machines

What it does well

  • A lower-level VM primitive with explicit create, update, start, stop, suspend, and delete APIs.
  • Regional placement and private networking across Fly.io infrastructure.
  • Flexible Machine configuration for teams that want infrastructure-level control.

Run Cloud

Why teams compare

  • Hardware-isolated Linux microVMs with snapshot, fork, pause, and resume.
  • Browser-controlled iOS simulators on the same product surface.
  • A Fly.io Machines-shaped compatibility adapter for incremental migration.

Detailed comparison

Different control planes. A practical migration path.

This comparison focuses on architecture and workflow rather than temporary prices or benchmark claims.

AreaFly.io MachinesRun Cloud
Runtime modelFast-launching general-purpose VMs grouped into Fly Apps.Firecracker microVMs packaged as managed agent sandboxes.
StateStop, start, and suspend controls; suspend snapshots memory with best-effort resume.Snapshot and copy-on-write fork semantics are designed for agent checkpoints and fan-out.
API levelLow-level Machines resource, configuration, leases, metadata, and networking.Higher-level exec, files, previews, lifecycle, and compatibility APIs.
OperationsYou compose apps, machines, volumes, routing, and sandbox policy.Run Cloud manages the sandbox control plane and adjacent mobile runtime.
Migration pathExisting code imports Machines from @flydotio/machines.Switch to @run-cloud/sdk/compat/fly and validate Fly-specific networking and volume behavior.

Provider details were reviewed against the Fly Machines API documentation. Product capabilities change; validate requirements against current vendor documentation.

Choose Fly.io Machines

Stay when its platform is the advantage.

  • Teams that want to assemble their own sandbox control plane from general-purpose VMs.
  • Services needing Fly.io regions, private 6PN networking, Apps, and volume primitives.
  • Infrastructure engineers who prefer explicit low-level machine lifecycle control.

Choose Run Cloud

Move when the agent needs more than Linux.

  • Agent teams that want sandbox files, exec, previews, snapshots, and lifecycle as one API.
  • Applications migrating a Fly Machines-shaped TypeScript control layer.
  • Mobile workflows that need Linux compute, iOS simulators, and Xcode builds together.

Compatibility layer

Start with the import.

Keep the provider-shaped entry point while you validate lifecycle, network, image, and storage behavior against your application.

@run-cloud/sdk/compat/fly
machines.ts
Beforeimport { Machines } from "@flydotio/machines";
Run Cloudimport { Machines } from "@run-cloud/sdk/compat/fly";

FAQ

Fly.io Machines migration questions.

Are Fly Machines sandboxes?+

Fly Machines are general-purpose fast-launching VMs. Teams can build a sandbox platform on top, while Run Cloud provides agent-oriented sandbox lifecycle, file, command, preview, and state primitives directly.

Does Run Cloud replace every Fly.io primitive?+

No. The compatibility layer targets the Machines-shaped integration path, not every Fly App, volume, routing, lease, or private-networking feature.

When should I use Fly Machines?+

Use Fly Machines when you want low-level regional VM control and are comfortable building the sandbox orchestration and policy layer yourself.

When should I use Run Cloud?+

Use Run Cloud when you want a managed agent runtime, explicit snapshot and fork workflows, or a direct connection to iOS simulator and Xcode infrastructure.

Test the migration on a real workload.

Bring one sandbox workflow, keep the familiar API shape, and measure the behavior that matters to your agents.

Get early access