Fly.io Machines vs Freestyle

Fly.io Machines are Firecracker microVMs for hosting your own apps in 17 regions, and you build any sandbox on top yourself. Freestyle sells full KVM VMs made for agents, with systemd, Docker, nested virtualization and coding agents ready, plus memory pause and live fork.

The companies and products

Fly.io Machines

Fly.io is an app hosting platform, and Machines are the microVMs underneath it that you can also start and stop through a REST API.

A Fly Machine boots your Docker image as a Firecracker microVM on Fly's own servers, in one of 17 regions. You pick a shared or performance CPU preset, attach at most one Volume for data that must last, and Fly Proxy can stop, suspend and wake Machines as traffic comes and goes. It is built for teams that host web apps and services worldwide; it is not a sandbox product, so this page compares the parts that overlap with agent work.

Freestyle

Freestyle sells full Linux virtual machines for AI agents, built for long running, complex tasks.

Each Freestyle VM is a KVM virtual machine with its own kernel, booted from an Ubuntu base snapshot with systemd, Docker and coding agent CLIs preinstalled. VMs can be paused with their memory, snapshotted while running, forked and woken by the next request, and every VM starts behind a default-deny firewall. It is built for teams that give each agent or each user its own machine, driven from a TypeScript SDK, a CLI or an API.

Which use cases each one fits

For each use case, Battleships prices every sandbox provider on the same workload and sorts them from the cheapest monthly bill up. “92nd cheapest of 367” means 91 of the other 366 providers run that workload, with every feature it needs, for less. “With limits” means the provider runs it but misses something, so it is listed after every full match. Open a use case for its whole ranking and what each provider misses.

Use case and its workloadFly.io Machines: price rankFreestyle: price rankboat: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
Freestyle has systemd, Docker and /dev/kvm ready, while a Fly Machine resets its root disk on restart and has no nested virtualization; boat fits fully with faster measured CPUs.
92nd of 367, with limits
$836 a month
241st of 367, with limits
$3,311 a month
3rd cheapest of 367
$634 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
125th of 366, with limits
$816 a month
263rd of 366, with limits
$4,195 a month
5th cheapest of 366
$657 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Freestyle ranks 40th here, ahead of Fly at 75th, because its VMs pause with memory and wake on the next request.
75th of 345, with limits
$94 a month
40th cheapest of 345
$482 a month
186th of 345, with limits
$2,000 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Freestyle fits fully and wakes a paused user VM on its next request; Fly creates about one Machine per second per app; boat ranks first.
69th of 361, with limits
$600 a month
16th cheapest of 361
$1,358 a month
Cheapest of 361
$209 a month
RL rollouts
1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month
Fly ranks 48th and Freestyle 107th; Freestyle can snapshot a running VM with its memory and boot copies, which suits rollouts that branch.
48th of 360, with limits
$2,838 a month
107th of 360, with limits
$6,600 a month
34th of 360, with limits
$2,000 a month
Agent evals
250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month
117th of 364, with limits
$457 a month
53rd cheapest of 364
$1,046 a month
10th cheapest of 364
$200 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
Busy CI jobs drain a shared Fly vCPU's burst balance, and Freestyle's docs send sustained heavy CPU work elsewhere; boat ranks 4th.
152nd of 377, with limits
$288 a month
168th of 377, with limits
$625 a month
4th cheapest of 377
$86 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
Freestyle fits a 24/7 dev box fully with its whole disk kept, while Fly keeps only what is on one Volume.
118th of 368, with limits
$53 a month
98th cheapest of 368
$151 a month
18th cheapest of 368
$26 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
Neither ships a desktop: on Fly you build it into your image, on Freestyle you follow guides to install GNOME or Xvfb and VNC; boat streams one at 60fps.
95th of 369, with limits
$173 a month
234th of 369, with limits
$940 a month
6th cheapest of 369
$200 a month
Browser-use agents
50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month
160th of 367, with limits
$90 a month
257th of 367, with limits
$482 a month
7th cheapest of 367
$200 a month
Scraping & bots (startup scale)
50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month
161st of 346, with limits
$67 a month
278th of 346, with limits
$482 a month
6th cheapest of 346
$90 a month
Mass scraping & bots (undetectable)
1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month
Fly ranks 44th, the best of the three, since it can spread scrapers across 17 regions and bill only the seconds they run.
44th of 338, with limits
$1,232 a month
183rd of 338, with limits
$6,560 a month
71st of 338, with limits
$1,800 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
118th of 360, with limits
$63 a month
272nd of 360, with limits
$482 a month
2nd cheapest of 360
$200 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Can't run itCan't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run itCan't run it

