Your Railway workspace now fits in your pocket. The Railway mobile app is now available on the iOS App Store (Android beta is coming soon), PgBouncer is available in Priority Boarding with one-click setup for Postgres, and railway templates can manage the full template lifecycle from the CLI.
Let's get into it! 🚄
Railway mobile app for iOS
The Railway mobile app is now available for iPhone on the App Store!Railway for iOS brings the on-call loop to your phone: know when something changed, understand what happened, and take action without opening a laptop.
Notifications cover the first mile. Deployment events, crashes, and alerts you configure now land on your phone instead of getting buried in your inbox.
From there, the app gives you the context to debug. Open a project, check service state, view metrics, read logs, and filter down to the deployment or service that needs attention.
The last piece is action. The app includes the same Railway Agent that's available in the dashboard and CLI, so you can ask it to inspect a project, explain a failure, change configuration, or handle a workflow that doesn't have a dedicated mobile screen yet. The agent stages changes, so you can review the patch and approve it before it deploys.
Before this, Railway on mobile was mostly a way to check in. The iOS app turns it into an extension of the Railway dashboard: get the alert, inspect the service, ask the agent for the fix, and approve the staged changes from wherever you are.
Download Railway from the App Store, and tell us what to ship next on Central Station. Android beta is coming soon.
One-click PgBouncer to Priority Boarding
Add PgBouncer to your Postgres database in one clickNew in Priority Boarding: Postgres Connection Pooling
Railway can now add PgBouncer as a connection pooler in front of your Postgres database from the dashboard. Open your Postgres service, navigate to Database > Config > Connection Pooling, click Add PgBouncer, select a pool mode, and deploy the staged change.
PgBouncer works with standalone Postgres and Postgres HA clusters. Transaction mode is the default for most applications, while session mode and statement mode are available when your application needs different pooling behavior. After PgBouncer is deployed, Railway creates pooled and unpooled connection variables, then automatically migrates services in the same project that reference your Postgres variables to the pooled endpoint.
The important escape hatch is still there: use DATABASE_UNPOOLED_URL for migrations, CREATE INDEX CONCURRENTLY, LISTEN and NOTIFY, advisory locks, and other work that needs a dedicated server connection. For normal application traffic, use DATABASE_URL and let PgBouncer multiplex client connections into a smaller pool of Postgres connections.
Before this, adding PgBouncer meant standing up a separate pooler, wiring connection strings yourself, and keeping track of which services should talk to the pooler versus Postgres directly. Railway now makes the pooler part of the database flow, including variable migration, pool mode changes, replica scaling, and removal.
Read the PgBouncer docs and let us know what you think on Central Station.
Manage templates from the Railway CLI

The Railway CLI now manages templates end to end, with commands for the full lifecycle:
railway templates create/railway templates generatecreates an unpublished template draft from a project.railway templates publishpublishes a template or updates marketplace metadata like category, description, README, image, demo project, and workspace.railway templates list/railway templates lslists templates owned by your workspace, matching the rest of the CLI's resource commands. Use--workspacefor narrowing results. Marketplace discovery stays underrailway templates search.railway templates unpublishremoves a published template from the marketplace.railway templates deletedeletes a template after confirmation. Use--yesfor non-interactive flows.
The commands support interactive prompts for humans and JSON output for scripts and agents. README input can come from inline text, a file, or stdin.
Before this, creating and maintaining templates was mostly a dashboard workflow. Agents and automation had to route around that with custom API calls or ask a human to finish the publish step. The CLI now exposes the same managed lifecycle in a scriptable form.
Update with railway upgrade, read the CLI templates docs, run railway templates --help, and send feedback on Central Station.