How to Choose Between Standard and Larger GitHub Runners
The default GitHub-hosted Linux runner is 2 vCPU / 7 GB RAM; larger runners scale to 4, 8, 16, 32, and 64 vCPU with proportionally more memory and cost.
A standard runner is fine for most build and test jobs. Larger runners help CPU-bound or memory-hungry work, but they bill at a higher per-minute rate, so a bigger runner only pays off when it cuts wall-clock time enough to matter.
Runner sizes at a glance
| Runner | vCPU | RAM | Relative per-minute cost |
|---|---|---|---|
| ubuntu-latest (standard) | 2 | 7 GB | 1x |
| ubuntu-latest-4-cores | 4 | 16 GB | ~2x |
| ubuntu-latest-8-cores | 8 | 32 GB | ~4x |
| ubuntu-latest-16-cores | 16 | 64 GB | ~8x |
Selecting a larger runner
.github/workflows/ci.yml
jobs:
build:
# larger runners are configured in org/repo settings, then referenced by label
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- run: cargo build --releaseWhen bigger is not better
Larger runners bill roughly linearly with vCPU, so an 8-core runner costs about 4x the standard rate. If your job is I/O bound or single-threaded, more cores sit idle and you pay more for the same duration. Benchmark before committing.
Related guides
How to Decide When a Bigger Runner Is Worth the CostWork out whether a larger CI runner saves money by comparing the per-minute cost multiplier against the wall-…
How to Benchmark Runner Options Before CommittingRun the same job across several runner sizes and types, capture duration and cost, and choose the option with…