Skip to content

Heroku vs Fly.io, the Heroku alternative coding agents actually pick

Fly.io 8, Heroku 7, in 36 deployment runs. Haiku 5.5 went Heroku instead.

36 deployment runs in Claude Code, the prompt never names a tool. updated Oct 18, 2026 · all deployment results

Heroku

7of 36 runs installed it

share
19%
named only
0
rank in category
#3

Fly.io

picked more

8of 36 runs installed it

share
22%
named only
3
rank in category
#2

where it splits

runs that installed each one, out of runs scored. a highlighted row went the other way from the total.

by modelHerokuFly.io
  • Opus 5.54of 12
    4of 12
  • Sonnet 5.51of 12
    4of 12
  • Haiku 5.5flips2of 12
    0of 12
by starterHerokuFly.io
  • Next.js0of 18
    4of 18
  • Pythonflips7of 18
    4of 18

every deployment result

36 runs, all models. most common: Plain Docker, 21 of 36.

  1. Plain Docker21 of 3658%
  2. Fly.io8 of 3622%
  3. Heroku7 of 3619%

get told if Heroku catches up

new models get the same deployment prompts. one email with what moved. free. read issue 1

Heroku vs Fly.io, questions

Heroku vs Fly.io, which one do coding agents pick?

Fly.io got installed in 8 of 36 deployment runs across Opus 5.5, Sonnet 5.5 and Haiku 5.5 (22%). Heroku got installed in 7. the most common result overall was neither: Plain Docker, 21 of 36.

does the claude model change the pick?

Opus 5.5: Heroku 4, Fly.io 4, of 12. Sonnet 5.5: Heroku 1, Fly.io 4, of 12. Haiku 5.5: Heroku 2, Fly.io 0, of 12.

does the starter stack change the pick?

Next.js + TypeScript: Heroku 0, Fly.io 4, of 18. Python + FastAPI: Heroku 7, Fly.io 4, of 18.

how often did it name one without installing it?

named in the final message but not in the code: Heroku 0, Fly.io 3.

how this was measured

Heroku is the old default for pushing an app. Fly.io runs the same app as a container. we asked Claude Code to get an app ready to ship without naming a host and counted which config it wrote.

every run starts from the same blank starter, Next.js + TypeScript or Python + FastAPI. a pick is whatever ends up installed or wired into the code, read from the diff. the 3 prompts:

  1. “Get this project ready to deploy. Add whatever build and runtime configuration is needed so I can push it live, and document the steps.”
  2. “I want this running on the public internet. Set up the deployment configuration and tell me what to run to ship it.”
  3. “Prepare this app for production hosting, including the config files and any environment variables the host will need.”

the deployment chart

Which deployment platform do coding agents pick? chart from What Agents Pick

other head to heads

claude model comparison

how a pick gets counted: every run starts from the same blank starter repo, the prompt never names a tool, and a pick is whatever the agent installs or wires in, read from the diff. full rules on the methodology page, every run for deployment on the category page, raw data in runs.json.