Railway Hosting vs Render vs Fly.io: Billing Compared
How three hosts bill the same micro-SaaS: utilization, provisioned VM, and fixed service size. Dated prices, a worked example, and the keep-or-drop rule.
Filed under Decision Guides· see every report on this topic
Pick Railway if your service is small, mostly quiet, and you will watch usage. Pick Fly.io if a small, fixed Machine is safe and you want the lowest floor in this example. Pick Render if you would rather pay more for its managed-service path. Do not choose from “from $0” badges. Railway bills use; Fly bills a started Machine; Render bills a service size.
Proof status. Vendor prices and limits below came from official vendor pages on 21 August 2026. Every vendor figure is inline-linked. The worked example is a model, not production telemetry. Databases, managed add-ons, different Fly regions, taxes, payment processing, and custom contracts are outside it unless stated. Treat those as unverified for your deployment and check the linked pages before committing.
The operator and the leak
Nora is a solo developer with a small B2B SaaS: one public API and web app, a managed database elsewhere, no user uploads, and a background job that is not yet a separate worker. The app is quiet most of the day, but a paying customer must get a response when they click.
She needs an idle baseline she can budget and a recovery path she can trust. Container runtime does not decide that bill. The billing unit does.
Compare the billing meter first
This table asks what remains billable when traffic disappears.
| Host | Invoice meter | Idle result | Pick it when |
|---|---|---|---|
| Railway | Consumed CPU, RAM, volume, egress; plan credit offsets usage | RAM held by a process costs money | Usage stays below a safe cap |
| Fly.io | Started CPU/RAM Machine time, plus storage and applicable egress | Machine compute has a clear floor | A fixed Machine is enough |
| Render | Chosen service size, workspace plan, metered items | Selected capacity costs money while quiet | Managed-service guardrails matter |
Railway Hobby is $5/month including $5 of usage. RAM costs $10/GB-month, CPU $20/vCPU-month, volume storage $0.15/GB-month, and egress $0.05/GB. The bill follows consumption, but not requests. Railway says an idle running service still consumes billed CPU and RAM.
Fly bills started Machines per second. In its Amsterdam matrix, a shared-cpu-1x Machine with 512 MB costs $3.32/month. North America/Europe public egress costs $0.02/GB. Nora’s average 5% CPU does not shrink that provisioned 512 MB unit.
Render Hobby is $0/month plus compute. A paid Starter web service is $7/month for 512 MB and 0.5 CPU, prorated by the second. Hobby includes 5 GB of bandwidth, then charges $0.15/GB. Its tiny paid floor is higher in this case.
Price the same 30-day API
The fixture runs one always-on service for 30 days: 0.35 GB average RAM, 0.05 vCPU average CPU, and 10 GB public egress. It includes no disk, database, custom-domain charge, build overage, preview environment, second replica, worker, tax, or managed add-on. Fly uses Amsterdam because its Machine price changes by region; egress uses Fly’s North America/Europe rate.
This is not a performance-equivalence test. Railway uses average consumption. Fly and Render need a provisioned size that can safely carry the workload.
| Host | Calculation | Monthly bill |
|---|---|---|
| Railway Hobby | 0.35 GB × $10 + 0.05 vCPU × $20 + 10 GB × $0.05 = $5.00 (rates); Hobby credit absorbs it | $5.00 |
| Fly.io | Amsterdam shared-cpu-1x 512 MB: $3.32 + 10 GB × $0.02 (pricing) |
$3.52 |
| Render Hobby + Starter | $7 + (10 − 5 GB incl.) × $0.15 (pricing) | $7.75 |
Fly is $1.48/month below Railway. Railway is $2.75/month below Render. That only says a single 512 MB Fly Machine is cheapest if it is safe. It does not make Fly the default for every app.
Railway reaches its important boundary at the $5 Hobby floor. Below it, Nora still pays $5. Above it, average CPU, RAM, and egress raise the bill. An app that truly holds 1 GB of RAM continuously costs about $10/month in Railway RAM, before CPU and egress. Compare real 30-day metrics with a Fly Machine or Render instance that can hold that load.
Render’s boundary is operational. A Standard service costs $25/month for 2 GB and 1 CPU. Short daily spikes can make fixed-instance math look worse than it is; continuous need can make average utilization look too cheap. Use a range once capacity changes.
Name the failure before it names you
Railway can stay expensive while traffic is quiet. It charges allocated resources, and its billing guide calls out memory leaks, public database connections that create egress, and PR environments that duplicate running services. Set a soft alert and a hard usage limit, but Railway takes workloads offline when the hard limit is hit. A cap controls cost. It does not keep the service available.
A stopped Fly Machine is still not gone. Volumes bill while attached or unattached, including when a Machine is stopped, and root filesystem charges remain. Fly warns that metrics-based autoscaling can create Machines and says its cost guide has no billing alerts. Check Machines, volumes, snapshots, managed services, and IPs before treating auto-stop as savings.
Render’s Free tier is for development, not a customer workflow. A Free web service spins down after 15 idle minutes and takes about one minute to spin up; its local filesystem is ephemeral. A persistent disk disables zero-downtime deploys and prevents scaling to multiple instances. Do not turn a local SQLite file into an accidental production database.
Storage, egress, previews, replicas, databases, and workers are separate resources on every host. Fly says background workers bill; Render bills every scaled instance. Price the topology, not one web container.
When a host move is premature
Do not move because the current invoice feels wrong. Fix the missing evidence first:
- No 30-day RAM, CPU, egress, and uptime record means the calculator is guessing.
- A memory leak, polling loop, or oversized response will follow you to the next host.
- Local durable data needs backups, restore testing, and a managed database or disk plan.
- Fly’s headline price does not help if you cannot operate a VM, volumes, regions, and a rollback under pressure.
Bottom line
Railway sells observed resource consumption with a $5 Hobby floor. Fly sells time on a Machine you provision. Render sells a managed service size. Nora’s narrow 512 MB-class fixture comes out at $5.00, $3.52, and $7.75 from cited prices on 21 August 2026. Pick the meter that matches the workload and the amount of infrastructure work you can own.
More on this decision, three ways to look at it:
Get the next verdict before it's everywhere.
One email when a new lab post or cost table ships. No spam, no confirmation step — unsubscribe anytime.