Last verified June 2026 · 7 min read
ARM runners: a low-effort cost lever in GitHub Actions
GITHUB-HOSTED RUNNER COST COMPARISON
$0.006/min
ubuntu-latest (x86)
1x cost
=
~17%
cheaper
$0.005/min
ubuntu-24.04-arm
~0.83x cost
Alt: GitHub-hosted ARM runners bill at $0.005/min vs $0.006 for x86, about 17% cheaper.
Why ARM is cheaper
GitHub-hosted ARM Linux runners run on AWS Graviton hardware. AWS passes through a portion of the Graviton cost advantage: ARM instances are cheaper to operate per compute unit than x86 at cloud scale, and GitHub prices ARM below the x86 Linux rate ($0.005/min vs $0.006).
This is not a temporary promotion. The ARM discount reflects the real hardware economics of running Graviton vs x86 at scale. Graviton 3 (c7g, m7g) offers competitive performance to x86 on standard web workloads while consuming approximately 60% of the power. Note the gap narrowed after the January 2026 repricing, when GitHub cut x86 from $0.008 to $0.006 while ARM held near $0.005, so the saving is now roughly 17% rather than the steeper discount ARM launched with.
The ARM runner was generally available on GitHub-hosted runners for all orgs in 2025. ARM remains the cheaper of the two Linux options, just by a smaller margin than before.
Platform ARM availability
| Platform | ARM Available | ARM Rate | ARM Image | Notes |
|---|---|---|---|---|
| GitHub Actions (hosted) | Yes | $0.005/min | ubuntu-24.04-arm | ~17% cheaper than $0.006 x86 |
| CircleCI | Yes | arm.medium/large credits | arm.medium | ARM resource class in CircleCI |
| GitLab CI | Yes (SaaS) | Included in plan minutes | arm64 shared runners | Available on GitLab.com SaaS |
| Buildkite | BYO (self-host) | Your EC2/GKE cost | Any ARM image | Run your own Graviton agent |
| AWS CodeBuild | Yes | $0.004/min (arm1.small) | arm1.small/medium | Graviton 2/3, AWS-native |
| Azure DevOps | Self-hosted only | Your Azure cost | Arm64 agent | No Microsoft-hosted ARM agent |
| Depot | Yes | $0.004/min | depot-ubuntu-24.04-arm | Same as Depot's Linux x86 rate |
| Blacksmith | Yes | $0.0025/min | blacksmith ARM | Cheapest ARM among managed providers bar Ubicloud |
| Ubicloud | Yes | ~$0.001/min | ubicloud-standard-2-arm | Lowest per-minute ARM rate, 2-vCPU standard |
When ARM works
WORKS WITHOUT CHANGES
- ✓Node.js / npm / pnpm / yarn builds
- ✓Python / pip / poetry / uv
- ✓Go compilation and testing
- ✓Rust / cargo
- ✓Java / Maven / Gradle
- ✓Ruby / bundler
- ✓PHP / Composer
- ✓Docker multi-stage builds (with buildx)
- ✓Most standard web application workloads
FAILURE CASES
- ✗Legacy C++ with x86-specific intrinsics (SSE, AVX)
- ✗Proprietary binaries compiled for x86 only
- ✗Older Electron versions before ARM64 support
- ✗Some ML frameworks with x86-only CUDA paths
- ✗Chromium-based E2E testing (improving)
- ✗Some Go CGo packages with x86-specific C deps
The honest counterpoint: the ~17% per-minute saving evaporates if the workload runs slower on ARM. A job that takes 1.2x the wall-clock time on ARM would cost more than x86 despite the lower rate. Always benchmark before committing. In practice most standard web workloads perform within 5-10% of x86 on ARM64, so the ~17% rate advantage is largely realised, but it is a modest lever, not a halving.
Migration recipe
# Switch a workflow from x86 to ARM
jobs:
build:
# Before:
# runs-on: ubuntu-latest
# After: pick one of these
runs-on: ubuntu-24.04-arm # GitHub-hosted ARM
# runs-on: depot-ubuntu-24.04-arm # if using Depot
# runs-on: blacksmith-2vcpu-ubuntu-2404-arm # if using Blacksmith
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: 'npm'
- run: npm ci
- run: npm testFor Docker builds, add multi-arch support with buildx:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push
uses: docker/build-push-action@v6
with:
platforms: linux/arm64,linux/amd64
cache-from: type=gha
cache-to: type=gha,mode=max
push: true
tags: ghcr.io/${{ github.repository }}:latestCost worked example
10-DEVELOPER NODE.JS TEAM, 6,000 MIN/MONTH
One hour of YAML editing for a modest ongoing saving. The per-minute discount is smaller than it was when ARM launched, but it is still free money on a pure Linux workload. The only question is whether your workload has ARM compatibility issues.
DIGITAL SIGNET · PIPELINE AUDIT
Ready to switch to ARM? We validate compatibility in two days.
Digital Signet reviews your workflow definitions, identifies ARM-incompatible steps, and delivers a migration plan with a tested YAML diff.
Get an Audit