Key features

FeatureFly.io MachinesFreestyleboat
Kind of productApp hosting platform; Machines are its VM building block with a REST APIFull Linux VMs sold for AI agentsAgent sandbox: a full VM per agent, ready to use
IsolationFirecracker microVM with its own kernelFull KVM VM with its own kernel on bare metal serversFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts
Docker, systemd and nested virtualizationRoot and Docker you install yourself; Fly's own init, no systemd; no /dev/kvmsystemd is pid 1, Docker runs from boot, full KVM supportDocker, root, systemd and /dev/kvm on every machine
CPU benchmark (4 vCPU / 8 GB)Not measured; shared vCPUs guarantee 6.25% of a core, performance vCPUs the full core9.64 runs/s26.69 runs/s
Files after a stopRoot file system is ephemeral; lasting data goes on one Volume, billed for its full sizeWhole disk kept; a paused VM bills for its storageWhole disk kept, saved every minute and on stop; a stopped sandbox costs nothing
Pause with memorySuspend keeps memory for Machines up to 2GB; dropped on deploy or host movePause saves memory and disk; the same processes resumeResume boots again from disk (no memory snapshots)
ForkClone copies a Machine's config; a cloned Volume starts emptyClone a running VM without pausing it; snapshots capture memory and diskFork a running sandbox with its disk
Wake on requestFly Proxy stops or suspends idle Machines and wakes them on trafficA VM paused by idle timeout resumes on the next trafficNo; you start a stopped sandbox through the API
Coding agentsNone built in; you install and run them yourselfclaude, codex, opencode and openclaw preinstalled, driven through exec or a terminalSeven agents preinstalled, with a prompt, steer and events API to drive them from outside
Desktop, browser and computer useNone built in; you add them to your own imageGuides to install GNOME or Xvfb, VNC and Chromium yourself60fps Linux desktop, Chromium and computer use built in, embeddable stream
Keeping keys out of the sandboxSecrets arrive as environment variables; open-source tokenizer proxy you deploy yourselfCredentials injected at the edge for HTTPS headers, Postgres and S3Credentials proxy for model providers and any HTTPS API; switch to another account when credits run out
Outbound rulesNetwork policies allow chosen ports and protocols and deny the restDefault-deny firewall with allow rules by IP, VM, VPC or exact domainOpen internet on every plan; no provider-side allowlist
Biggest machinePick a shared or performance CPU presetUp to 32 vCPU / 64 GiB on Pro, 64 / 128 with custom limitsUp to 16 vCPU / 32 GB on the $100 plan and above
Regions17 regions on six continentsNot listed; the docs name a San Jose, US data centerEU only: Germany, Finland, France, with EU data residency
Every feature Battleships tracks (43)
FeatureFly.io MachinesFreestyleboat
Full VM (own kernel)YesYesYes
Docker insideYesYesYes
Nested virtualizationNoYesYes
RootYesYesYes
SystemdNoYesYes
Desktop GUINoNoYes
BrowserNoNoYes
Computer-use APINoNoYes
SSHYesYesYes
Persistent diskYesYesYes
Pause/resumeYesYesYes
Automatic snapshotsYesYesYes
Fork/cloneYesYesYes
Live fork (no pause)YesYesYes
Memory forkNoYesNo
Custom image (Docker or snapshot)YesYesYes
≥24 h sessionsYesYesYes
Idle auto-stopYesYesNo
Wake on requestYesYesNo
HTTPS preview URLsYesYesYes
Raw TCP inboundYesYesYes
Public IPv4YesNoNo
Egress allowlistYesYesNo
Secret proxyNoYesYes
Secret proxy for any APINoYesYes
Preinstalled agentsNoYesYes
Agent harness APINoNoYes
MCP serverYesNoNo
GPUNoYesNo
WindowsNoNoNo
Arm64NoNoNo
Self-hostingNoNoNo
BYOCNoNoNo
Open sourceYesNoNo
Scoped API keysNot publishedYesYes
Spend limitsNoNot publishedYes
Usage per sandbox (API)NoNoYes
Audit logsNot publishedYesNo
SSONoYesNo
SOC 2YesNot publishedNo
HIPAAYesNot publishedNo
EU data residencyYesNoYes
Zero data retentionNot publishedNot publishedYes

