5,600 typical active users
Published production planningReproducible performance evidence
One realm.
2,400 mixed RPS.
173 ms p95 through Railway’s public edge,
with zero unplanned server 5xx at the retained boundary.
Measured boundary curve · lower is better
The mixed journey clears 2,400 RPS and bends at 3,200 RPS
Exact two-minute public Railway windows. Lines are separate timing lenses and are not additive.
Capacity spectrum single realm
16,800 typical active users
Observed short-window headroom rate296 ms end-to-end p95
Not a planning targetSupported is what we plan for. Candidate is what the retained boundary suggests. Bend is where the strict gates first stop passing.
Size your realm
Planning model for simultaneously active users—not stored accounts or MAU.
Assumption Six authenticated requests per active user per minute
Simultaneously active10,000users
Request demand1,000RPS at six requests/minute
Supported planning2independent realm cells
Candidate model1realm cell · not Fleet proof
Retained run · 288,140 measured requests
The proof
Public-edge Railway. Mixed workload. Zero unplanned 5xx at the 2,400 RPS boundary.
Latency lenses p95 · not additive
- End-to-endPublic Railway edge
- 173 ms
- ApplicationIncludes datastore work
- 142 ms
- SableDBAccumulated datastore time
- 142 ms
- External pathRunner, edge and network
- 55 ms
Boundary result 2,400 RPS
- End-to-end p95
- 173 ms
- Unexpected failure rate
- 0.033%
- Unplanned 5xx
- 0
- Passkey ceremony p95 under load
- 221 ms
Workload mix High-traffic product journey v2
- Session-backed account read60%
- User token mint20%
- Passkey inventory read15%
- Public signing-key discovery5%
MethodologyDataset, hardware, workload, soak window and boundaries+
Environment: Railway: API 1 vCPU / 1 GB; SableDB 4 vCPU / 4 GB; public Railway edge.
Dataset: 10,000 synthetic accounts and 10,000 valid sessions.
Qualification: Retained two-minute boundary, first-failure and passkey evidence; one-hour soak stopped at 37m40.7s. The candidate rate is not promoted until a fresh one-hour soak and recovery pass.
Raw evidenceReports, reviewed metrics, traces and deployment artefacts+
Cost & operationsMeasured shape, incomplete soak and what is not included+
RustyAuth API1 vCPU / 1 GB ceiling
SableDB4 vCPU / 4 GB ceiling
Monthly run-rateNot claimed from the incomplete soak
AdditionalStorage, egress, redundancy and operator time
Publication gatesWhat must pass before a result becomes supported capacity+
- Unexpected request failures below 0.1% and no unplanned 5xx responses
- Mixed end-to-end latency below 300 ms p95 and 750 ms p99
- Application latency below 150 ms p95 / 400 ms p99 and accumulated SableDB below 150 ms p95 / 250 ms p99
- The measured phase completes its exact scheduled arrival count; excluded warm-up drops remain disclosed
- Complete passkey ceremonies remain below 750 ms p95 and 1,500 ms p99 under operating load
- A one-hour operating-rate soak completes without readiness loss, restart or out-of-memory event
- Published user capacity retains 30% measured throughput headroom
Competitor contextFirst-party public signals, with unlike workloads labelled−
Published 11 August 2026Active baseline: Single-realm Railway