Guides · 2026-09-24 · updated 2026-10-09
Leaving Heroku in 2026: what the move really costs
On 6 February 2026 Heroku announced it is moving to a “sustaining engineering model” — stability, security, reliability and support, but no new feature work, and no Enterprise Account contracts for new customers. Heroku was explicit that pricing, billing and day-to-day usage do not change for existing and credit-card customers. So nothing is on fire. But a platform with a frozen roadmap is a platform you should be able to leave on short notice, and that starts with knowing what leaving costs.
Compute only: the same app on six PaaS
Cheapest plan that fits each stack’s RAM baseline for a small production app (50,000 visits/mo, ~74GB egress), metered egress included, from list prices as of 2026-10-05:
| Provider | Node.js API (512MB) | Django (1GB) | Ruby on Rails (1.5GB) |
|---|---|---|---|
| Heroku | $5.00Eco | $50.00Standard-2X | $250.00Performance-M |
| Render | $17.35512 MB / 0.5 CPU | $35.352 GB / 1 CPU | $35.352 GB / 1 CPU |
| Railway | $5.00Hobby | $5.00Hobby | $5.00Hobby |
| Fly.io | $5.17shared-cpu-1x 512MB | $8.18shared-cpu-1x 1GB | $14.18shared-cpu-1x 2GB |
| Koyeb | $29.00eco-micro | $29.00eco-small | $40.43medium |
| Orkestr | $0.00Starter | $16.20Pro | $16.20Pro — too small |
The pattern that matters for Heroku users: its dynos are priced by the process, not the gigabyte. A 512MB Basic dyno is competitive, but the moment your app needs 1GB you jump to Standard-2X at $50, and anything above 1GB means Performance dynos starting at $250. Django and Rails apps, which rarely idle under 1GB, feel this first. Two caveats on the table: Heroku’s cheapest pick for light stacks may be an Eco dyno, which sleeps after 30 minutes idle — fine for staging, not for production — and Railway’s figure is the plan floor, because its compute is metered per second (see the full-bill table below).
The full bill: web + worker + Postgres + Redis
Nobody runs just a web dyno. Here is a typical small Heroku app — one web process, one worker, ~10GB of Postgres and a tiny Redis — priced line by line from each provider’s official pricing page (verified 2026-09-24). A bigger Redis changes the picture fast — see managed Redis pricing at 3 sizes:
Heroku$26.00/mo
- Web: Basic dyno 512MB$7.00
- Worker: Basic dyno 512MB$7.00
- Postgres Essential-1 (10GB)$9.00
- Key-Value Mini$3.00
- Egress$0.00
Basic dynos (max 1 per process type), Essential-1 Postgres (no HA), Key-Value Mini 25MB. No egress charge at this volume.
Render$33.35/mo
- Web: Starter 512MB$7.00
- Worker: Starter 512MB$7.00
- Postgres Basic-256mb + 10GB × $0.30$9.00
- Key Value Free 25MB$0.00
- Egress: 69GB × $0.15 (5GB incl.)$10.35
Hobby workspace (solo). Teams need the Pro workspace at $25/mo, which also lifts included bandwidth to 25GB.
Railway$22.96/mo
- Web: avg 0.5GB RAM, 0.1 vCPU$7.00
- Worker: avg 0.25GB RAM, 0.05 vCPU$3.50
- Postgres template: 0.5GB, 0.05 vCPU, 10GB volume$7.56
- Redis template: 0.1GB, 0.01 vCPU$1.20
- Egress: 74GB × $0.05$3.70
Pro plan: Hobby caps volumes at 5GB, so a 10GB Postgres needs Pro, whose $20 minimum includes $20 of usage — the bill equals usage once it passes $20. Utilisation below is our stated assumption — your real usage decides the bill.
Fly.io$51.85/mo
- Web: shared-cpu-1x 512MB$3.69
- Worker: shared-cpu-1x 512MB$3.69
- Managed Postgres Basic + 10GB × $0.28$40.80
- Redis on shared-cpu-1x 256MB$2.19
- Egress: 74GB × $0.02$1.48
Machine prices include the 1 Oct 2026 memory price rise ($6/GB-month). Managed Postgres Basic includes HA, backups and pooling — more than Heroku Essential, so not like-for-like. Redis self-run on a 256MB machine.
The uncomfortable conclusion: for a small app, Heroku is not the expensive option. Essential Postgres at $9 is cheap, Key-Value Mini is $3, and Heroku does not meter egress at this volume, while Render charges $0.15/GB past its 5GB allowance and Fly’s cheapest managed Postgres is $38 (with high availability you may not need yet). Railway (on Pro, because Hobby volumes stop at 5GB) can undercut it, but only if your processes really idle as low as we assumed — a busier worker or a hungrier Postgres erases the gap quickly. If your Heroku bill is under ~$50 and the app is stable, migrating for price alone is hard to justify. Migrate because of the roadmap freeze, or because you are about to grow.
Where leaving pays: scaling past 1GB
Two web instances with at least 2GB of RAM each — a modest step for a growing Rails or Django app:
| Provider | $/month | What you get |
|---|---|---|
| Heroku | $500.00 | 2 × Performance-M (2.5GB, dedicated CPU) — Standard-2X tops out at 1GB |
| Render | $50.00 | 2 × Standard (1 CPU / 2GB) |
| Railway | $60.03 | 2 × (2GB + avg 0.5 vCPU), usage-billed estimate |
| Fly.io | $25.40 | 2 × shared-cpu-1x 2GB (shared CPU, not dedicated), October 2026 memory pricing |
This is the real gap: roughly an order of magnitude between Heroku’s Performance-M and Render’s Standard for comparable RAM. To be fair to Heroku, Performance dynos give you dedicated CPU, which Fly’s shared-cpu machines do not — CPU-heavy apps should compare against Fly’s performance machines or Render’s higher tiers instead. But most web apps are memory-bound, not CPU-bound, and for them the Heroku premium past 1GB is steep.
The do-it-yourself floor: one VPS
If you are comfortable owning the ops (or using an open-source PaaS layer like Coolify, Dokku or Kamal on top), a single VPS can host web, worker, Postgres and Redis together. Cheapest plans with at least 4GB RAM in our data set as of 2026-10-05:
| Provider | Plan | RAM | $/month | Notes |
|---|---|---|---|---|
| OVHcloud VPS | VPS-1 | 4GB | $4.54 | Unlimited @500Mbps; 40GB NVMe; 12-mo upfront |
| Hostinger VPS | KVM 1 | 4GB | $6.49 | PROMO 24-mo; renews $11.99; 50GB NVMe |
| Hetzner Cloud | CX23 | 4GB | $7.09 | €5.99 incl IPv4 (€5.49 + €0.50 IPv4, excl. VAT; was €3.99 + IPv4 before 2026-06-15); 40GB SSD, 20TB traffic; Cost-Optimized line shown as currently unavailable on hetzner.com (checked 2026-10-09) |
| Hetzner Cloud | CAX11 (Arm) | 4GB | $7.59 | €6.49 incl IPv4 (€5.99 + €0.50 IPv4, excl. VAT; was €4.49 + IPv4 before 2026-06-15); Ampere Arm; 40GB SSD, 20TB traffic; Cost-Optimized line shown as currently unavailable on hetzner.com (checked 2026-10-09) |
The price is not the whole cost: backups, OS patching, Postgres upgrades and 3 a.m. disk alerts become yours. That trade is worth it for some teams and a false economy for others — the thing Heroku sold was never compute, it was not having to think about compute.
Which alternative fits which Heroku user
- Closest to the Heroku experience: Render — git-push deploys, managed Postgres and Key Value, cron jobs, preview environments, flat per-instance prices. See Render vs Heroku.
- Many small or bursty services: Railway — you pay for what the process actually uses, which is cheap for idle apps and less predictable for busy ones. See Railway vs Heroku.
- Users on several continents: Fly.io — cheap machines in many regions and $0.02/GB egress, at the cost of more infrastructure concepts to learn. See Fly.io vs Heroku, and how Fly’s October 2026 memory price rise changes machine prices.
- EU data residency: Koyeb and orkestr.eu are in the table above (Koyeb now starts at $29/month for new accounts — what that $29 buys); check all Heroku alternatives ranked by cost.
- Small, stable app, happy on Heroku: stay. Keep a Dockerfile in the repo and a tested
pg_dumprestore so leaving is a day’s work, not a project.
Migration costs that are not on any pricing page
- Buildpacks → containers. Render, Railway and Fly all have their own builders, but a Dockerfile is the portable path — write it once and every alternative (and a VPS) can run it.
- Database move.
heroku pg:backups:capture, download, thenpg_restoreinto the new database. Plan a short write freeze; rehearse it on a copy first. - Add-ons. Each Heroku add-on (logging, Scheduler, monitoring, search) needs a replacement. Scheduler maps to native cron on Render and Railway and scheduled machines on Fly; paid logging and APM add-ons often move unchanged because they are third-party services.
- Config vars and DNS.
heroku config -sexports env vars in one go; lower your DNS TTL a day before cut-over.
Run your own numbers
Plan-by-plan pages: Rails on Render, Django on Fly.io, Node API on Railway, or the full hosting cost calculator. Related reading: Is Vercel worth it?, Vercel Flat Rate CDN explained and Hetzner’s 2026 price increase. Database-only comparison, Neon and Supabase included: managed Postgres pricing 2026.
Methodology: compute rows in the first and VPS tables come from our live data set (2026-10-05), refreshed weekly. Database, add-on, Railway per-second and scaling prices were read from official pricing pages on 2026-09-24; Fly.io machine, Postgres and Railway rates were re-checked on 2026-10-08after Fly’s October memory price rise. Railway figures are estimates at the stated utilisation, converted from per-second rates over a 30-day month. Traffic is our “startup” scenario (~74GB/month). None of the PaaS providers in this article pay us anything; some VPS providers in the last table have affiliate links (disclosed in the footer), which never change the ordering.
FAQ
Is Heroku shutting down in 2026?
No. In February 2026 Heroku moved to a "sustaining engineering" model: stability, security and support continue, but no new features, and no new Enterprise Account contracts. Heroku said pricing and billing for existing and credit-card customers do not change.
Is it cheaper to leave Heroku for Render, Railway or Fly.io?
For a small app on Basic dynos with Essential Postgres, usually not by much: Heroku does not meter egress at that volume and its $9 Postgres is cheap, while Fly's cheapest managed Postgres is $38. The savings appear once a process needs more than 1GB of RAM, where Heroku jumps to $250 Performance-M dynos and Render, Railway or Fly charge a fraction of that.
Which Heroku alternative is closest to the Heroku experience?
Render: git-push deploys, managed Postgres and Key Value, cron jobs, preview environments and flat per-instance prices. Railway suits many small or bursty services because it bills actual usage per second; Fly.io suits apps that need several regions.
Did Fly.io get more expensive in October 2026?
Yes. From 1 October 2026 Fly.io charges $6.00 per GB-month of memory instead of $5.00; CPU prices are unchanged. A shared-cpu-1x machine with 512MB now lists at $3.69 a month and with 2GB at $12.70 in Fly's cheapest regions.