Performance

Fly.io MachinesNot measured
Freestyle9.64 runs/s
boat26.69 runs/s

On the hpc-sandbox-benchmarks Node.js build-and-test loop at 4 vCPU / 8 GB, boat did 26.69 runs per second and Freestyle did 9.64, so boat did about 2.8 times the CPU work. Fly.io Machines have no comparable measurement, and their speed would depend on whether you pick shared vCPUs, which guarantee 6.25% of a core, or performance vCPUs.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Fly.io Machines has no published run in this suite yet, so there is no like-for-like number to compare.

Pricing in five scenarios

Each bill is priced from the providers' public price lists by the open Battleships engine, with the cheapest plan that runs the scenario.

ScenarioFly.io Machines, a monthFreestyle, a monthboat, a month
One coding agent, workdays
4 vCPU / 8 GB, 50 GB disk, 8 hours a day, 22 days a month, files kept between days
$15 · Pay As You Go · with limits$27 · Free$20 · $20/mo
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$36 · Pay As You Go · with limits$159 · Free$26 · $20/mo
50 agents in parallel
50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside
$487 · Pay As You Go · with limits$2,139 · Pro$317 · $20/mo × 3 seats
Sandboxes for your users
2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once
$110 · Pay As You Go · with limits$581 · Pro$200 · $100/mo × 2 seats
1,000 short jobs at once
2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month
$232 · Pay As You Go · with limits$1,305 · Pro · with limits$2,000 · $2000/mo · with limits

Fly.io Machines: Fly bills each Machine per second while it runs, by CPU preset and memory, with no plan fee; Volumes bill for their full size all month. The figures here use Fly's lowest rate: shared vCPUs bought in 1-year reservation blocks.

Freestyle: Freestyle bills per second for the vCPU, RAM and disk allocated to a VM, busy or idle, after monthly allowances. Free stops when the allowances run out; Hobby and Pro have a $50 or $500 monthly minimum that counts as usage.

Freestyle: Plans start at $20 a month and the whole fee is usage credit, spent per second while a sandbox runs. A stopped sandbox costs nothing and keeps its disk.

Limits in those scenarios

Fly is marked a compromise in every scenario because its lowest figures need a 1-year reservation and use shared vCPUs that throttle above 6.25% of each core. Freestyle fits the first four scenarios, but 50 agents need Pro, and Pro's cap of 400 concurrent VMs is why it does not fit 1,000 short jobs at once. Freestyle has no idle timeout by default, so a VM bills until you pause it. boat does not fit that burst either: its starts per minute and per day are capped, so the jobs get queued.

ScenarioFly.io MachinesFreestyleboat
One coding agent, workdays
  • different kind of product: app platform
  • 1-year commitment
  • burstable CPU: 6.25% of each vCPU guaranteed, throttled above that
None that biteNone that bite
One agent that never stops
  • different kind of product: app platform
  • 1-year commitment
  • burstable CPU: 6.25% of each vCPU guaranteed, throttled above that
None that biteNone that bite
50 agents in parallel
  • different kind of product: app platform
  • 1-year commitment
  • burstable CPU: 6.25% of each vCPU guaranteed, throttled above that
None that biteNone that bite
Sandboxes for your users
  • different kind of product: app platform
  • 1-year commitment
  • burstable CPU: 6.25% of each vCPU guaranteed, throttled above that
None that biteNone that bite
1,000 short jobs at once
  • different kind of product: app platform
  • 1-year commitment
  • burstable CPU: 6.25% of each vCPU guaranteed, throttled above that
  • Pro: max 400 concurrent
  • shared vCPUs on this tier”): heavy, sustained CPU use can be slowed by other tenants
  • max 2,400 starts/day (needs ~6,667)
  • max 600 starts/hour (needs ~1,000)
  • bursts above 90 starts/min are queued (a burst of 333 takes ~4 min to start)

