A bill you can see coming
Top up $20 and watch the runway. We warn at 20 % and at zero, hold for 3 days, then pause. Nothing is deleted and no invoice arrives.
Comparison · updated September 2026
Skiffly keeps what makes Railway pleasant: connect a repo, get a service with a domain, wire databases with ${{Postgres.DATABASE_URL}}. It changes the parts that hurt small teams: you pay from a prepaid balance, with the payment method you have, on EU-only nodes we own.
For indie developers, startups and agencies that want Railway's shape without card-only billing or surprise invoices.
What we know about ourselves is exact; what we say about others is deliberately general. Check their pricing page for current numbers.
| Feature | Skiffly | Railway |
|---|---|---|
| How you pay | Card, PayPal or crypto (USDT, USDC, BTC, ETH), all into a prepaid balance | Card |
| Billing model | Prepaid balance drawn per minute; 3 day grace, then pause. Never an invoice. | Usage billed monthly in arrears |
| Free tier without a card | Yes: one 512 MB / 1 vCPU service that sleeps after 10 min idle | Time-limited trial; see their pricing page |
| EU hosting | EU only: our own nodes in Helsinki, Finland; volumes, logs and backups stay in the EU | Multiple regions on hyperscaler infrastructure, EU among them |
| Workload isolation | One microVM per service (gVisor or Kata), private network per project | Containers |
| API / CLI / MCP | Railway-compatible GraphQL fields, same CLI command names, MCP server with matching tool names | Railway GraphQL API, CLI, MCP server |
| Backups | Included: daily volume snapshots, 7 daily / 4 weekly / 3 monthly, plus Postgres and MySQL dumps | Volume backups; see their docs for retention |
| App Sleeping | Optional per service; ~10 min idle, wakes on the next request, not billed while asleep | Available |
| Memory | $8 / GB-month, per minute, from the balance | See their pricing page |
| CPU | $15 / vCPU-month, any fraction | See their pricing page |
| Databases | Postgres, MySQL, Redis, MongoDB, ClickHouse and 130+ more templates; you pay for the resources, not per add-on | Database templates |
| Regions | One EU region today; more EU regions planned, no multi-region promises | Several worldwide |
Statements about Railway describe the product in general terms as of September 2026 and may be out of date; see their pricing and documentation for specifics. Skiffly figures come from our pricing page.
Top up $20 and watch the runway. We warn at 20 % and at zero, hold for 3 days, then pause. Nothing is deleted and no invoice arrives.
Not everyone has a card that works with US billing. PayPal and stablecoins top up the same balance at the exchange rate at confirmation, with no fee from us.
Our own nodes in Finland. No hyperscaler in the path, no transfer outside the EU, backups in EU object storage.
The GraphQL fields, CLI commands and MCP tools mirror Railway where the feature exists. ${{Postgres.DATABASE_URL}} references, PR environments, templates: same shapes.
Three commands for the app, one dump and restore for the database. The guide walks through variables, domains and the things to check before cutting over.
Full migration guide$ railway variables --kv > vars.env # export from Railway
$ skiffly init && skiffly up # build the repo on Skiffly
$ skiffly variables set --skip-deploys $(grep -v '^RAILWAY_' vars.env | xargs)Where Railway is ahead: More regions, a larger template catalog, log drains and a longer track record. Skiffly is a younger product with one EU region and no SLA yet: right for side projects, startups and agencies that value predictable cost over global reach.
projects, deployments(input:), variables, serviceInstanceUpdate, serviceInstanceDeployV2, customDomainCreate and templateDeployV2 run unchanged against https://api.skiffly.dev/graphql; change the endpoint and the token. The MCP server uses the same tool names where the feature exists.update-service, or .skiffly/skiffly.ts). A railway.ts from railway/iac ports with defineRailway → defineSkiffly.http://api:8080) over IPv4. RAILWAY_PRIVATE_DOMAIN becomes SKIFFLY_PRIVATE_DOMAIN; there is no IPv6 private network.No card. One service, a domain with TLS, and the same commands you would use in production.