GitHub Actions Billing Explained
Everything you need to know about GitHub Actions minutes, runner multipliers, billing cycles, and how to avoid unexpected overages.
Free Minutes by Plan
Every GitHub plan includes a monthly allowance of Actions minutes for private repositories. Public repositories get unlimited free minutes on all plans.
| Plan | Monthly Minutes | Storage | Price |
|---|---|---|---|
| Free | 2,000 | 500 MB | $0 |
| Team | 3,000 | 2 GB | $4/user/mo |
| Enterprise | 50,000 | 50 GB | $21/user/mo |
Minutes reset on the first day of each billing cycle. Unused minutes do not carry over.
Runner Multipliers
Not all minutes are counted equally. GitHub applies multipliers based on the operating system of the runner. One minute on a macOS runner costs 10x what a Linux minute costs.
| Runner OS | Multiplier | Per-Minute Rate | Effective Cost (1 hr) |
|---|---|---|---|
| Linux | 1x | $0.008 | $0.48 |
| Windows | 2x | $0.016 | $0.96 |
| macOS | 10x | $0.08 | $4.80 |
Larger Runners
GitHub also offers larger hosted runners with more CPU and RAM. These are billed per minute at higher rates, and the minutes do not come from your included minutes pool.
| Runner | vCPU | RAM | Per-Minute Rate |
|---|---|---|---|
| Linux 4-core | 4 | 16 GB | $0.032 |
| Linux 8-core | 8 | 32 GB | $0.064 |
| Linux 16-core | 16 | 64 GB | $0.128 |
How the Billing Cycle Works
GitHub Actions billing follows your account's billing cycle, not the calendar month. Here's what you need to know:
- 1.Minutes reset on the first day of your billing cycle (check Settings → Billing).
- 2.Unused minutes do not roll over to the next month.
- 3.Once you exceed your included minutes, you're charged at the per-minute overage rates above.
- 4.You can set a spending limit (including $0) in Settings → Billing → Actions to prevent unexpected charges.
How Overages Happen
The most common causes of billing surprises:
macOS Runner Usage
A 20-minute iOS build workflow running twice daily uses 12,000 minutes/month after the 10x multiplier. That's 6x the free plan's allowance.
Runaway Workflows
A workflow triggered on every push to every branch, or one stuck in an infinite retry loop, can burn through your minutes in hours.
Fork Pull Requests
Workflows triggered by pull requests from forks consume your minutes, not the contributor's. A popular open-source repo can quickly eat through private repo minutes.
Track Your GitHub Actions Usage
Build Quota monitors your minutes in real time, predicts when you'll run out, and alerts you before overages hit.