Fly.io Free Tier vs Railway: Actual Monthly Costs for Hobby Projects

Deploying a side project used to mean paying $5/month minimum, no questions asked. Now both Fly.io and Railway offer free tiers โ but the actual cost when your project wakes up at 3am and starts chewing through resources? That’s a different number entirely.
The marketing page tells you one story. Your credit card statement tells you another. Both platforms have restructured their pricing in the past 18 months. If you’re still working off 2024 assumptions, you’re probably making the wrong platform choice.
This analysis covers what each platform actually gives you for free in 2026, where costs appear unexpectedly on real hobby workloads, a direct comparison across five cost criteria, and which platform wins for which type of project.
Key Takeaways
- Fly.io’s free tier allocates 3 shared-CPU VMs, 256MB RAM each, and 3GB persistent storage at no charge โ but egress and IPv4 addresses add ~$2โ4/month even on “free” projects.
- Railway’s Hobby plan costs $5/month flat after the free trial period ends, with $5 in monthly credits included โ meaning straightforward projects often run at zero net cost within that credit window.
- Fly.io’s per-resource billing model rewards sparse, low-traffic apps; Railway’s credit model rewards apps with predictable, moderate resource consumption.
- Neither platform is truly free once you add a custom domain, static IP, or persistent database โ regardless of what the pricing page suggests.
Why Free Tier Pricing Got Complicated
Both platforms took different paths to where they are today. Fly.io launched in 2017 as a Docker-to-edge-VM platform and spent years targeting developers who wanted Heroku-level simplicity with more geographic control. Railway launched in 2020 with a sharper focus on developer experience โ one-click deploys, GitHub integration, zero config.
The real shift happened in 2023โ2024. Heroku killed its free tier in November 2022, pushing thousands of hobby developers toward alternatives. Fly.io and Railway both absorbed that migration and adjusted pricing accordingly. Fly.io moved to a granular usage-based model. Railway introduced its current credit system where a $5/month Hobby plan includes $5 in usage credits โ effectively free if your app stays within limits.
By early 2026, the picture looks meaningfully different from the 2023 version most blog posts still describe. Fly.io now charges for IPv4 addresses ($0.005/hour, roughly $3.60/month per address, per Fly.io’s official pricing docs). Railway’s credit system has tightened โ the $5 credit covers about 8GB RAM-hours or roughly 500 vCPU-hours per month, according to Railway’s pricing page.
The broader market context matters too. Render, Northflank, and Koyeb are all competing in this space. According to Northflank’s 2026 platform comparison blog, developer platform pricing has trended toward consumption models over flat-rate plans โ which makes the “free tier” conversation more nuanced than ever.
What “Free” Actually Means on Each Platform
On Fly.io, the free allowances (per their official cost management docs) include up to 3 shared-CPU-1x VMs with 256MB RAM, 3GB persistent volume storage, and 160GB outbound data transfer per month.
That sounds generous. The catch is IPv4. Every app needs a dedicated IPv4 address by default, and Fly.io charges $0.005/hour for each one โ that’s ~$3.65/month. You can use shared IPv4 via a Fly proxy, but that requires fly-replay headers and breaks some WebSocket setups. Most hobby devs don’t notice this charge until month two.
Railway’s free tier is technically a trial. New accounts get $5 in one-time credits. After that, you’re on the $5/month Hobby plan. But since that plan includes $5 in monthly usage credits, a small app โ say, a Node.js API with a Postgres database running at ~0.5 vCPU and 512MB RAM โ will consume roughly $2โ3 in credits per month and cost nothing net.
The core difference: Fly.io’s “free” is genuinely free but hides costs in networking. Railway’s “free” is a paid plan with credits that offset typical usage.
Where Costs Escalate on Real Hobby Workloads
Consider a typical hobby stack: a REST API, a PostgreSQL database, and a Redis instance.
On Fly.io, that setup costs:
- API VM: free (within the 3 VM allowance)
- Postgres (via
fly postgres): ~$0.02/hour for the smallest config = ~$14.40/month if always-on - IPv4 for each app: ~$3.65/month each
- Redis (via Upstash integration): billed separately by Upstash, not Fly
On Railway, that same stack:
- API service: ~$1โ2/month in credits
- Railway-managed Postgres: ~$0.000231/GB-hour, roughly $0.50โ1/month for small datasets
- Redis: ~$0.50โ1/month in credits
- Total: ~$2โ4/month, absorbed by the $5 credit
For a three-service hobby stack, Railway wins on predictability. Fly.io wins only if you’re running a single lightweight app with IPv6-only networking โ an edge case most devs won’t bother with.
Direct Comparison: Five Cost Criteria
| Criteria | Fly.io | Railway |
|---|---|---|
| Monthly base cost | $0 (+ IPv4 ~$3.65/app) | $5/month (includes $5 credit) |
| Compute free allowance | 3 VMs, 256MB RAM each | ~$5 credit covers ~500 vCPU-hours |
| Managed database cost | ~$14/month (always-on Postgres) | ~$0.50โ1/month (small DB) |
| Egress | 160GB free, then $0.02/GB | Included in credit calculation |
| Sleep/scale-to-zero | Yes, via fly scale count 0 | Yes, supported natively |
| Custom domain + TLS | Free | Free |
| Best for | Single low-traffic app, IPv6-ok | Multi-service hobby stacks |
The table makes one thing clear: Railway is cheaper for multi-service projects. Fly.io is cheaper only for minimal single-app setups where you can sidestep the IPv4 charges entirely.
The Hidden Cost: Developer Time
Fly.io has a steeper learning curve. The flyctl CLI is powerful but quirky โ fly.toml configuration takes time to get right, and debugging networking issues (especially with Fly’s private networking and 6PN) adds hours you weren’t planning to spend.
Railway’s UI-driven deploy flow is genuinely fast. For a side project where your time costs more than $5/month, that gap matters more than any line item in the billing dashboard.
According to the Kuberns 2026 Fly.io guide, one of the most common pain points is the mismatch between Fly.io’s documentation and its actual billing behavior โ particularly around machine states and how “stopped” machines still accrue storage costs. That’s the kind of surprise that shows up after three weeks, not three minutes.
Three Scenarios, Three Different Answers
Scenario 1 โ A solo Discord bot or webhook handler (single service, low traffic)
Fly.io wins. One VM, no database, configure IPv6-only or absorb the $3.65 IPv4 charge. Total monthly cost: $0โ4. Railway would cost ~$1โ2 in credits, technically within the free $5 allowance, but Fly.io gives you more raw control over the VM for this use case.
Scenario 2 โ A portfolio app with a database (API + Postgres)
Railway wins clearly. The managed Postgres on Railway costs under $1/month for hobby-sized data. The same setup on Fly.io runs $14+/month if you want an always-on instance. Scale-to-zero on Fly.io’s Postgres is possible, but the cold-start latency breaks the experience in ways that matter.
Scenario 3 โ A multi-region app (API deployed in 3+ regions)
Fly.io wins, and it’s not close. Multi-region deployment is a core Fly.io feature โ you can deploy VMs in 30+ cities with one command. Railway doesn’t offer multi-region at the Hobby tier. If your hobby project needs geographic distribution (a globally distributed game backend, a latency-sensitive API), Fly.io’s architecture is built for exactly that.
Where Things Are Heading
The breakdown in 2026 comes down to this:
Railway costs $5/month with $5 in credits โ net zero for small multi-service projects, predictable billing, faster setup. Fly.io is technically free but adds IPv4 charges (~$3.65/app/month), making it cost-comparable to Railway for most devs. Database costs flip the comparison โ Railway’s managed Postgres is dramatically cheaper for always-on hobby databases. Fly.io wins on multi-region โ no other free-tier platform offers comparable geographic distribution at this price point.
Over the next 6โ12 months, watch for two shifts. Railway’s credit model may tighten further as the platform scales โ the $5 credit covering full hobby usage is generous, and that generosity has limits. And Fly.io is actively expanding its Machines API, which may unlock cheaper, more granular billing for micro-workloads. Both platforms have financial pressure to convert free users into paying ones. The current deals won’t stay this good indefinitely.
The right call: single-service app and comfortable with CLI tooling? Fly.io works. Anything with a database or multiple services? Railway’s billing model is simpler and usually cheaper.
What does your hobby stack look like โ single service or multi-component? That answer determines which platform actually costs you less.
References
- Cost Management on Fly.io ยท Fly Docs
- Top 6 Fly.io alternatives in 2026 | Blog โ Northflank
- What Is Fly.io? Complete Guide to Deployment, Pricing, and Limitations in 2026 โข Kuberns


