Skip to content
inetGeek

Laravel on Railway

Railway publishes its own guide for deploying Laravel.

Compare Railway with

PHP web framework with an ORM, queue workers and a scheduler that expects a persistent process.

01.

What Laravel needs.

Every host claims to run Laravel, so the claim on its own decides nothing. These are the things Laravel actually requires from the platform underneath it, and what Railway publishes about each. Railway documents 4 of the 4.

Persistent processes

Supported

Queue workers and Horizon are long-running processes, not requests. They have to stay up between jobs.

Sources (1) →
  • 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

Managed databases

Limited

Eloquent, migrations and the default session and cache drivers all expect a relational database.

Sources (1) →
  • 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

Scheduled jobs

Supported

Laravel's scheduler is one cron entry calling schedule:run every minute. Without cron, nothing scheduled ever fires.

Sources (1) →
  • Cron Jobs | Railway Docs ↗

    “Cron Jobs allow you to start a service based on a crontab expression. [...] The shortest time between successive executions of a cron job cannot be less than 5 minutes.”

    Read 2026-09-05 · official docs

Persistent storage

Supported

The default filesystem disk writes uploads under storage/app. On an ephemeral filesystem those files disappear at the next deploy.

Sources (1) →
  • 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

The requirement and the reason it matters are ours. Every value beside them was read from Railway's own pages — expand a source to see the sentence it came from.

02.

What Railway documents.

Railway publishes its own guide for deploying Laravel.

This guide covers how to deploy a Laravel app on Railway in three ways.

Sources (1) →

Laravel features on Railway

Capabilities Railway documents specifically for Laravel, with the constraint it documents alongside each.

laravel_scheduler

Supported

Cron Service: Manages scheduled tasks (e.g., sending emails or running reports). [...] # This block of code runs the Laravel scheduler every minute

storage_disk_mount

Supported

Volumes allow you to store persistent data for services on Railway. [...] For example, if your application writes data to ./data, you should mount the volume to /app/data.

managed_mysql

Limited

The Railway MySQL database template allows you to provision and connect to a MySQL database with zero configuration. [...] While these templates are available for your convenience, they are considered unmanaged, meaning you have total control over their configuration and maintenance.

native_php_runtime

Supported

Railway uses Railpack to build and deploy your code with zero configuration. [...] Currently, we support the following languages out of the box: Node Python Go PHP

Sources (4) →
  • Deploy a Laravel App | Railway Guides ↗

    “Cron Service: Manages scheduled tasks (e.g., sending emails or running reports). [...] # This block of code runs the Laravel scheduler every minute”

    Read 2026-09-13 · official docs

  • Using Volumes | Railway Docs ↗

    “Volumes allow you to store persistent data for services on Railway. [...] For example, if your application writes data to ./data, you should mount the volume to /app/data.”

    Read 2026-09-13 · official docs

  • MySQL | Railway Docs ↗

    “The Railway MySQL database template allows you to provision and connect to a MySQL database with zero configuration. [...] While these templates are available for your convenience, they are considered unmanaged, meaning you have total control over their configuration and maintenance.”

    Read 2026-09-13 · official docs

  • Railpack | Railway Docs ↗

    “Railway uses Railpack to build and deploy your code with zero configuration. [...] Currently, we support the following languages out of the box: Node Python Go PHP”

    Read 2026-09-13 · official docs

03.

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) →
  • 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

04.

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.

Written by Palash Bagchi on 2026-09-05. This is a recommendation, not a sourced fact — it carries no citation because it is an opinion.

Visit Railway documentation

When these numbers change, hear about it. Sources are re-checked monthly; a repricing goes out as a short note.

Confirm by email; unsubscribe from any issue. Your address goes to Kit and nowhere else — what we do with it.

Every page here is sourced and dated.