Heroku to AWS Migration: The Real Cost and the Easier Path
Heroku's PaaS fee means you're paying 3x what your infrastructure actually costs. AWS is cheaper, but the learning curve is steep. Openship Cloud gives you both: AWS-level pricing with Heroku-level simplicity.
What You'll Actually Pay: Heroku vs AWS vs Openship
Heroku's pricing is built for simplicity, not scale. You pay per dyno, not per second of compute. A Heroku Standard-2X dyno costs $50/mo whether it runs at 10% capacity or 100%.
AWS RDS and EC2 charge by the second.
| Component | Heroku | AWS On-Demand | AWS Reserved | Savings |
|---|---|---|---|---|
| 2x Standard-2X dynos + Postgres Standard-3 + Redis Premium-1 + add-ons | $360/mo | $173/mo | $114/mo | 52-68% |
| Heroku Performance-L dyno (14GB) | $500/mo | $280/mo | $140/mo | 60-72% |
Real case: Checkly migrated from $500/mo Heroku to $80/mo AWS EC2 and RDS. That is an 84% reduction.
The gap widens at higher scale. Heroku's "PaaS tax" - the premium for not managing infrastructure yourself - is 3-5x at $300+/mo spend levels.
The Pain Points That Drive Migration
Cost is the headline, but it is not the only reason teams leave. Heroku's limitations hit hard as your app grows.
Database constraints: Heroku Postgres blocks superuser access. No way to install custom extensions. Major version upgrades require a maintenance window - your app goes down for 1-2 hours.
Compliance and networking: No static IPs. No custom VPCs. No security groups. Private Spaces exist, but they cost $500+/mo and still have limitations. HIPAA and PCI-DSS teams cannot meet requirements on Heroku.
Architectural lock-in: Dynos are a black box. You cannot see the underlying OS, kernel, or network topology. Scaling decisions are binary: size up or add more dynos. No granular control.
Version drift: PostgreSQL example: Heroku can lag major versions by 3-5 years. If you are on PostgreSQL 10 and need 13 (security patches, performance), Heroku forces a full migration with downtime.
AWS solves all of this. But AWS's learning curve is steep: VPCs, security groups, IAM, RDS parameter groups, Auto Scaling policies. Teams ask: "How do I get AWS's control without the AWS complexity?"
Real example: A typical small production stack
2x Standard-2X dynos + Postgres Standard-3 + Redis Premium-1 + add-ons. On AWS on-demand: $173/mo. On AWS reserved (3-year): $114/mo. That is 52-68% savings without any serverless tricks.
The Migration Path: 5 Concrete Steps
From Heroku to AWS in 2-4 weeks. Most teams complete this without major downtime.
Audit your Heroku environment
List all dynos, add-ons, config variables, and database size. Document Heroku-specific features: Scheduler, Private Spaces, or custom Postgres extensions. This inventory is your source of truth.
Containerize your app
Write a Dockerfile that mirrors your Heroku buildpack. Install the same OS dependencies, runtime, and layers. Test it locally with docker-compose. This Docker image runs on EC2 or ECS unchanged.
Migrate your database
Use AWS Database Migration Service to copy Postgres data. Create an RDS instance with the same major version. Test failover and query performance. Plan a 2-4 hour maintenance window for the cutover.
Deploy to AWS
Choose Elastic Beanstalk (simpler, Heroku-like) or ECS (more control). Upload your Docker image. Configure a load balancer, security groups, and Auto Scaling policies. Deploy to staging and run load tests.
Switch DNS and monitor
Point your domain to the AWS load balancer. Monitor error rates, latency, and database performance for 48 hours. Watch for slow queries or connection pool exhaustion. Once stable, decommission Heroku.
Openship Cloud: AWS Costs, Heroku UX
You don't have to choose between Heroku's simplicity and AWS's price. Openship Cloud runs on AWS infrastructure but handles the DevOps for you.
Deploy with Git push (like Heroku). Pay per app, per month (like Heroku). But your app runs on isolated AWS resources, not overbooked shared infrastructure.
The positioning:
Openship is open-source (Apache 2.0). You can self-host it free on any Linux VPS. Or use Openship Cloud, a managed version with the same UX as Heroku but 1/5 the cost.
Openship Starter is $20/mo for 3 apps. Heroku Standard-1X is $25/mo for 1 app. Per-app, Openship is 5x cheaper.
If you have 3 apps on Heroku at $75/mo, Openship Cloud is $20/mo. Same infrastructure, same Git workflow, no AWS learning curve.
What you get:
- Full database control: PostgreSQL, MySQL, MongoDB with superuser access
- No vendor lock-in: Export your app config and data anytime
- Compliance-ready: Isolated VPC, static IPs, custom security groups
- Zero-downtime upgrades: Major version Postgres updates without downtime
- Git deployments: Push to deploy, just like Heroku
Openship is built for teams escaping Heroku's PaaS tax without wanting to become AWS experts.
Why Openship is the best choice for Heroku to AWS migration
The bridge between Heroku's simplicity and AWS's control.
Free to self-host, or managed from $20/month
Openship is open-source Apache 2.0 licensed. Deploy to any Linux VPS for free: Hetzner, DigitalOcean, Linode, your own hardware. You manage infrastructure, you control costs. Or use Openship Cloud for managed hosting at 1/5 the Heroku cost per app.
Full database control, zero lock-in
Superuser access to Postgres, MySQL, or MongoDB. Install custom extensions. Upgrade major versions without downtime. Export your data to any database system. Heroku locks you into their dyno model. Openship doesn't.
Compliance and networking built-in
Isolated VPC, custom security groups, static IPs, and audit trails. HIPAA and PCI-DSS teams get the infrastructure isolation they need. All on infrastructure you control or vet directly.
Built for teams who need reliability
Openship Cloud pricing
Pay for what you use. One app or 50. One credit equals one app-month of compute. Everything you deployed on Heroku works here without code changes.
Loading pricing...
Trust & Compliance
Openship runs on AWS and VPS infrastructure you trust. Your data stays under your control.
GDPR compliant
EU data residency on request. Choose your data center location: Germany, Ireland, or other regions when you deploy.
Open source
Apache 2.0 licensed. Audit the code yourself. Deploy anywhere. No vendor lock-in, ever.
Encrypted backups
Daily snapshots stored encrypted. Restore in seconds, anytime. You own the restore key.
Frequently Asked Questions
Answers to common questions about migrating from Heroku.
Not for a typical team, but it requires planning. The technical lift depends on how deeply you use Heroku-specific features like Scheduler or Private Spaces. Most apps are containerizable in days. The database migration is the critical path - plan 2-4 weeks total from audit to DNS cutover. Openship Cloud skips the AWS learning curve: you get the same Git workflow you had on Heroku, so the barrier is minimal.
Start your migration off Heroku today
Deploy your first app on Openship Cloud free. Scale to 3 apps for $20/month. Keep full control, zero lock-in.