Pricing for GitHub Actions
Running your workflows on self-hosted runners is completely free as you bring your own compute. Running workflows in public repositories is also free – even on the powerful runners provided by GitHub. GitHub-hosted runners are available on Linux, Windows, and macOS and in different sizes. If you want to leverage these runners in private repositories, you’ll be charged per minute. The different runners use different minute multipliers (see Table 1.1). Running a workflow on Linux will reduce 1 of your free minutes per minute – and you will be charged $0.008 if you exceed your free minutes. Windows will burn twice as fast through your free minutes and costs $0.08 per minute after that. And macOS will burn 10 times faster through your minutes and charges $0.016 per minute when you have reached the limit of your included minutes:
Operating system |
Minute multiplier |
Price per minute |
Linux |
1 |
$0.008 |
Windows |
2 |
$0.080 |
macOS |
10 |
$0.016 |
Table 1.1 – Pricing per minute for GitHub-hosted runners
That’s the reason why I use Linux for most of the examples in this book and why I always encourage my customers to run as much workload on Linux as possible.
If you use GHEC or the Team plan and you need machines with more power, then you can leverage larger GitHub-hosted runners. They are charged by minute (see Table 1.2) and have additional features such as static IP ranges:
vCPUs |
Linux |
Windows |
macOS |
2 |
$0.008 |
$0.016 |
|
3 |
$0.08 |
||
4 |
$0.016 |
||
8 |
$0.032 |
$0.064 |
|
12 |
$0.32 |
||
16 |
$0.064 |
$0.128 |
|
32 |
$0.128 |
$0.256 |
|
64 |
$0.256 |
$0.512 |
Table 1.2 – Per-minute rate for larger runners
Private networking
In addition to static IP ranges, you can also use Azure private networking to connect GitHub-hosted runners directly to your resources. At the time of writing, this feature is still in beta and might change. See the following link for more information: https://docs.github.com/en/enterprise-cloud@latest/admin/configuration/configuring-private-networking-for-hosted-compute-products/about-networking-for-hosted-compute-products.
GitHub Actions also consumes storage – for example, for logs, workflow artifacts, or caching. If you exceed your included storage, you will be billed $0.008 per GB per day.
Keep in mind that pricing may change, and refer to the GitHub documentation for up-to-date information (https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions).
And to learn GitHub Actions and experiment with workflows – just do everything in public repositories and you will not have to pay, either for compute or for storage.