Last verified August 2026 · 8 min read
GitHub Actions pricing 2026: the complete cost model
TL;DR · RATES SINCE 1 JANUARY 2026
IS GITHUB ACTIONS FREE? THE FREE TIER IN FULL
Yes, for public repositories: GitHub Actions on standard GitHub-hosted runners is completely free and unmetered for public repos, with no minute cap. For private repositories you get a monthly allowance of included minutes and storage that varies by plan, then pay per minute for anything beyond it.
| Plan | Free minutes/mo (private repos) | Free storage |
|---|---|---|
| Free | 2,000 | 500 MB |
| Pro | 3,000 | 1 GB |
| Team | 3,000 | 2 GB |
| Enterprise | 50,000 | 50 GB |
Two catches that surprise teams. First, free minutes are Linux-equivalent and drain at the OS multiplier, so a macOS build burns 10x its wall-clock minutes against your allowance (see the included-minute trap below). Second, once a private repo exceeds its included minutes, overage bills at the standard per-minute rates, or GitHub blocks further runs if you have no payment method on file. Every plan also includes 10 GB of Actions cache storage per repository, separate from the artifact storage above.
Per-plan included minutes
| Plan | Price | Included min/mo | Storage | Notes |
|---|---|---|---|---|
| Free | $0 | 2,000 | 500 MB | Public repos: unlimited minutes |
| Pro | $4/user/mo | 3,000 | 1 GB | Individual developers |
| Team | $4/user/mo | 3,000 | 2 GB | Organisations, SAML, advanced permissions |
| Enterprise | $21/user/mo | 50,000 | 50 GB | Compliance features, audit log, SAML, IP allowlist |
Additional minutes beyond the included allocation are billed at the per-minute rates above. Storage overages run on three separate meters, not one: artifacts and packages at $0.25 per GB per month, Actions cache storage at $0.07 per GB per month, and custom image storage at $0.07 per GB per month. Large runners (8-core, 16-core, 64-core) have separate, higher per-minute rates not listed above.
Two qualifiers on the plan prices. GitHub advertises Team at $4 per user per month and Enterprise from $21 per user per month for the first 12 months, so year two is not the number in the table. And GitHub does not show a Pro price on its main pricing page, so treat the $4 Pro figure as a legacy list rather than a current quote. Rates and allowances read from GitHub's Actions billing documentation and github.com/pricing on 23 September 2026.
The self-hosted platform fee that never landed
In December 2025 GitHub announced a $0.002 per minute platform fee on self-hosted runner minutes, scheduled to start 1 March 2026, to charge for the Actions control plane (orchestration and scheduling) on top of your own infrastructure cost. After heavy community backlash it postponed the change indefinitely before it took effect. As of 23 September 2026 there is no self-hosted platform fee. Self-hosted runner minutes remain free; you pay only for the EC2 or Kubernetes compute you run them on.
What did happen on 1 January 2026 was a price cut on GitHub-hosted runners of up to 39%: Linux x86 dropped from $0.008 to $0.006/min, Windows from $0.016 to $0.010, and macOS from $0.080 to $0.062. GitHub folded the orchestration charge into those hosted rates, so there is no separate fee line on a hosted bill. The net effect was the opposite of the original proposal: hosted runners got cheaper and self-hosting stayed free.
The break-even maths therefore still turns on engineer time, not a GitHub fee. For a team consuming 25,000 self-hosted minutes per month, the dominant cost is maintenance, not infrastructure. Some external managed runners still undercut GitHub-hosted on raw rate (Blacksmith $0.004/min, Ubicloud $0.00125/min for 2-vCPU Linux), while Depot's 2-CPU runner now matches GitHub at $0.006/min (vendor rates read 1 October 2026; see the runner shootout).
25,000 min/mo self-hosted on c6i.xlarge spot (August 2026)
The honest conclusion is unchanged: for most teams under 100,000 minutes per month, the self-hosted path costs more than a managed external runner once you account for engineer time, even without a platform fee. See self-hosted runners for the full break-even analysis.
OS multiplier deep dive
Two numbers govern each OS: the per-minute dollar rate (what overage costs) and the included-minute multiplier (how fast a job drains your monthly allowance). They used to match, but the January 2026 repricing decoupled them. The base is Linux x86 at $0.006/min, 1x on included minutes.
LINUX ARM · $0.005/min · ~17% CHEAPER THAN X86
GitHub-hosted ARM Linux runners run on AWS Graviton and bill at $0.005/min versus $0.006/min for x86, roughly 17% cheaper. This is a real saving on a pure Linux workload but it is not the half-price cut sometimes claimed. See the full ARM runners guide.
WINDOWS · $0.010/min · 2x INCLUDED-MINUTE MULTIPLIER
Windows licensing cost is passed through. Overage bills at $0.010/min and Windows jobs drain included minutes at 2x. If you have significant Windows workloads, Azure DevOps at $0.007/min or $40/parallel job can be cheaper. This is a real migration to consider if your bill is Windows-driven.
MACOS · $0.062/min · 10x INCLUDED-MINUTE MULTIPLIER
Apple hardware leasing at cloud scale explains the premium. Overage bills at $0.062/min and a 10-minute macOS build still consumes 100 of your included minutes (10x). For iOS/macOS development, self-hosting Mac Minis (MacStadium, Scaleway, Hetzner Apple Silicon) is typically cheaper above 5,000 macOS minutes per month. External providers do not undercut GitHub here: Depot and Blacksmith both list macOS at about $0.08/min.
The included-minute trap
The most commonly misunderstood detail in GitHub Actions billing: the included minutes for your plan are Linux-equivalent minutes, consumed at the OS multiplier rate.
EXAMPLE: GitHub Team plan, 3,000 included minutes/mo
A team running daily iOS builds on the Team plan will almost certainly exceed their included minutes every month and pay macOS overage. This is the surprise that shows up on the second billing cycle.
Optimisation checklist
~17% cost reduction, most standard workloads work without changes
npm, pnpm, yarn, maven, gradle, cargo, pip, composer recipes
Skip workflows when unrelated files change. 20-40% typical saving
Cancel superseded builds on force-push. 20-40% saving on active teams
4x Docker build time reduction in common scenarios
Blacksmith, Namespace, Ubicloud list 2-vCPU Linux rates 33-79% below GitHub-hosted
DIGITAL SIGNET · PIPELINE AUDIT
GitHub Actions bill spiked? We find the culprit.
Digital Signet runs two-week pipeline cost audits. We identify the caching gaps, concurrency issues, and OS-mix opportunities that are driving your bill.
Get an Audit