CI Bench

Head to head · CI Bench v1

Self-hosted runners on AWS vs Self-hosted runners on Google Cloud

Self-hosted runners on Google Cloud ran jobs 1.3× faster than Self-hosted runners on AWS (one VM per job) (95% interval 1.3× to 1.4×); no clear difference in cost per job (at 100,000 jobs a month).

Self-hosted options spread fixed monthly costs over the monthly volume, so their cost per job changes with it; see the volume table.

Speed

× faster than GitHub-hosted (ubuntu-latest) · higher is better
Self-hosted runners on AWS (one VM per job)
1.2×
Self-hosted runners on Google Cloud
1.5×
GitHub-hosted (ubuntu-latest)
1.0×

Cost per job

USD per $1.00 spent on GitHub-hosted (ubuntu-latest), at 100,000 jobs a month · lower is better
Self-hosted runners on AWS (one VM per job)
$0.38
Self-hosted runners on Google Cloud
$0.41
GitHub-hosted (ubuntu-latest)
$1.00

Workload by workload

Self-hosted runners on AWS had the lowest median time of the two on 3 of 12 workloads, Self-hosted runners on Google Cloud on 9.
WorkloadSelf-hosted runners on AWS (one VM per job)Self-hosted runners on Google CloudLowest median
Burst: 20 jobs at once161 s153 sSelf-hosted runners on Google Cloud
cli357 s310 sSelf-hosted runners on Google Cloud
codex-lint512 s581 sSelf-hosted runners on AWS (one VM per job)
container247 s178 sSelf-hosted runners on Google Cloud
fd114 s64 sSelf-hosted runners on Google Cloud
flask70 s11 sSelf-hosted runners on Google Cloud
guava717 s820 sSelf-hosted runners on AWS (one VM per job)
monorepo281 s278 sSelf-hosted runners on Google Cloud
pydantic154 s119 sSelf-hosted runners on Google Cloud
ts433 s533 sSelf-hosted runners on AWS (one VM per job)
vite403 s401 sSelf-hosted runners on Google Cloud
vue117 s76 sSelf-hosted runners on Google Cloud

Cost by volume

Mean cost per job in USD, from the benchmark’s sensitivity results
VolumeSelf-hosted runners on AWS (one VM per job)Self-hosted runners on Google Cloud
100,000 jobs a month$0.383$0.409
10,000 jobs a month$0.395$0.409
1,000 jobs a month$0.508$0.409

Failed runs

Counted, never replaced
Self-hosted runners on AWS (one VM per job)
0 of 360 measured runs (0.0%)
Self-hosted runners on Google Cloud
1 of 360 measured runs (0.3%)

Each configuration page lists where its failures happened. All losses.

All results for this pair

One line per configuration pairing, generated from the benchmark data