On February 12, 2026, Heroku announced its transition to "sustaining mode." No new features. No new enterprise contracts for new customers. Salesforce is redirecting investment elsewhere.
I wrote about what this means the day it happened. But since then, the most common question I've been hearing is simpler: "OK, so where do I go?"
This post is my honest attempt to answer that. I've been in the deployment business since 2012 — I've watched over 25 PaaS providers launch, grow, and die. I know what matters and what doesn't when you're choosing a platform for production.
Here are the alternatives worth considering, what they cost, and what tradeoffs you're making with each one.
How to Think About This
Before comparing platforms, it helps to decide what you actually want. The Heroku alternatives landscape breaks into three camps:
Traditional PaaS — you push code, they run it on their infrastructure. Simple, but you don't own anything. Render, Railway, and Fly.io are here.
Managed deployment to your own infrastructure — you push code, they deploy it to servers you control, in your cloud account. You get PaaS simplicity with infrastructure ownership. Cloud 66 is here.
DIY — you set up everything yourself. Kamal, Dokku, or raw Kubernetes on a VPS. Maximum control, maximum operational overhead.
The question isn't which camp is "best." The question is: what do you actually need for the next 3–5 years? Because if the last 14 years of PaaS history have taught us anything, it's that platforms come and go. The less dependent you are on any single vendor's infrastructure, the less you'll have to migrate when the next one announces "sustaining mode."
The Alternatives
1. Render
What it is: A managed PaaS that runs your code on their infrastructure. Often called "the new Heroku" because the experience is similar: connect a Git repo, deploy, done.
Best for: Teams that want the simplest possible deployment experience and don't mind running on someone else's servers.
Pricing: Web services start at $7/month (Starter) and $25/month (Standard) for production workloads. Managed Postgres starts at $7/month for a 256MB dev instance, but realistic production databases start higher. Team plans cost $19/user/month on top of compute.
What's good: The developer experience is genuinely excellent. Git-push deploys, preview environments for PRs, managed databases, and auto-SSL all work out of the box. If you're a small team deploying a straightforward web app, Render gets you from zero to production in minutes.
What's not: Render runs everything on their infrastructure — same lock-in model as Heroku. No SSH access to your servers. No custom packages. No firewall controls. Limited deployment strategies (no blue/green or canary). And the pricing adds up quickly: a web service plus Sidekiq worker plus Postgres plus Redis on production-grade instances easily crosses $100/month before you've handled staging environments.
The Heroku comparison: Render is cheaper than Heroku and more modern, but it's architecturally the same bet: you're trusting your production workload to a platform you don't control.
2. Fly.io
What it is: A globally distributed platform that runs your containers on bare-metal servers spread across 30+ regions. The pitch is low-latency deployment close to your users.
Best for: Applications that need to serve users globally with minimal latency, and teams comfortable with some infrastructure configuration.
Pricing: Usage-based, billed per second. A basic shared-CPU machine starts around $2/month. Managed Postgres plans start at $38/month (Basic, 1GB RAM) and scale to $282/month (Launch, 8GB) for production. Volumes are $0.15/GB/month. Dedicated IPv4 addresses cost $2/month each. Outbound bandwidth starts at $0.02/GB.
What's good: The global edge deployment is a genuine differentiator — no other platform at this price point makes it easy to run your app in multiple continents. The pricing is granular and usage-based, which can be cheaper than fixed-tier platforms for bursty workloads.
What's not: The developer experience has a steeper learning curve than Render or Heroku. You're working with a CLI tool and a fly.toml config file, making decisions about regions, machine sizes, and networking. The Postgres offering requires you to manage your own database in some configurations. Costs can be unpredictable — volumes bill even when machines are stopped, IPv4 addresses add up across multiple apps, and data transfer costs between regions are easy to underestimate.
The Heroku comparison: Fly.io is more powerful and flexible than Heroku, but also more complex. It's a step toward infrastructure ownership without fully getting there — your code still runs on Fly's metal.
3. Railway
What it is: A modern PaaS focused on speed and simplicity. Railway's pitch is the fastest path from repo to running app.
Best for: Solo developers, side projects, MVPs, and early-stage startups that prioritize deployment speed over production robustness.
Pricing: Hobby plan is $5/month (includes $5 in compute credits). Pro plan is $20/month per seat (includes $20 in credits). Compute is usage-based: roughly $0.000463/min per vCPU and $0.000231/min per GB of RAM. A typical small web app with a Postgres database runs $10–20/month. Enterprise starts at $2,000/month.
What's good: Arguably the best developer experience of any platform right now. Connect GitHub, push, and you're live with a URL in under two minutes. Built-in databases (Postgres, MySQL, MongoDB, Redis) with one-click provisioning. The usage-based pricing means you only pay for what you actually consume, which is great for low-traffic or bursty apps.
What's not: Railway is young (founded 2020) and small. Only 4 data center regions. Limited enterprise features. No SSH access, no blue/green deploys, no advanced networking. The usage-based model can surprise you — a database-heavy app or a memory-hungry background worker can blow past the included credits quickly. And like every other PaaS on this list, your code runs on their infrastructure.
The Heroku comparison: Railway feels like what Heroku would have built if it started today. Simpler, cheaper, more modern — but also less mature and with the same fundamental lock-in.
4. DigitalOcean App Platform
What it is: A managed PaaS from DigitalOcean, built on top of their well-established cloud infrastructure.
Best for: Teams already using DigitalOcean, or those who want PaaS simplicity backed by a large, profitable cloud company.
Pricing: Free tier for static sites. Web services start at $5/month for basic containers. Dedicated CPU instances from $12/month. Dev databases at $7/month, production managed Postgres from $15/month. Bandwidth included per container instance.
What's good: DigitalOcean is a real company with real revenue and a 14-year track record. The App Platform integrates well with their broader ecosystem (Droplets, managed databases, Spaces storage). Pricing is transparent and predictable. The new per-second billing (since January 2026) gives fine-grained cost control.
What's not: The App Platform is DigitalOcean's PaaS layer, not their core business. Features ship slower than dedicated PaaS competitors. Limited to DigitalOcean's infrastructure — you can't bring your own cloud. Fewer regions than Fly.io. The DX is good but not as polished as Railway or Render.
The Heroku comparison: More affordable than Heroku, backed by a stronger parent company, but still a PaaS you don't control. DigitalOcean is less likely to enter "sustaining mode" than Heroku, but the vendor lock-in is structurally the same.
5. Cloud 66
What it is: A managed deployment platform that deploys and manages your applications on servers you own. Connect your code, pick any cloud provider (AWS, DigitalOcean, Hetzner, Google Cloud, Azure, Vultr, or your own hardware), and Cloud 66 handles the rest: provisioning, deployment, database management, SSL, monitoring, scaling, and security patching.
Best for: Teams that want PaaS-level simplicity but need to own their infrastructure. Rails teams especially — Cloud 66 has the deepest native Rails support of any platform.
Pricing: Cloud 66 pricing starts at $12/month per server for the Developer plan. You pay Cloud 66 for the management layer and your cloud provider separately for the actual servers. A typical Rails app (web + Sidekiq + Postgres + Redis) on Hetzner runs around $30–50/month total. The same setup on Heroku would cost $500+.
What's good: You own your servers. If Cloud 66 disappeared tomorrow, your apps would still be running — there's nothing to migrate away from. You get SSH access, custom packages, no arbitrary timeouts, and full firewall control. Managed Postgres, MySQL, MongoDB, Redis, and Elasticsearch on your own servers with private networking. Native support for blue/green, canary, and rolling deployments. The most comprehensive Rails support in the industry: Procfile management, asset pipeline, database migrations, Sidekiq management — all handled automatically.
What's not: The initial setup takes a few more steps than Render or Railway — you're choosing a cloud provider and configuring a server, not just connecting a repo. Cloud 66 doesn't host your application, which means you're managing a cloud account (though Cloud 66 handles all the DevOps on top of it). It's not the right choice for someone who wants zero infrastructure awareness.
The Heroku comparison: Cloud 66 is what Heroku would look like if it deployed to your infrastructure instead of locking you into theirs. Same developer-friendly experience — git push, automated deploys, managed databases — but with full ownership. And the cost savings are dramatic: 50–90% less than Heroku depending on your setup.
Full disclosure: I'm the founder of Cloud 66. I've tried to be fair to every platform in this post — they all have real strengths. But I also believe that deploying to your own servers is the right architectural decision for most production applications, and I'll make that case below.
6. Dokku
What it is: An open-source, self-hosted PaaS that you install on your own VPS. Often called "the smallest PaaS implementation."
Best for: Solo developers who want Heroku-like git-push deploys on a single server they control, and who are comfortable with command-line server administration.
Pricing: Free (open source). You pay only for your VPS — as low as $4/month on DigitalOcean or $3.29/month on Hetzner.
What's good: Genuinely free. Heroku-compatible buildpacks work out of the box. The deployment experience is remarkably close to Heroku for a self-hosted solution. Perfect for side projects and small apps where cost is the primary concern.
What's not: Single-server only — there's no built-in clustering, load balancing, or multi-server management. You handle all server security, updates, database backups, and monitoring yourself. No team features, no deployment pipelines, no blue/green deploys. When your app outgrows one server, you've outgrown Dokku.
7. AWS Elastic Beanstalk / Google Cloud Run
What they are: Managed deployment services from the hyperscalers. Elastic Beanstalk is AWS's PaaS layer; Cloud Run is Google's serverless container platform.
Best for: Teams already deeply invested in AWS or GCP ecosystems.
Pricing: Elastic Beanstalk itself is free — you pay for the underlying EC2, RDS, and other AWS resources. Cloud Run pricing is per-request with generous free tier (2 million requests/month free).
What's good: Backed by the largest cloud companies on earth. Massive scale ceiling. Deep integration with each provider's ecosystem (S3, RDS, SQS, Cloud SQL, etc.). Not going anywhere.
What's not: The developer experience is nowhere near Heroku-level simplicity. Elastic Beanstalk's abstractions leak — you'll inevitably end up debugging EC2 instances, security groups, and IAM policies. Cloud Run's serverless model brings cold start penalties and doesn't suit long-running processes. Both create deep vendor lock-in to their respective cloud providers.
The Real Cost Comparison
Numbers matter more than marketing. Here's what a typical production setup costs across platforms — a web app with a background worker, Postgres database, and Redis cache:
Component: Web (2.5 GB RAM)
- Heroku: $250/mo
- Render: $85/mo
- Fly.io: ~$50/mo
- Railway: ~$45/mo
- Cloud 66 + Hetzner: ~$20/mo
Component: Background worker
- Heroku: $50/mo
- Render: $25/mo
- Fly.io: ~$15/mo
- Railway: ~$15/mo
- Cloud 66 + Hetzner: $0 (same server)
Component: Postgres (8 GB)
- Heroku: $200/mo
- Render: $50/mo
- Fly.io (Launch): $282/mo
- Railway: ~$40/mo
- Cloud 66 + Hetzner: ~$20/mo
Component: Redis
- Heroku: $30/mo
- Render: $25/mo
- Fly.io (Upstash): $10/mo
- Railway: ~$10/mo
- Cloud 66 + Hetzner: $0 (same server)
Total
- Heroku: ~$530/mo
- Render: ~$185/mo
- Fly.io: ~$357/mo
- Railway: ~$110/mo
- Cloud 66 + Hetzner: ~$52/mo
These are rough estimates — real costs depend on traffic, storage, and configuration. But the pattern is clear. Heroku is by far the most expensive. The traditional PaaS options (Render, Fly, Railway) are cheaper but still carry platform margins. Running on your own servers with Cloud 66 and a provider like Hetzner is dramatically cheaper because you're paying for actual hardware, not a platform markup.
The savings compound with scale. If you're running multiple apps, staging environments, or higher-resource databases, the difference between $530/month and $52/month becomes the difference between $5,000/month and $500/month.
Which One Should You Pick?
Here's my honest take — and yes, I'm biased, but I'll try to be useful.
Choose Render if you want the closest thing to "new Heroku" — simple, managed, and you don't mind paying a platform premium for not having to think about servers. Great for small teams shipping their first production app.
Choose Railway if you're building a side project or MVP and want the fastest possible deployment experience. Excellent DX, but think about your exit plan before you go to production.
Choose Fly.io if you need to serve users globally with low latency and you're comfortable with more infrastructure configuration. Powerful but not simple.
Choose DigitalOcean App Platform if you're already in the DigitalOcean ecosystem and want a PaaS that's backed by a stable, profitable company.
Choose Cloud 66 if you want to own your infrastructure while still getting a managed deployment experience. Especially if you're running Rails — no other platform comes close to Cloud 66's native Rails support. And if you're concerned about vendor lock-in (which, after Heroku's announcement, you should be), the "deploy to your own servers" model means there's nothing to migrate away from.
Choose Dokku if you're a solo developer running a single app and want to spend as close to $0 as possible.
Choose AWS/GCP if you're an enterprise team with dedicated DevOps engineers who can handle the operational complexity.
The Bigger Lesson
Every few years, a PaaS provider dies, gets acquired, or stops investing. dotCloud, Nodejitsu, AppFog, Ninefold, Gondor — the list is long. Heroku is just the latest chapter.
Each time, thousands of developers scramble to migrate. New platform, new constraints, new billing model, new migration project. The cycle repeats.
The question worth asking isn't "which Heroku alternative should I pick?" It's "how do I stop playing this game entirely?"
The answer — and I've been saying this for 14 years — is to own your infrastructure. Use great tooling on top of it. But make sure that if the tooling goes away, your servers are still running, your apps are still serving traffic, and your databases still have your data.
That's not a sales pitch. That's a lesson from watching 25+ platforms die.
If you want to try Cloud 66, your first app deploys in minutes and your first server is free. And if you're migrating from Heroku specifically, we have a step-by-step migration guide and a detailed Cloud 66 vs Heroku comparison to help.
We've been doing this since 2012. We're not going anywhere.
