GitHub Actions free minutes for private repositories, by plan
Public repositories run on standard GitHub-hosted runners for free. Private repositories get a monthly allowance of minutes that depends on the account's plan. This page lists the allowance of each plan, turns it into a number of jobs, and shows what happens just past the limit. The figures are the ones this site's calculator uses.
Included minutes per plan
| Plan | Included minutes per month | 5-minute jobs that covers | Jobs per day over 20 working days |
|---|---|---|---|
| GitHub Free | 2,000 | 400 | 20 |
| GitHub Pro | 3,000 | 600 | 30 |
| GitHub Free for organizations | 2,000 | 400 | 20 |
| GitHub Team | 3,000 | 600 | 30 |
| GitHub Enterprise Cloud | 50,000 | 10,000 | 500 |
The last two columns are plain division, to give the allowance a shape: 2,000 minutes is 400 jobs of 5 minutes, or 20 such jobs on each of 20 working days. What the plans themselves cost per seat is not in this site's data, so it is not covered here; GitHub's billing documentation, linked at the foot of this page, is the place to start.
What the allowance does and does not cover
- It covers standard runners. Linux, Windows and macOS standard runners all draw on the same allowance. The GitHub pages read on 2026-10-05 list no minute multiplier, so the calculator counts every standard-runner minute as one included minute.
- It does not cover larger runners. GitHub's pricing reference says included minutes cannot be used for larger runners. Every minute on one is billed.
- It is counted per job, rounded up. Each job is rounded up to a whole minute, so a 20-second job uses one included minute.
- Self-hosted runners do not use it. GitHub's billing page states that Actions usage is free for self-hosted runners.
Worked example: exactly at the limit
A developer on GitHub Free runs 20 jobs per working day in a private repository, 5 minutes each, 20 working days a month, on the Linux 2-core runner. That is 400 jobs and 2,000 minutes, the whole allowance and no more. The calculator gives $0.00.
Worked example: 500 minutes over
Raise that to 25 jobs a day: 500 jobs and 2,500 minutes, of which 2,000 are included and 500 are billed at the rate of the runner they ran on.
| All jobs on | Rate per minute | Cost per month |
|---|---|---|
| Linux 2-core (x64) | $0.006 | $3.00 |
| Windows 2-core (x64) | $0.01 | $5.00 |
| macOS | $0.062 | $31.00 |
On Linux that is $3.00 a month, or $36.00 a year. There is no separate overage price: a minute past the allowance costs the ordinary rate of its runner.
Worked example: the same jobs on a plan with 3,000 minutes
The same 2,500 minutes on GitHub Pro, which includes 3,000, cost $0.00 and leave 500 minutes unused. Whether a bigger plan is worth it for the minutes alone depends on the plan's own price, which this site's data does not hold. What the data does show is the most the extra 1,000 minutes can be worth: 1,000 Linux 2-core minutes at $0.006 each.
Storage has its own allowance
Minutes are not the only thing a plan includes. The same GitHub page lists artifact storage, shared with GitHub Packages: 500 MB on GitHub Free, 1 GB on GitHub Pro, 2 GB on GitHub Team and 50 GB on GitHub Enterprise Cloud, plus 10 GB of cache per repository on every plan. Beyond those, shared storage is billed at $0.25 per GB per month and Actions cache at $0.07 per GB per month. The calculator's free estimate covers minutes only.
Two ways to stay inside the allowance
- Make the repository public if the code can be public. Standard runners are then free.
- Merge very short jobs. Rounding makes ten 20-second jobs cost ten minutes.
See where your usage lands. The free calculator takes your plan, jobs per day and job length and shows the minutes used, the minutes left and the cost of any minutes beyond the plan.