Which one should you use?

Use Fly.io Machines when

you host apps or light services that must run near users on several continents, sleep between requests and wake on traffic.

  • 17 regions worldwide. Useful when agents or users sit far apart: Fly runs Machines in 17 regions, from the US to Sydney and Johannesburg.
  • A full app platform around each Machine. Useful if you also host the product: private networking, Anycast IPs, custom domains and port-level network policies come built in.
  • No plan fee. Useful for light or bursty work: Fly bills each Machine per second while it runs, with no monthly minimum.

Use Freestyle when

you want a ready agent VM that pauses with its memory, forks while running, starts behind a default-deny firewall or needs more than 16 vCPU.

  • Built as an agent VM. Useful if you want a ready machine: systemd, Docker, nested virtualization and four coding agent CLIs come in the base image.
  • Memory pause and live fork. Useful for VMs that sleep and branch: pause keeps the running processes, and you can clone a VM while it runs.
  • Default-deny network and big machines. Useful for locked-down or heavy jobs: each VM starts with no network access, and Pro VMs go up to 32 vCPU.

Where boat fits

If what you are really running is coding agents that work for hours, look at boat too. Fly makes you build the sandbox yourself, and Freestyle gives you the VM but not the desktop or a way to drive the agents. boat ships both on faster measured CPUs, with a disk that is kept for free when the machine stops.

Faster CPUs for builds and tests

On the same Node.js build-and-test benchmark at 4 vCPU / 8 GB, boat did 26.69 runs per second and Freestyle 9.64. Fly was not measured, and its cheap shared vCPUs throttle once a long build drains the burst balance.

A disk that is kept, and free when stopped

An agent leaves tools and caches all over its disk. Fly keeps only one Volume and resets the rest on restart, and Freestyle bills a paused VM for storage. boat keeps the whole disk, saved every minute, and a stopped machine costs nothing.

Desktop and agents you drive from outside

Neither ships a desktop: on Fly you build it into your image, on Freestyle you install GNOME or Xvfb and VNC. boat streams a 60fps desktop with computer use, and an API prompts and steers the agents inside.

Use boat when your agents do real work for hours: builds, tests, Docker and emulators on fast CPUs, with a desktop, a kept disk and an API to drive the agents inside from outside. Compare it one to one: boat vs Fly.io Machines and boat vs Freestyle.

Questions people ask

Is Fly.io Machines cheaper than Freestyle?

On paper, yes. One agent running all month is $36 on Fly and $159 on Freestyle, and 50 agents in parallel are $487 against $2,139. Fly's figures use shared vCPUs on a 1-year reservation, which throttle above 6.25% of a core; boat is $26 and $317 for the same two.

Which is faster, Fly.io Machines or Freestyle?

Freestyle did 9.64 runs per second on the hpc-sandbox-benchmarks CPU test at 4 vCPU / 8 GB, and Fly was not measured. Fly's shared vCPUs guarantee only 6.25% of a core, so sustained builds depend on the CPU class you pick. boat did 26.69 runs per second on the same test.

Can Fly.io Machines and Freestyle run Docker?

Both can. On Fly you install Docker yourself in your image, and there is no systemd or /dev/kvm, so nested VMs and Android emulators do not work. Freestyle runs Docker from boot with systemd and full KVM support, like boat.

Do they keep my files when a VM stops?

Freestyle keeps the whole disk and bills it while paused. A Fly Machine's root file system is ephemeral, so only what sits on its one Volume lasts. boat keeps the whole disk, saved every minute and on stop, at no cost while stopped.

Can either one pause with memory?

Both can. Fly suspends Machines up to 2GB of memory and drops the snapshot on deploy or host move, while Freestyle pauses a VM with its memory and disk and can clone it while it runs. boat keeps the disk but boots again on resume.

Where do they run?

Fly runs Machines in 17 regions on six continents. Freestyle does not list regions; its docs name a data center in San Jose, US. boat runs only in the EU, in Germany, Finland and France.

Try boat

Install the CLI, then run boat new.

7-day free trial

More comparisons