Are GitHub Actions free? On a public repository with standard GitHub-hosted runners, yes: GitHub's own reference says their use "is free and unlimited on public repositories". On a private repository you get $12 to $300 of included usage a month depending on plan, spent at each runner's per-minute rate, and pay per minute after it. Larger runners are billed on public repositories too, and draw on the allowance only on GitHub Team and Enterprise Cloud.

Whether a job is billed, by repository visibility and runner type, from GitHub's billing and runner pricing references read on 12 November 2026.
The short answer has three branches and most articles only tell you about one. Whether you pay depends on repository visibility, on the runner you asked for, and only then on your plan.
The rest of this page is those three branches with the rules quoted, the allowance converted into something you can recognize, and the limits that come with the free tier even when no money changes hands.
Free, and unlimited, on public repositories
GitHub's runner reference does not hedge: "Use of the standard GitHub-hosted runners is free and unlimited on public repositories." There is no minute cap attached to that sentence and no plan requirement. The billing documentation adds GitHub Pages and Dependabot to the same free list, and self-hosted runners are free everywhere because their usage is not metered at all.
Public repositories are also given more machine for nothing. The standard Linux runner has four vCPUs and 16 GB of RAM on a public repository and two vCPUs and 8 GB on a private one, read from the same reference today. Same label, same zero cost, twice the machine.
One exception spoils the sentence, and it is the exception this whole page exists for. Larger runners are not standard runners: "Larger runners are not free for public repositories." An open source project that moves a job to a 16-core machine begins paying $0.042 a minute for a workflow that was free the day before.
Partly free on private repositories, and the allowance is in dollars
Private repositories get a monthly amount of included compute usage, which resets at the start of each billing cycle: $12 on GitHub Free, $18 on Pro and on Team, and $300 on GitHub Enterprise Cloud. GitHub deducts each job at its runner's per-minute rate. Until 28 October 2026 the allowance was a minute count of 2,000, 3,000 and 50,000, which is what those dollar amounts still buy on a standard Linux runner at $0.006. Storage has separate allowances and its own rates.
Because the allowance is a sum of money, the useful question is what it buys on the runner you use. An 8 minute job on a standard Linux runner costs $0.048, so it fits 250 times into $12, which is about 12 runs on each working day of a 21 day month. That sounds generous until you remember the unit is a job, not a run, and that the same $12 buys 150 of those jobs on Windows at $0.010 and 24 on macOS at $0.062.
A realistic workflow of five jobs that each bill 8 minutes spends 40 minutes per run, which is $0.24 on standard Linux. That is 50 runs a month on GitHub Free and 75 on Pro or Team. A team of four merging a few pull requests a day will pass it in the second week, which is why running out of minutes is a more common page to need than the pricing page.
| Plan | Included usage a month | Runs of one 8-minute Linux job | Runs of a 5-job Linux workflow |
|---|---|---|---|
| GitHub Free | $12 | 250 | 50 |
| GitHub Pro | $18 | 375 | 75 |
| GitHub Team | $18 | 375 | 75 |
| GitHub Enterprise Cloud | $300 | 6,250 | 1,250 |
Allowances read from GitHub Actions billing on 12 November 2026; the change from minutes to dollars is in the 28 October 2026 changelog entry. The two right columns are those amounts divided by $0.048 and $0.24, the price of 8 and 40 billed minutes on a standard Linux runner at $0.006, since every job is rounded up to a whole minute separately.
Larger runners are billed wherever the repository lives
Larger runners get their own paragraph because they bend both of the rules above. "Larger runners are not free for public repositories", so visibility does not help. And they draw on the included amount only on GitHub Team and Enterprise Cloud: an $18 Team allowance covers 1,500 minutes of a 4-core Linux runner at $0.012, after which every minute bills. Until 28 October 2026 the allowance did not touch them at all.
They also come with prerequisites that make the billing explicit before you can start. GitHub requires "a valid credit card on file in order to use larger runners", says your "GitHub Actions spending limit must be set to a value greater than zero", and restricts them to organizations on GitHub Team or GitHub Enterprise Cloud. If you have never been asked for a card, you have never used one.
The full size ladder and what each step costs is on larger runners pricing.
What the free tier costs you in limits
The included usage is not the only thing a plan meters. GitHub's limits reference publishes concurrency by plan, and on the free tier it is the tightest number in the product: 20 concurrent jobs and at most 5 of them on macOS. Pro raises the first number to 40, Team to 60, and Enterprise to 500 with 50 macOS.
Three other ceilings apply whatever you pay. A job on a hosted runner may run for up to six hours, a matrix "can generate a maximum of 256 jobs per workflow run", and since April 2026 "A workflow run can be re-run a maximum of 50 times". The ubuntu-slim runner adds a fourth: jobs on it are cut off at 15 minutes.
None of these costs money. All of them decide whether free is workable for you, and the concurrency number is usually the one that decides it first: 20 concurrent jobs is one large matrix.
Where free stops being the cheapest option
On a public repository, nothing paid can beat free standard runners, and no page on this site will pretend otherwise. If your repository is open and your jobs fit the standard machine, the cost conversation is over.
On a private repository past the allowance, the question becomes what a minute costs rather than whether it is free. GitHub charges $0.006 for a standard Linux minute. Latchkey publishes $0.0025 for a 2 vCPU runner, so 10,000 minutes a month is $60 on GitHub against $25 of compute on Latchkey plus a monthly plan fee of $5 on Developer, $19 on Launch or $49 on Scale, with Latchkey's own included minutes not netted off: $30, $44 or $74 all in. Two of those three are below $60 and one is not, which is what an honest rate comparison looks like at 10,000 minutes. How Latchkey cuts the GitHub Actions bill sets out where that gap stops being marginal.
Before changing a rate, though, check what you are running. How to reduce GitHub Actions costs ranks seven changes by what each one saves, and the top three are all about running less rather than running cheaper.
FAQ
Does GitHub Actions cost money?
It costs nothing on a public repository with standard GitHub-hosted runners, and nothing for self-hosted runners on any repository. On a private repository it costs nothing until your included usage is spent, then $0.006 a minute for a standard Linux runner and more for Windows, macOS and larger machines. Larger runners are billed on public repositories too, and draw on the included usage only on Team and Enterprise Cloud.
How many GitHub Actions minutes are free?
Since 28 October 2026 GitHub states the allowance in dollars: $12 a month on GitHub Free, $18 on GitHub Pro and GitHub Team, and $300 on GitHub Enterprise Cloud. On a standard Linux runner at $0.006 that is 2,000, 3,000 and 50,000 minutes; Windows and macOS minutes spend it faster at their own rates. It resets at the start of each billing cycle, and on public repositories standard runners are free and unlimited, so no allowance applies.
What are the GitHub Actions free tier limits on a private repository?
$12 of included compute usage a month, which is 2,000 standard Linux minutes, 500 MB of artifact storage shared with Packages, and 10 GB of Actions cache per repository. Alongside those, GitHub Free allows 20 concurrent jobs with at most 5 on macOS. The standard Linux runner in a private repository has two vCPUs and 8 GB of RAM, half the machine a public repository gets.
Are GitHub Actions free for open source projects?
Yes, as long as the repository is public and the jobs run on standard GitHub-hosted runners: GitHub's reference describes that use as free and unlimited. The one way to start paying on an open source project is to move a job to a larger runner, which GitHub bills at its per-minute rate on public repositories too.
References
- GitHub-hosted runners: free and unlimited on public repositories, and the machine specs (verified 2026-09-20)
- GitHub Actions billing: included compute usage and storage allowances by plan (verified 2026-11-12)
- GitHub: Actions runner pricing and the larger runner exceptions (verified 2026-11-12)
- GitHub Actions limits: concurrency by plan, matrix size and re-runs (verified 2026-09-20)
- Latchkey pricing: published per-minute runner rates and plan fees (verified 2026-09-20)
Top comments (0)