Strapi on Railway
Railway publishes its own guide for deploying Strapi.
Open-source headless CMS running as a long-lived Node server, requiring a relational database in production and an upload provider for media that must survive deploys.
What Strapi needs.
Every host claims to run Strapi, so the claim on its own decides nothing. These are the things Strapi actually requires from the platform underneath it, and what Railway publishes about each. Railway documents 4 of the 4.
Managed databases
Limited
Strapi's SQLite default is a development convenience. A production install needs Postgres or MySQL, and a guide that leaves you on SQLite is showing you a prototype.
Sources (1) →Sources ↓
- Databases — Railway Docs ↗
“Railway enables you to deploy and manage databases alongside your applications. [...] The fastest way to deploy a database is through Railway's database templates [...] These templates are maintained by Railway and come pre-configured with sensible defaults.”
Read 2026-09-05 · official docs
Persistent storage
Supported
Uploaded media is written to the local filesystem unless an upload provider is configured. On an ephemeral disk the media library empties at the next deploy while the content entries still reference it.
Sources (1) →Sources ↓
- Volumes | Railway Docs ↗
“Volumes are a feature that enables persistent data for services on Railway. [...] When mounting a volume to a service, a volume is made available to the service on the specified mount path.”
Read 2026-09-05 · official docs
Persistent processes
Supported
Strapi is a long-lived Node server serving both the content API and the admin panel. It is not a request-scoped function and cannot be deployed as one.
Sources (1) →Sources ↓
- Services — Railway Docs ↗
“Types of services Persistent services Services that are always running. Examples include web applications, backend APIs, message queues, database services, etc.”
Read 2026-09-13 · official docs
Memory (entry plan)
48 GB on Hobby ($5/month) — but that is a ceiling, not an allocation. Railway's table states the figure is a maximum including replica multiplication, so it is 8 GB across each of up to 6 replicas, and memory is billed at $10 per GB per month on top of the $5 fee. Recorded without a magnitude because a cap you pay for is not comparable with an allowance you are given.
The admin panel is rebuilt on boot and after every content-type change. That build is the memory spike, and it is what decides whether the smallest instance survives a deploy.
Sources (1) →Sources ↓
- Plans — Railway Docs ↗
“Plan Replicas RAM CPU Ephemeral Storage Volume Storage Image Size [...] Hobby 6 48 GB 48 vCPU 100 GB 5 GB 100 GB [...] Note that these are maximum values and include replica multiplication. [...] RAM $10 / GB / month”
Read 2026-09-07 · official pricing
What Railway documents.
Railway publishes its own guide for deploying Strapi.
This guide covers deploying Strapi on Railway with a Postgres database and persistent file storage. [...] A Strapi instance with the admin panel. A Postgres database for content storage. Persistent file uploads via a Railway Volume or Storage Bucket. A public domain for the API and admin panel.
Sources (1) →Sources ↓
- Self-host Strapi with Postgres and File Uploads — Railway Docs ↗
“This guide covers deploying Strapi on Railway with a Postgres database and persistent file storage. [...] A Strapi instance with the admin panel. A Postgres database for content storage. Persistent file uploads via a Railway Volume or Storage Bucket. A public domain for the API and admin panel.”
Read 2026-09-06 · official docs
Strapi features on Railway
Capabilities Railway documents specifically for Strapi, with the constraint it documents alongside each.
managed_postgres
Supported
A Postgres database for content storage [...] Add a PostgreSQL database: click + New, then Database, then PostgreSQL. [...] Select Postgres as the database during setup.
persistent_media_disk
Supported
On Railway, the filesystem is ephemeral, meaning uploads are lost on each deploy. [...] Attach a Volume to the Strapi service mounted at /app/public/uploads. Files persist across deploys.
managed_object_storage
Supported
Option 2: Storage Bucket (S3-compatible) [...] S3 upload provider with a Railway Storage Bucket: [...] npm install @strapi/provider-upload-aws-s3
horizontal_scaling
Limited
Option 1: Railway Volume [...] This is the simplest option. The tradeoff is that volumes are tied to a single service instance.
strapi_template
Supported
Railway has a Strapi template that provisions the full setup: [...] After deploying, generate a domain for the Strapi service and open /admin to create your first admin user.
Sources (1) →Sources ↓
- Self-host Strapi with Postgres and File Uploads — Railway Docs ↗
“A Postgres database for content storage [...] Add a PostgreSQL database: click + New, then Database, then PostgreSQL. [...] Select Postgres as the database during setup.”
Read 2026-09-13 · official docs
What it costs to run there.
- Entry paid plan
- $5 / month (Hobby)
- Pricing model
- A base subscription fee that goes towards usage, with the plan's own credit included; anything beyond the credit is billed as resource usage.
- When you exceed a cap
- Billed automatically: on the Hobby plan ($5/month, includes $5 of resource usage) usage above the included amount is charged as a delta on top of the subscription — no throttling or suspension is documented
- Regions
- 4 regions: California, Virginia, Amsterdam, Singapore
Sources (3) →Sources ↓
- Plans — Railway Docs ↗
“Plan Price Free $0 / month Hobby $5 / month Pro $20 / month Enterprise Custom”
Read 2026-09-13 · official pricing
- Pricing Plans | Railway Docs ↗
“If your total resource usage exceeds $5 in any given billing period, you will be charged the delta”
Read 2026-09-05 · official docs
- Regions — Railway Docs ↗
“Name Location Region Identifier US West Metal California, USA us-west2 US East Metal Virginia, USA us-east4-eqdc4a EU West Metal Amsterdam, Netherlands europe-west4-drams3a Southeast Asia Metal Singapore asia-southeast1-eqsg3a”
Read 2026-09-13 · official docs
Whether it suits you.
Teams that want a plan fee which doubles as usage credit, and deploy services straight from a Dockerfile without managing servers. The $5 Hobby fee comes back as $5 of resource usage.
Consider something else if…
You need to run in a region outside California, Virginia, Amsterdam or Singapore.
Visit Railway documentation