Skip to content

benchmarks

Most CI runners are the wrong size

40% of jobs we see average under 30% CPU utilization. Another 12% are pinned at 100% on the critical path.

Priya Raghavan · Infrastructure · 2026-06-03 · 6 min read

Runner size is usually chosen once, defensively, and never revisited. Utilization data says that choice is wrong in both directions more often than it is right.

Oversized: 40% of jobs

Average CPU utilization under 30% means you are paying for cores that sit idle. The most common cause is a job that was moved to a bigger runner to fix a problem that turned out to be cache-related.

Undersized: 12% of jobs

Pinned at 100% for the whole job, and on the critical path. Here a larger runner pays for itself immediately in developer waiting time, even at a higher per-minute rate.

The third category

High I/O wait with low CPU. These jobs are disk-bound, and no amount of extra cores will help. They need faster storage.

Your next build could be twice as fast, at half the price

Start free. Migrating away is the same one line, and we publish that diff too.