Cloud Benchmark Lab
The same container (same commit, same image digest where the provider accepts an image) is deployed to each target in Singapore, held to one instance, checked by a contract, measured from one client, and deleted. Every number links back to its run record.
Latest run per target
| Target | Size | Deploy s | Ready s | Seq p50 ms | Seq p95 ms | Load rps | Load p95 ms | CPU rps | Errors | Run |
|---|---|---|---|---|---|---|---|---|---|---|
| Loading… | ||||||||||
What these results cannot tell you
- The client is a GitHub-hosted runner whose location is not controlled, so latency includes that network path. Compare targets within one run, not across runs.
- Sizes are the closest each provider offers, not identical. The size column is exact.
- One instance is not how you would run production; it isolates the platform, not the autoscaler.
- Railway builds the Dockerfile itself, so its image digest differs from the others.
- Prices change; cost per run is recorded in each target's ADR with the date it was checked.
Source, ADRs and raw records: github.com/bookchaowalit/devtools-cloud-benchmark