This guide compares Linux GitHub Actions runner CPU performance, queue
times, and pricing across official GitHub runners, self-hosted solutions, and
third-party providers. Real-world benchmarks show how each option performs to
help select the optimal runner.
Benchmarks cover GitHub, RunsOn, AWS CodeBuild, Namespace, Blacksmith, Cirrus,
Warpbuild, Ubicloud, and Shipfox across Linux x64 and arm64.
Best value
RunsOn, Namespace, Shipfox, Cirrus, and Blacksmith score highly in this benchmark. Each one having specific strengths and weaknesses depending on your use cases.
Best self-hosted
RunsOn is the cheapest self-hosted option and the fastest in this dataset
among self-hosted runners. AWS CodeBuild is slower and more expensive.
Fastest CPU
x64: Shipfox, Namespace, Blacksmith, and RunsOn lead the pack. arm64:
Cirrus and Namespace lead, followed by RunsOn, Shipfox, and Warpbuild.
Lowest queue
GitHub is lowest at ~8s (x64) and ~6s (arm64). Warpbuild and Namespace are
close behind on x64.
How to read: leaderboard and deep dive use the configured CPU/queue
percentiles (p50/p50). Higher CPU is better,
lower queue is better.
Price is normalized $/min.
Last updated: Feb 19, 2026
Benchmarks use Linux runners only, the Passmark single-thread metric, and the
last 30 days of data.
Best value Fastest CPU Lowest queue Cheapest Self-hosted only
Settings How scoring works baseScore = (w_speed Ă speedScore + w_cost Ă costScore) / (w_speed + w_cost) speedScore = (cpu - cpuLow) / (cpuHigh - cpuLow), costScore = (priceHigh - price) / (priceHigh - priceLow) (both clamped 0-1) queueAdj% = -min(15, max(0, queue - queueMin) Ă 0.5) finalScore = baseScore Ă (1 + queueAdj% / 100) CPU p50: 4267
Queue p50: 25.0s
Price: $0.0015/min
Self-Hosted
nscloud-ubuntu-24.04-amd64-2x8
CPU p50: 4515
Queue p50: 11.0s
Price: $0.0040/min
SaaS
ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-xs, ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-md
CPU p50: 3958
Queue p50: 17.0s
SaaS
CPU speed vs price per minute x64 runners
â
cheap-and-fast zone 2000 3000 4000 $0.002 $0.004 $0.006 Price/min â more expensive CPU score â faster
RunsOn GitHub AWS CodeBuild Blacksmith Cirrus Namespace Shipfox Ubicloud Warpbuild
Bigger dots = longer queues. Hover for details. RunsOn ⨠runs-on,family=m8azn AWS Self-Hosted spot
4267
25.0s
$0.0015/min
Namespace nscloud-ubuntu-24.04-amd64-2x8 US/Europe SaaS standard
4515
11.0s
$0.0040/min
Cirrus ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-xs, ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-md Hetzner SaaS per runner monthly
3958
17.0s
Shipfox shipfox-2vcpu-ubuntu-2404 OVH / GCP SaaS
4539
16.0s
$0.0040/min
Blacksmith blacksmith-2vcpu-ubuntu-2404 Hetzner SaaS
4484
18.0s
$0.0040/min
RunsOn ⨠runs-on,family=m8a AWS Self-Hosted spot
3820
26.0s
$0.0009/min
Ubicloud ubicloud-premium-2-ubuntu-2404 Hetzner (Germany) SaaS premium
3709
30.0s
$0.0016/min
Warpbuild warp-ubuntu-2404-x64-2x Hetzner / AWS / BYOC SaaS
3731
12.0s
$0.0040/min
RunsOn ⨠runs-on,family=m8i+r8i AWS Self-Hosted spot
3195
28.0s
$0.0009/min
Ubicloud ubicloud-standard-2-ubuntu-2404 Hetzner (Germany) SaaS standard
2903
17.0s
$0.0008/min
RunsOn ⨠runs-on,family=r7iz AWS Self-Hosted spot
3070
28.0s
$0.0011/min
RunsOn ⨠runs-on,family=c7i+m7i+r7i AWS Self-Hosted spot
2841
28.0s
$0.0009/min
RunsOn ⨠runs-on,family=c7a+m7a+r7a AWS Self-Hosted spot
2878
28.0s
$0.0011/min
RunsOn ⨠runs-on,family=i7ie AWS Self-Hosted spot
2729
31.0s
$0.0016/min
RunsOn ⨠runs-on,family=c6a+m6a+r6a AWS Self-Hosted spot
2588
32.0s
$0.0010/min
GitHub ubuntu-24.04, github24-2cpu-x64 Azure Official
2327
7.0s
$0.0060/min
GitHub github24-2cpu-x64, ubuntu-24.04 Azure Official
2281
7.0s
$0.0060/min
GitHub ubuntu-24.04, github24-2cpu-x64 Azure Official
2203
9.0s
$0.0060/min
AWS CodeBuild codebuild-ubuntu-8.0-large, codebuild-ubuntu-8.0-small, codebuild-ubuntu-8.0-medium AWS Self-Hosted
1986
27.0s
$0.0050/min
AWS CodeBuild codebuild-ubuntu-8.0-medium, codebuild-ubuntu-8.0-large, codebuild-ubuntu-8.0-small AWS Self-Hosted
1913
28.0s
$0.0050/min
Best value Fastest CPU Lowest queue Cheapest Self-hosted only
Settings How scoring works baseScore = (w_speed Ă speedScore + w_cost Ă costScore) / (w_speed + w_cost) speedScore = (cpu - cpuLow) / (cpuHigh - cpuLow), costScore = (priceHigh - price) / (priceHigh - priceLow) (both clamped 0-1) queueAdj% = -min(15, max(0, queue - queueMin) Ă 0.5) finalScore = baseScore Ă (1 + queueAdj% / 100) ghcr.io/cirruslabs/ubuntu-runner-arm64:24.04-md
CPU p50: 3968
Queue p50: 17.0s
SaaS
nscloud-ubuntu-24.04-arm64-2x8,namespace-features:linux-on-apple-silicon=true
CPU p50: 3984
Queue p50: 15.0s
Price: $0.0120/min
SaaS
⨠runs-on,family=c8g+m8g+r8g
CPU p50: 1946
Queue p50: 29.0s
Price: $0.0008/min
Self-Hosted
CPU speed vs price per minute arm64 runners
â
cheap-and-fast zone 2000 3000 4000 $0.003 $0.005 $0.007 $0.01 $0.01 Price/min â more expensive CPU score â faster
RunsOn GitHub Blacksmith Cirrus Namespace Shipfox Ubicloud Warpbuild
Bigger dots = longer queues. Hover for details. Cirrus ghcr.io/cirruslabs/ubuntu-runner-arm64:24.04-md Hetzner SaaS per runner monthly
3968
17.0s
Namespace nscloud-ubuntu-24.04-arm64-2x8,namespace-features:linux-on-apple-silicon=true US/Europe SaaS premium
3984
15.0s
$0.0120/min
RunsOn ⨠runs-on,family=c8g+m8g+r8g AWS Self-Hosted spot
1946
29.0s
$0.0008/min
Shipfox shipfox-2vcpu-ubuntu-2404-arm OVH / GCP SaaS
2084
20.0s
$0.0040/min
Warpbuild warp-ubuntu-latest-arm64-2x, warp-ubuntu-2404-arm64-2x Hetzner / AWS / BYOC SaaS
1944
37.0s
$0.0030/min
GitHub github24-2cpu-arm64 Azure Official
1874
6.0s
$0.0050/min
RunsOn ⨠runs-on,family=c7g+m7g+r7g AWS Self-Hosted spot
1559
29.0s
$0.0008/min
Ubicloud ubicloud-standard-2-arm-ubuntu-2404 Hetzner (Germany) SaaS standard
1315
15.0s
$0.0008/min
Blacksmith blacksmith-2vcpu-ubuntu-2404-arm Hetzner SaaS
1328
19.0s
$0.0025/min
Namespace nscloud-ubuntu-24.04-arm64-2x8 US/Europe SaaS standard
1251
15.0s
$0.0040/min
GitHub github24-2cpu-arm64 Azure Official
1333
12.0s
$0.0050/min
If you want the lowest price, compare $/min.
If you want speed, look at the configured CPU percentile (currently
p50 singleâthread).
If you want the lowest queue, look at the configured queue percentile
(currently p50). GitHub is usually best, followed by
Warpbuild and Namespace.
If you want predictability, favor providers with stable hardware (some
Hetznerâbased fleets can vary CPUs).
If you want control, pick selfâhosted (RunsOn, AWS CodeBuild) and keep data in
your cloud account. RunsOn keeps runners inside your AWS VPC; see
networking options .
See full provider list
Official:
Self-hosted alternatives:
Third-party alternatives:
Note: Iâd love to benchmark Depot (hosted on AWS), but they forbid
benchmarking their platform đ¤ˇ.
Open full benchmark table & box plots
Includes per-runner distributions, CPU/queue percentiles, and provider
metadata for the last 30 days.
Provider
CPU speed (p50) (higher is better)
Queue time (p50) (lower is better)
Processor
Shipfox SaaS $0.004/min 1.5x cheaper
shipfox-2vcpu-ubuntu-2404 CPU speed
p50: 4539p90: 4607
Queue time
p50: 16.0sp90: 20.0s
AMD EPYC 4585PX 16-Core Processor[4;49H(x86_64) Infra / ISP: OVH / GCP Samples: 31 Namespace SaaS $0.004/min 1.5x cheaper standard
nscloud-ubuntu-24.04-amd64-2x8 CPU speed
p50: 4507p90: 4672
Queue time
p50: 11.0sp90: 13.0s
AMD EPYC (x86_64) Infra / ISP: US/Europe (might vary) Price basis: Standard Linux VM (2 vCPU / 8GB + caching) Samples: 32
CPU 4500+
Blacksmith SaaS $0.004/min 1.5x cheaper
blacksmith-2vcpu-ubuntu-2404 CPU speed
p50: 4479p90: 4622
Queue time
p50: 16.0sp90: 24.0s
AMD EPYC (x86_64) Infra / ISP: Hetzner Samples: 32 RunsOn Self-Hosted $0.0015/min 4.0x cheaper spot
CPU speed
p50: 4260p90: 4273
Queue time
p50: 25.0sp90: 29.0s
AMD EPYC 9R05 (x86_64) Infra / ISP: AWS Price basis: EC2 m8azn.large (us-east-1, family m8azn, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 10
CPU 4000+
Cirrus SaaS $0.001/min 21.1x cheaper per runner monthly
ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-xs ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04-md CPU speed
p50: 3947p90: 4089
Queue time
p50: 17.0sp90: 20.0s
AMD Ryzen 9 7950X3D 16-Core Processor[4;49H(x86_64) Infra / ISP: Hetzner Pricing model: per runner monthly Price basis: $18.75/month @ 25d * 12h utilization Samples: 32 RunsOn Self-Hosted $0.0009/min 6.3x cheaper spot
CPU speed
p50: 3820p90: 3829
Queue time
p50: 26.0sp90: 28.0s
AMD EPYC 9R45 (x86_64) Infra / ISP: AWS Price basis: EC2 m8a.large (us-east-1, family m8a, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 37 Warpbuild SaaS $0.004/min 1.5x cheaper
CPU speed
p50: 3645p90: 3872
Queue time
p50: 11.0sp90: 86187.0s
AMD Ryzen 9 7950X3D 16-Core Processor[4;49H(x86_64) Infra / ISP: Hetzner / AWS / BYOC Samples: 8 Ubicloud SaaS $0.0016/min 3.8x cheaper premium
ubicloud-premium-2-ubuntu-2404 CPU speed
p50: 3696p90: 3850
Queue time
p50: 29.0sp90: 37.0s
AMD Ryzen 9 7950X3D 16-Core Processor[4;49H(x86_64) Infra / ISP: Hetzner (Germany) Samples: 32
CPU 3500+
RunsOn Self-Hosted $0.0009/min 6.5x cheaper spot
CPU speed
p50: 3195p90: 3206
Queue time
p50: 28.0sp90: 39.0s
Intel(R) Xeon(R) 6975P-C (x86_64) Infra / ISP: AWS Price basis: EC2 m8i.large (us-east-1, family m8i, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 35 RunsOn Self-Hosted $0.0011/min 5.3x cheaper spot
CPU speed
p50: 3070p90: 3076
Queue time
p50: 28.0sp90: 37.0s
Intel(R) Xeon(R) Gold 6455B (x86_64) Infra / ISP: AWS Price basis: EC2 r7iz.large (us-east-1, family r7iz, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 23
CPU 3000+
Ubicloud SaaS $0.0008/min 7.5x cheaper standard
ubicloud-standard-2-ubuntu-2404 CPU speed
p50: 2901p90: 2957
Queue time
p50: 17.0sp90: 34.0s
AMD EPYC 9454P 48-Core Processor[4;49H(x86_64) Infra / ISP: Hetzner (Germany) Samples: 32 RunsOn Self-Hosted $0.0011/min 5.4x cheaper spot
runs-on,family=c7a+m7a+r7a CPU speed
p50: 2878p90: 2881
Queue time
p50: 28.0sp90: 64.0s
AMD EPYC 9R14 (x86_64) Infra / ISP: AWS Price basis: EC2 m7a.large (us-east-1, family m7a, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 29 RunsOn Self-Hosted $0.0009/min 6.6x cheaper spot
runs-on,family=c7i+m7i+r7i CPU speed
p50: 2821p90: 2956
Queue time
p50: 28.0sp90: 64.0s
Intel(R) Xeon(R) Platinum 8488C (x86_64) Infra / ISP: AWS Price basis: EC2 m7i.large (us-east-1, family m7i, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 28 RunsOn Self-Hosted $0.0016/min 3.8x cheaper spot
CPU speed
p50: 2729p90: 3005
Queue time
p50: 31.0sp90: 52.0s
Intel(R) Xeon(R) Platinum 8559C (x86_64) Infra / ISP: AWS Price basis: EC2 i7ie.large (us-east-1, family i7ie, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 23 RunsOn Self-Hosted $0.001/min 5.8x cheaper spot
CPU speed
p50: 2588p90: 2591
Queue time
p50: 32.0sp90: 59.0s
AMD EPYC 7R13 Processor (x86_64) Infra / ISP: AWS Price basis: EC2 m6a.large (us-east-1, family m6a, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 3
CPU 2500+
GitHub Official $0.006/min â GitHub
ubuntu-24.04 github24-2cpu-x64 CPU speed
p50: 2327p90: 2329
Queue time
p50: 7.0sp90: 21.0s
Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz (x86_64) Infra / ISP: Azure Samples: 5 GitHub Official $0.006/min â GitHub
github24-2cpu-x64 ubuntu-24.04 CPU speed
p50: 2280p90: 2288
Queue time
p50: 7.0sp90: 9.0s
AMD EPYC 7763 64-Core Processor[4;49H(x86_64) Infra / ISP: Azure Samples: 56 GitHub Official $0.006/min â GitHub
ubuntu-24.04 github24-2cpu-x64 CPU speed
p50: 2198p90: 2203
Queue time
p50: 8.0sp90: 9.0s
AMD EPYC 9V74 80-Core Processor[4;49H(x86_64) Infra / ISP: Azure Samples: 2
CPU 2000+
AWS CodeBuild Self-Hosted $0.005/min 1.2x cheaper
codebuild-ubuntu-8.0-large codebuild-ubuntu-8.0-small codebuild-ubuntu-8.0-medium CPU speed
p50: 1986p90: 1994
Queue time
p50: 27.0sp90: 29.0s
Intel(R) Xeon(R) Platinum 8275CL CPU @ 3.00GHz (x86_64) Infra / ISP: AWS Samples: 65 AWS CodeBuild Self-Hosted $0.005/min 1.2x cheaper
codebuild-ubuntu-8.0-medium codebuild-ubuntu-8.0-large codebuild-ubuntu-8.0-small CPU speed
p50: 1912p90: 1918
Queue time
p50: 28.0sp90: 30.0s
Intel(R) Xeon(R) Platinum 8124M CPU @ 3.00GHz (x86_64) Infra / ISP: AWS Samples: 30 Provider
CPU speed (p50) (higher is better)
Queue time (p50) (lower is better)
Processor
Namespace SaaS $0.012/min 2.4x pricier premium
nscloud-ubuntu-24.04-arm64-2x8,namespace-features:linux-on-apple-silicon=true CPU speed
p50: 3977p90: 4230
Queue time
p50: 14.0sp90: 19.0s
Apple M4 + Virtualization Infra / ISP: US/Europe (might vary) Price basis: Premium arm64 variant (linux-on-apple-silicon=true) Samples: 32 Cirrus SaaS $0.0021/min 3.8x cheaper per runner monthly
ghcr.io/cirruslabs/ubuntu-runner-arm64:24.04-md CPU speed
p50: 3957p90: 4248
Queue time
p50: 16.0sp90: 36.0s
Apple M4 + Virtualization Infra / ISP: Hetzner Pricing model: per runner monthly Price basis: $37.5/month @ 25d * 12h utilization Samples: 32
CPU 3500+
Shipfox SaaS $0.004/min 1.3x cheaper
shipfox-2vcpu-ubuntu-2404-arm CPU speed
p50: 2084p90: 2086
Queue time
p50: 20.0sp90: 52.0s
Neoverse-V2 (aarch64) Infra / ISP: OVH / GCP Samples: 32
CPU 2000+
RunsOn Self-Hosted $0.0008/min 6.0x cheaper spot
runs-on,family=c8g+m8g+r8g CPU speed
p50: 1946p90: 1947
Queue time
p50: 29.0sp90: 41.0s
Neoverse-V2 (aarch64) Infra / ISP: AWS Price basis: EC2 m8g.large (us-east-1, family m8g, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 65 Warpbuild SaaS $0.003/min 1.7x cheaper
warp-ubuntu-latest-arm64-2x warp-ubuntu-2404-arm64-2x CPU speed
p50: 1944p90: 1946
Queue time
p50: 37.0sp90: 86357.0s
Neoverse-V2 (aarch64) Infra / ISP: Hetzner / AWS / BYOC Samples: 7 GitHub Official $0.005/min â GitHub
CPU speed
p50: 1874p90: 1879
Queue time
p50: 6.0sp90: 9.0s
Neoverse-N2 (aarch64) Infra / ISP: Azure Samples: 30 RunsOn Self-Hosted $0.0008/min 5.9x cheaper spot
runs-on,family=c7g+m7g+r7g CPU speed
p50: 1559p90: 1564
Queue time
p50: 29.0sp90: 41.0s
Neoverse-V1 (aarch64) Infra / ISP: AWS Price basis: EC2 m7g.large (us-east-1, family m7g, spot default) + EBS (40GB gp3, 400 MB/s) + License (EUR 300/yr @ 25d * 12h / 100 jobs/day) Samples: 33
CPU 1500+
GitHub Official $0.005/min â GitHub
CPU speed
p50: 1333p90: 1333
Queue time
p50: 6.0sp90: 12.0s
Neoverse-N1 (aarch64) Infra / ISP: Azure Samples: 2 Blacksmith SaaS $0.0025/min 2.0x cheaper
blacksmith-2vcpu-ubuntu-2404-arm CPU speed
p50: 1328p90: 1332
Queue time
p50: 18.0sp90: 33.0s
Neoverse-N1 (aarch64) Infra / ISP: Hetzner Samples: 32 Ubicloud SaaS $0.0008/min 6.3x cheaper standard
ubicloud-standard-2-arm-ubuntu-2404 CPU speed
p50: 1315p90: 1319
Queue time
p50: 15.0sp90: 20.0s
Neoverse-N1 (aarch64) Infra / ISP: Hetzner (Germany) Samples: 31 Namespace SaaS $0.004/min 1.3x cheaper standard
nscloud-ubuntu-24.04-arm64-2x8 CPU speed
p50: 1251p90: 1264
Queue time
p50: 15.0sp90: 18.0s
Ampere-1a (aarch64) Infra / ISP: US/Europe (might vary) Price basis: Standard arm64 variant (without linux-on-apple-silicon=true) Samples: 19
Leaderboard and deep dive use the configured CPU/queue percentiles (currently
p50/p50). CPU is Passmark single-thread; queue is
time-to-start in seconds.
Data window is the last 30 days before the last updated date.
Pricing is normalized to $/min.
Providers can vary hardware over time (especially Hetzner-based fleets).
Shipfox, Namespace, Blacksmith, and RunsOn lead x64 singleâthread performance.
Cirrus and Namespace lead arm64; Shipfox, RunsOn, and Warpbuild follow. GitHubâs newer Cobalt CPUs are closer but not consistently available.
GitHub uses older CPUs overall, especially on x64.
GitHub queue times are very good for standard runners. Used to be minutes for larger ones, but GitHub has improved their queue system.
AWS provides better scalability than Hetzner-based providers.
Third-party SaaS providers may require manual requests for higher vCPU concurrency, sometimes with extra fees. Same for static egress IPs. Self-hosted runners like RunsOn and AWS CodeBuild are not affected by this.
Variable CPU models on some providers (for example Ubicloud tiers) can impact reproducibility.
GitHub Actions runners are managed by GitHub and run on Azure. Access to private resources often requires secrets or OIDC.
RunsOn is fully self-hosted in your AWS account with a dedicated GitHub App; IAM policies and networking are fully under your control.
AWS CodeBuild is managed by AWS, runs in your account, and uses a shared GitHub App for registration.
Namespace, Blacksmith, Cirrus, Warpbuild, Ubicloud, Depot, Shipfox are SaaS providers; some offer BYOC, but the control plane and runner registration are not fully under your control.
Detailed concurrency/scaling tests are still missing; they matter for high-volume CI/CD (thousands of jobs/day). RunsOn routinely handles more than 1M jobs every day.
Note: this analysis is valid as of February 2026. Things change quickly in this space, so make sure you do your own research as well.