CI Bench

Measured · Result set v1 · Oct 7–11, 2026 · Updated October 29, 2026

GitHub Actions runner job-time consistency

How far the slow runs sit from the median on each configuration.

Short answer

Taking the p95 job time divided by the median for each workload and then the median of those ratios across eleven workloads in CI Bench v1, the most consistent configuration was RunsOn (1.05) and the least Blacksmith (1.42); GitHub-hosted (ubuntu-latest) was 1.07. A ratio near 1 means the slowest typical runs take about as long as the median. 30 runs per cell, so tails are rough. Maintained by Vitko, Inc., which sells one of the products measured.

p95 divided by median, across eleven workloads

Consistency of job time
ConfigurationTypeMedian p95 to median ratioLargest ratio on any workload
RunsOnSelf-hosted1.051.09
Vitko Runners (warm starts + test splitting)VitkoManaged1.071.73
GitHub-hosted runners (ubuntu-latest, 2 vCPU)Managed1.071.31
Self-hosted runners on Google CloudSelf-hosted1.092.92
Vitko RunnersVitkoManaged1.111.33
GitHub-hosted larger runner (4 vCPU)Managed1.121.32
Self-hosted runners on AWS (one VM per job)Self-hosted1.221.91
UbicloudManaged1.291.51
BlacksmithManaged1.421.72

Per-workload p95 and p50 are on each workload page. Small samples: 30 runs per cell, so a p95 is set by the second-slowest run or so.

More: all questions answered · 12 options compared · ranked by speed · ranked by cost per job · calculator.

Method: how the runs were made; data: results.json; every raw record: the repository. Maintained by Vitko, Inc., which sells one of the products measured. Page dated October 29, 2026.