// Migration Guide · 2026

Migrate from Railway to Runsite

Love Railway's DX but stuck in US-West? Keep the git push flow and bring your railway.toml. Runsite runs the same stack in Frankfurt, with a permanent free tier instead of trial credit that runs out.

{ }
railway.toml
on Railway
git push → build
EU
live stack
Frankfurt · eu-central
~15 min
typical migration
Same DX
keep your workflow
Keep Railway running
until you cut over
EUR Predictable Pricing
Frankfurt EU Data Center
100% GDPR Compliant
Free Tier — Forever

// the mental model

Every Railway concept has a Runsite home

Railway's config is small and so is the move. Your railway.toml build and deploy settings map straight onto Runsite, and the plugins you added in the dashboard become managed resources in the EU. Honest about what's automatic and what you handle once.

railway.toml
[build]
  builder = "nixpacks"
  buildCommand = "npm run build"

[deploy]
  startCommand = "npm start"
  healthcheckPath = "/health"
  restartPolicyType = "on_failure"
  • railway up / git deploy
    railway
    git push → auto-build auto
    Runtime auto-detected, just like Nixpacks
  • [build] & [deploy] commands
    railway
    Build & start commands auto
    buildCommand and startCommand carried over
  • healthcheckPath
    railway
    Health check path auto
    Same endpoint, same behaviour
  • Postgres plugin
    railway
    Managed PostgreSQL you do
    Provision in Frankfurt, then pg_dump → restore
  • Redis plugin
    railway
    Managed Redis you do
    Spin one up; point REDIS_URL at it
  • Service variables & references
    railway
    Environment variables you do
    Copy from the Railway dashboard, paste once

// step by step

From Railway to live in the EU

Six steps. Most of them take seconds. Railway keeps serving traffic until you flip your DNS.

  1. 1

    Create a Runsite project

    ~30 sec

    Sign in at runsite.app and create an empty project. No credit card, no trial-credit countdown.

  2. 2

    Connect your Git repo

    GitHub · GitLab · Bitbucket

    Authorize GitHub, GitLab or Bitbucket. Runsite auto-detects your runtime and builds, the same zero-config flow Railway gives you.

  3. 3

    Recreate your plugins in Frankfurt

    Postgres · Redis

    Provision a managed PostgreSQL and Redis with one click each. They run in the EU and come with connection strings ready to wire into your env.

  4. 4

    Copy your variables

    Railway dashboard → env

    Open your Railway service variables and paste the values into Runsite. Secrets are encrypted at rest and never logged.

  5. 5

    Move your database

    pg_dump → pg_restore

    Run pg_dump against your Railway Postgres connection string and restore into your Runsite PostgreSQL with pg_restore. DATABASE_URL is already wired.

  6. 6

    Deploy & cut over DNS

    Live in < 2 min

    git push, verify on your Runsite URL, then point your custom domain when ready. Railway keeps serving until you flip DNS, so you can roll back any time.

// no surprises

What moves on its own — and what you touch

Honest about the boundaries. The supported stack is recreated in one click; a short list needs a human, and Runsite flags every item.

Imported automatically

  • git push deploys — runtime auto-detected (Node, Python, Ruby, Go, PHP)
  • Build & start commands from railway.toml
  • Health check paths & always-on containers
  • Custom domains & automatic TLS certificates
  • Built-in S3-compatible object storage Railway lacks

You handle once

  • Service variables & references — paste once
  • Postgres & Redis plugin data — move with pg_dump / pg_restore
  • Cron & worker services — recreate as separate services
  • Persistent volumes — map to a disk or S3-compatible storage

// railway problems → runsite solutions

Common Railway frustrations — sound familiar?

Every Railway frustration, solved.

Railway problem

"Railway only has US servers"

All Railway deployments run in US-West-1. European users experience higher latency.

Runsite solution

EU-only Frankfurt region

Deploy to Frankfurt (eu-central) with EU data residency. Sub-20ms latency for European users.

Railway problem

"$5 free trial runs out fast"

Railway's trial credit depletes quickly. After that, you're on usage-based billing with no free option.

Runsite solution

Permanent free tier

No trial. No credit card. Build and deploy side projects forever at zero cost.

Railway problem

"No built-in object storage"

Railway offers persistent volumes but no S3-compatible object storage. You need external providers.

Runsite solution

S3-compatible storage included

Store files, assets, and backups with built-in S3-compatible object storage. No third-party setup needed.

// comparison

Runsite vs Railway

Side-by-side. No marketing fluff — just facts.

Feature Runsite Railway
EU Data Centers Frankfurt (eu-central) US-West only
GDPR Compliance EU entity, full compliance US company
Free Tier Permanent $5 trial credit
Web Service Pricing €5/mo ~$5/mo (usage-based)
Managed PostgreSQL From €5/mo Usage-based
Deploy from Git
Spending Limits Hard cap + alerts Usage limits
Object Storage S3-compatible Via volumes only

Migrating from Railway, answered

Do I have to rewrite my railway.toml?

No. Runsite keeps the git push workflow and auto-detects your runtime the same way Railway's Nixpacks builder does. Your build and start commands carry over unchanged. You only adjust a value if you want to change behaviour.

How do I move my Railway Postgres data?

Run pg_dump against your Railway Postgres connection string, then restore into a freshly provisioned Runsite PostgreSQL with pg_restore. The new connection string is auto-wired into DATABASE_URL, so your app picks it up on the next deploy.

Will my app go down during the migration?

No. Your Railway deployment keeps serving traffic while you build and verify on Runsite. You cut over by switching DNS only once you're happy, and you can point DNS back at Railway to roll back.

What's actually better about Runsite vs Railway?

Railway runs only in US-West-1. Runsite is EU-native: a Frankfurt region, an EU-registered entity for real GDPR compliance, a permanent free tier instead of $5 trial credit, and built-in S3-compatible object storage.

What about Railway's plugins and add-ons?

PostgreSQL and Redis are first-class managed resources on Runsite. For other plugins, bring an EU-friendly provider and add its credentials as environment variables.

Leave Railway behind

Bring your railway.toml. We'll handle the rest — in Frankfurt.

Start your migration →
No rewrites Zero downtime Deploy in 2 min EU servers