TL;DR: The same app, a web service, a background worker, Postgres and Redis, costs about $20 a month on Railway and $38 on Render when it's small, $104 against $197 at medium size, and $344 against $806 when it's busy. Railway is roughly half the price at every size. One rented Hetzner server runs the same four services for $7, $19 and $36, with Ployz free on top.
- Pick Railway if your services are mostly idle, you serve a lot of traffic, or you want replicas in more than one region.
- Pick Render if you want the same bill every month, your workers or database use their full plan, or you want Postgres point-in-time recovery with no setup.
- Pick Render's free tier if you need a free web service for a demo.
- Pick your own server with Ployz, which I build, if your stack is past the smallest size and you'd rather pay $19 than $104 or $197.
Railway and Render are both platforms as a service: you push code, they build and run it. The difference is the bill. Railway charges for the CPU and memory your services use, minute by minute. Render charges a fixed price for the size of box each service gets, whether you use it or not.
Most "Railway vs Render" pages stop at the starting prices, $5 against $7. That number tells you nothing, because the two platforms bill for different things. I paid Railway $500+ a month at one point, most of it for a busy database, so I've felt how usage billing grows. Today one €80 dedicated server runs more than I ever ran there.
What Railway and Render cost
| Railway | Render | Your own server + Ployz | |
|---|---|---|---|
| Plan fee | $5 Hobby, $20 Pro, both counted as usage credit | $0 Hobby (1 person), $25 Pro (unlimited seats) | $0; Ployz is free |
| Compute | $20 per vCPU and $10 per GB of RAM a month, as used | A fixed plan per service, from $7 | The server: $6.49 to $34.99 at Hetzner (Europe), plus about $0.60 for IPv4 |
| Traffic | $0.05 per GB | 5 GB (Hobby) or 25 GB (Pro) included, then $0.15 per GB | 20 TB included on Hetzner Europe |
| Small app | $20.15 | $38.25 | $7.09 |
| Medium app | $104.00 | $197.25 | $19.09 |
| Large app | $344.00 | $806.25 | $35.59 |
Each app is a web service, a worker, Postgres and Redis; the presets below spell out each size. Pick the one closest to yours, or press "Customize" and set your own. Railway bills the CPU and memory a service uses on average, so the calculator assumes an average for each size and shows it above the totals.
- Postgres data
- 20 GB
- Average usage Railway meters
- 1.55 vCPU, 5.50 GB RAM
- RAM Render allocates
- 9 GB
- Plans
- Railway Pro, Render Pro
- Railway$104/mo
$20/vCPU-month, $10/GB-month RAM, $0.05/GB egress, $0.15/GB-month volume. Hobby $5 or Pro $20, both counted as usage credit. Assumes each service averages well under its Render size (the usage line above).
- Render$197/mo
List price per service plan, Postgres storage at $0.30/GB, traffic past 5 GB (Hobby) or 25 GB (Pro) at $0.15/GB, $25 Pro fee for teams.
- Your own server + Ployz$19/mo
Cheapest Hetzner CX with the RAM Render allocates ($6.49 to $34.99), about $0.60 IPv4. Ployz is free. 20 TB traffic included.
Railway is only cheaper because real apps sit well below the size of box they'd need on Render. A service that runs flat out all month costs about the same on both, and a large Postgres can be cheaper on Render. How they bill shows where that line is.
Railway, Render or your own server: the decision
Start with how your services behave, then check the price. This is the whole decision on one screen; the sections below show the maths behind each row.
| If your app… | Pick | Why |
|---|---|---|
| Is a web app that sits mostly idle | Railway | You pay for average use, not the plan size |
| Serves a lot of traffic | Railway | Egress is $0.05 per GB against Render's $0.15 |
| Needs replicas in more than one region | Railway | Render services live in one region |
| Needs the same bill every month | Render | Fixed plan prices, no usage meter |
| Runs workers or a big database flat out | Render | Small plans and large Postgres are cheaper on Render at full use |
| Needs MySQL or MongoDB | Railway | Render's databases are Postgres and Key Value only |
| Wants Postgres point-in-time recovery with no setup | Render | On for every paid database: 3 days on Hobby, 7 on Pro |
| Is past the smallest size and cost matters most | Your own server | $19 against $104 or $197 at medium size |
Railway suits a typical web app. Set a usage alert, because the bill follows your growth.
Render suits a team that wants a predictable bill. A team of any size pays the same $25 workspace fee.
Your own server suits a stack past the smallest size, or a database of more than a few gigabytes.
How do Railway and Render bill differently?
Railway is usage billing: $20 per vCPU and $10 per GB of RAM per month, metered per second, plus $0.05 per GB of egress and $0.15 per GB-month of volume storage. The $5 Hobby or $20 Pro plan fee is credit: you pay the larger of the fee and your usage. Render is fixed billing: a workspace fee ($0, $25 or $499) plus a flat monthly price for each service's plan, prorated by the second.
Railway's rates are on its pricing page and pricing docs: "If your total resource usage at the end of your billing period is $5 or less, you will not be charged for resource usage." Railway is also clear that idle isn't free: "you pay for allocated resources, not traffic," and "a server running idle still uses memory to stay loaded" (understanding your bill).
Render's pricing FAQ says it charges for "your workspace plan (flat subscription), metered features like bandwidth (usage-based), and compute for your applications." Compute plans are per service, so spare memory in your worker can't be lent to your database.
Here's what each Render plan would cost on Railway if the service used all of it, all month:
| Plan size | Render list price | Railway at 100% use | Railway is cheaper below |
|---|---|---|---|
| 0.5 CPU, 512 MB (web) | $7 | $15 | 47% average use |
| 1 CPU, 2 GB (web) | $25 | $40 | 63% |
| 2 CPU, 4 GB (web) | $85 | $80 | always |
| 4 CPU, 8 GB (web) | $175 | $160 | always |
| 1 CPU, 4 GB (Postgres) | $55 | $60 | 92% |
| 4 CPU, 16 GB (Postgres) | $200 | $240 | 83% |
A Render CPU and a Railway vCPU aren't guaranteed to be the same thing, so read this as a guide. Two things stand out:
- Small Render plans are cheaper if you keep them busy. That's rare for a web app but normal for a worker that chews through a queue.
- A large Postgres that fills its memory is cheaper on Render. Postgres does that on purpose. That was exactly my Railway problem: a database that grew and used every gigabyte it could.
The shape of the bill differs too. Render's bill is the same every month until you change a plan or pass your included bandwidth. Railway's grows with your app, with no ceiling unless you set one. Railway lets you set a hard limit (minimum $10), but at that limit "all your workloads will be taken offline" (usage limits).
What does the same app cost on each, line by line?
On Railway, memory is the biggest line every time. On Render, compute is the biggest line. On the large app, bandwidth comes second: 2 TB costs $296 on Render and $100 on Railway.
The three stacks, all in one region:
- Small: one person. Smallest paid plan for each service, 5 GB of Postgres data, 256 MB Redis, 50 GB of traffic.
- Medium: two people deploying. 1c-2g web and worker, 1c-4g Postgres with 20 GB of data, 1 GB Redis, 300 GB of traffic.
- Large: two 2c-4g web instances, a 2c-4g worker, 2c-8g Postgres with 100 GB of data, 5 GB Redis, 2 TB of traffic.
For Railway I assumed each service averages well under its Render size, as most do. The calculator adds them up in its usage line. For example, I assume 0.5 vCPU and 1 GB for a 1c-2g web service, and 1.2 vCPU and 7 GB for a 2c-8g Postgres. These are assumptions, not measurements. Railway Hobby allows a 5 GB volume and 3 members per project, so past either the bill uses Pro.
| Line | Small: Railway | Small: Render | Medium: Railway | Medium: Render | Large: Railway | Large: Render |
|---|---|---|---|---|---|---|
| Plan or workspace fee | Hobby, credit | $0 | Pro, credit | $25 | Pro, credit | $25 |
| Web service | $6.00 | $7 | $20.00 | $25 | $62.00 | $170 |
| Background worker | $6.00 | $7 | $20.00 | $25 | $31.00 | $85 |
| Postgres compute | $3.50 | $6 | $40.00 | $55 | $94.00 | $100 |
| Postgres storage | $0.75 | $1.50 | $3.00 | $6 | $15.00 | $30 |
| Redis / Key Value | $1.40 | $10 | $6.00 | $20 | $42.00 | $100 |
| Traffic | $2.50 | $6.75 | $15.00 | $41.25 | $100.00 | $296.25 |
| Monthly total | $20.15 | $38.25 | $104.00 | $197.25 | $344.00 | $806.25 |
Render prices come from its pricing page: web and worker plans from $7, Postgres from $6 plus $0.30 per GB of storage, Key Value at $10 for 256 MB, $20 for 1 GB and $100 for 5 GB. Bandwidth past the included 5 GB (Hobby) or 25 GB (Pro) is $0.15 per GB (outbound bandwidth docs). My Render pricing breakdown and Railway pricing breakdown go deeper on each rate card.
Postgres is the line to watch on Railway. In the large app it's $109 of $344, and it grows as the data grows, because Postgres caches as much as memory allows.
Which free tier is better, Railway or Render?
Render's, for a demo you want to leave running. Neither runs an always-on app with a database for free.
- Render gives you a free web service that spins down after 15 minutes idle, a free Postgres that expires after 30 days, and a free in-memory Key Value.
- Railway gives a one-time $5 credit for 30 days, then $1 of usage a month, which buys about 100 MB of RAM.
| Railway | Render | |
|---|---|---|
| Trial | $5 one-time credit, 30 days, no card (pricing) | None needed |
| Ongoing free | $1 of usage a month, 0.5 GB RAM and 0.5 GB volume per service (docs) | 750 free instance hours a month per workspace (free docs) |
| Web service | Runs while credit lasts; can sleep after 5 to 10 minutes idle | Spins down after 15 minutes idle, about a minute to wake |
| Postgres | Counts against the $1 | Free for 30 days, 1 GB, then a 14-day grace period before deletion |
| Redis | Counts against the $1 | 25 MB, in memory only, data lost on restart |
| Builds | Railway "may temporarily suspend resource allocation, including builds, to Free" users at busy times (deployments reference) | 500 build minutes on Hobby |
Railway's sleep feature puts a service to sleep "somewhere between 5 and 10 minutes after its last outbound traffic," and "the first request sent to a slept service may return a 502 Bad Gateway response" (Serverless docs). An open database connection keeps a service awake, so sleep doesn't help an app with a database. I wrote up the Render side, including the cold starts, in Render's free tier, tested against its limits.
How do previews, regions, private networking and logs compare?
Both platforms have pull-request preview environments, private networking and built-in logs. Railway has one-click MySQL and MongoDB as well as Postgres and Redis; Render's databases are Postgres and Key Value. Railway has four regions and can place replicas in more than one. Render has five regions, but each service lives in one, and its private network stops at the region. Railway keeps logs 30 days on Pro; Render keeps 14. Render's full-stack previews need the $25 Pro workspace.
| Railway | Render | Your own server + Ployz | |
|---|---|---|---|
| Billing | Usage per second; plan fee is credit | Workspace fee plus a fixed plan per service | Fixed server price |
| Entry price | $5 Hobby, $20 Pro | $0 Hobby, $25 Pro, $499 Scale | Netcup VPS 500 €8.26 incl. VAT, Hetzner CX23 $6.49 + IPv4; Ployz free, custom domains included |
| Seats | 3 members per project on Hobby, unlimited on Pro | 1 on Hobby, unlimited on Pro | No seat fees; one person per organization, no team invites yet |
| Traffic | $0.05/GB | 5 GB or 25 GB included, then $0.15/GB | 20 TB included on Hetzner EU; included on Netcup |
| PR previews | PR environments, deleted on merge or close (docs); billed as usage | Single-service previews on Hobby; full-stack on Pro, billed like any service, databases start empty (docs) | A preview environment per pull request, on your servers, free |
| Regions | California, Virginia, Amsterdam, Singapore (regions) | Oregon, Ohio, Virginia, Frankfurt, Singapore (regions) | Wherever you rent servers |
| Private network | Per environment, WireGuard, service.railway.internal (docs) | Per region; same-region traffic not billed | Encrypted WireGuard between your servers, private DNS names |
| Log retention | 3 days Free, 7 Hobby, 30 Pro | 7 days Hobby, 14 Pro, 30 Scale | Live logs in the dashboard, no retention |
| Databases | Postgres, MySQL, Redis and MongoDB templates, each with a high-availability option (docs) | Postgres and Key Value; Postgres high availability needs a plan with at least 1 CPU (docs) | PostgreSQL, MySQL, Redis and MongoDB in one click, as regular services with a volume |
| Database backups | Scheduled volume backups at the volume rate (backups); point-in-time recovery for Postgres and MySQL once you turn it on, about 4 weeks for Postgres (PITR docs) | Point-in-time recovery on every paid database, 3 days Hobby, 7 days Pro (backups) | Mirror on another server, synced on request; restore from it, or move the database with seconds of downtime |
| Scaling | Up to 6 replicas on Hobby, 42 on Pro | Manual on Hobby, horizontal autoscaling on Pro | Up to 50 replicas per service |
The regions point is the one people miss. Render's docs say "services in different regions can't communicate directly over a private network." You can't move a service to another region; you create a new one. Railway's own comparison page says replicas "can be placed in different geographical locations" with traffic routed to the nearest region.
That same Railway page also says Render "charges per team member seat." That's out of date. Since 1 August 2026, Render's Pro is $25 flat with unlimited seats, and bandwidth is billed per GB instead of in 100 GB blocks (Render blog). For a team of five, Render's workspace fee is now close to Railway's.
What limits does each plan have?
Railway Hobby allows 50 services, 6 replicas, a 5 GB volume and 2 custom domains. Railway Pro raises that to 100 services, 42 replicas, 1 TB volumes and 20 domains. Render Hobby allows 25 services and 2 custom domains with 1 seat. Render Pro has unlimited services and seats and 15 domains, with extra domains at $0.25 a month each.
| Limit | Railway Hobby | Railway Pro | Render Hobby | Render Pro |
|---|---|---|---|---|
| Services | 50 | 100 | 25 | Unlimited |
| Largest service | 48 vCPU, 48 GB | 1,000 vCPU, 1 TB | 12 CPU, 96 GB (any plan) | Same |
| Volume or disk | 5 GB | 1,000 GB | Disks at $0.25/GB | Same |
| Custom domains | 2 | 20 | 2, then $0.25 each | 15, then $0.25 each |
| Build allowance | 3 concurrent builds | 10 concurrent | 500 minutes, then $5 per 1,000 | 1,000 minutes |
Sources: Railway pricing and Render pricing. The 5 GB volume cap is what pushes a growing Railway database to Pro. On Render, Postgres storage grows on any plan at $0.30 per GB.
What about Railway vs Fly.io?
Fly.io sits between the two. Like Railway it's billed by the second, but like Render you pick a fixed Machine size. A shared-cpu-4x Machine with 1 GB is $8.78 a month. Egress in North America and Europe is $0.02 per GB. Fly's Managed Postgres starts at $38 for a shared 1 GB instance. Railway is simpler for a stack of services; Fly is cheaper on traffic.
From Fly's pricing page, Ashburn prices:
- shared-cpu-1x with 256 MB is $2.19, and extra RAM is $6 per GB a month;
- a performance-1x with 2 GB is $33;
- a dedicated IPv4 is $2 a month;
- Managed Postgres is $38 (shared-2x, 1 GB) or $72 (2 GB), plus $0.28 per GB of storage.
On Railway, a database averaging 1 GB of RAM and a tenth of a vCPU costs about $12. So for a small database, Railway is cheaper. For an app that serves a lot of traffic, Fly's egress at $0.02 per GB is less than half Railway's.
Is either cheaper than your own server?
No. The small stack costs $20 on Railway, $38 on Render and $7 on a Hetzner CX23 with Ployz, so the gap is smallest there. At medium size it's $104 and $197 against $19. At large it's $344 and $806 against $36. Ployz is free, custom domains included, so the server is the whole bill. In exchange you run the machine.
| Server | Specs | Monthly price | Source |
|---|---|---|---|
| Hetzner CX23 | 2 vCPU, 4 GB RAM, 40 GB | $6.49 | Price list, plans |
| Hetzner CX43 | 8 vCPU, 16 GB RAM, 160 GB | $18.49 | Same |
| Hetzner CX53 | 16 vCPU, 32 GB RAM, 320 GB | $34.99 | Same |
| Primary IPv4 | about $0.60 (€0.50) | Hetzner docs | |
| Netcup VPS 500 | 2 vCPU, 4 GB RAM, 64 GB, traffic included | €8.26 incl. VAT on a 12-month term | netcup VPS |
Hetzner prices are after its 15 June 2026 adjustment, Germany and Finland, in USD before VAT. I sized each server to the RAM Render allocates (1.5, 9 and 25 GB), with disk at twice the database size. That's generous to both platforms: on one machine the four services share memory, and the large app's 2 TB of traffic is a tenth of what Hetzner includes. Netcup is the provider I'd look at first. Its VPS 1000 (4 vCPU, 8 GB, 128 GB) is €14.50 incl. VAT, with a US datacenter in Manassas.
What the server price leaves out:
| Job | Railway | Render | Your own server |
|---|---|---|---|
| Database backups | Scheduled volume backups | Point-in-time recovery | A Ployz mirror on a second server, synced on request |
| Scaling past one machine | The bill grows | The bill grows | Add servers and replicas when you need them |
For the wider picture of where platforms add fees, see the real cost of PaaS pricing.
Where Ployz fits
I build Ployz, which runs this stack on a server you rent. Push to GitHub, and it builds on your server and deploys with zero downtime once you set a health check. Every pull request gets a preview environment. Postgres and Redis are one click each, with Railway-style variables like ${{ postgres.DATABASE_URL }}.
ployz up --server root@your-server
That installs Ployz on a Linux server, builds the current directory and gives it an HTTPS address. Your servers talk over encrypted WireGuard, and a service can run up to 50 replicas.
For backups, Ployz mirrors a database's volume onto another of your servers and syncs it when you ask. If the first server dies, restore from the mirror, or move the database there with seconds of downtime.
What it doesn't do yet:
- No team invites yet. One person per organization.
Ployz is free on your own servers, custom domains included. Start free on your own server.
FAQ
Is Railway cheaper than Render?
Usually. For a web service, worker, Postgres and Redis, Railway costs about half of Render: $20 against $38 small, $104 against $197 medium and $344 against $806 busy. Services that run flat out cost about the same on both.
Why is Render more expensive than Railway?
Render charges for the full plan size of each service. Railway charges for average use. Most apps use far less than their plan, and Render's bandwidth is $0.15 per GB against Railway's $0.05.
Does Render still charge per seat?
No. Since 1 August 2026, Render Pro is $25 a month flat with unlimited seats. Railway's comparison page still says otherwise.
Which is better for Postgres, Railway or Render?
Render, for a large database that fills its memory, and for point-in-time recovery that's on without setup. Railway, for a small database that averages well below its size, or for a longer recovery window: its opt-in point-in-time recovery keeps about 4 weeks for Postgres, against Render's 7 days.
Does Render support MySQL or MongoDB?
Not as managed databases. Render's databases are Postgres and Key Value (Redis-compatible). Railway has one-click templates for Postgres, MySQL, Redis and MongoDB.
Which has the better free tier?
Render, for a demo. Its free web service spins down after 15 minutes idle, and its free Postgres expires after 30 days. Railway gives $1 of usage a month after a $5 trial.
How I checked
Prices were checked on 8 October 2026 on railway.com/pricing, Railway's pricing docs, render.com/pricing, fly.io/pricing, Hetzner's price list and netcup's VPS page. All bill in USD before tax. I didn't deploy this stack on both platforms. The bills are built from each official rate card, with the usage assumptions spelled out so you can swap in your own. I build Ployz, which competes with both, so I'm biased; the maths is all here to check.
Run your web service, worker, Postgres and Redis on your own server with Ployz, free: get started.