Skip to main content

Estimating the cost of using GitHub Actions on different types of runners

Analyze the costs and benefits of different CI/CD setups by understanding the relative costs of using GitHub-hosted and self-hosted runners.

谁可以使用此功能?

Users who can see the "Billing & Licensing" and "Insights" pages for an organization or enterprise on GitHub.com or GHE.com

As your usage of CI/CD grows, optimizing costs becomes increasingly important. With this tutorial, you can assess your current GitHub Actions costs, estimate the impact of upcoming pricing changes, and identify configuration changes that could reduce expenses or improve efficiency. See 2026 pricing changes for GitHub Actions in GitHub Executive Insights.

1. Download past usage of GitHub Actions

You can download a full breakdown of the costs of using GitHub-hosted runners from the "Usage" view of the "Billing & licensing" tab.

Usage of self-hosted runners is available on the Insights tab of your organization or enterprise. From March 1, 2026, this data will also be included in billing usage reports.

Generate report for runner usage and costs

  1. 访问您的组织或企业。 例如,来自 https://github.com/settings/organizationshttps://github.com/settings/enterprises.

  2. 单击“ Billing & Licensing”,以显示帐户的计费和许可概述****:

    • 组织帐户:在设置边栏中的“Access”下****。
    • 企业帐户:以单独的选项卡形式显示在页面顶部****。
  3. In the left sidebar, click Usage . For enterprises, then click Metered usage.

  4. At the top of the page, click Get usage report.

  5. Select a report type of Summarized and a time frame of at least three months.

  6. Click Email me the report.

When the report is ready for you to download, you'll receive a message to your primary email account with a link to download the report. The link will expire after 24 hours.

Get usage of self-hosted runners

  1. Click Insights tab for your organization or enterprise to display additional insights.

  2. In the "Insights" navigation menu, click Actions Usage Metrics to display usage data.

  3. At the top of the page, click Period:Current month and define a time period of at least three months.

  4. In the tabbed table, click Jobs to show all usage split by job.

  5. To show only jobs that run on self-hosted runners, add a filter on runner type:

    Text
    runner_type:self-hosted
    
  6. To the right of the filter box, click to download the data from the table.

2. Summarize past usage and costs

You have downloaded one billing report, summarizedUsageReport, and possibly one actions usage metrics report for self-hosted runners. You need to further summarize the data from the summarizedUsageReport before moving to the next step, for example:

  • Get cost per runner type: Sum costs for each sku for the actions product
  • Get usage of minutes included in your plan: Sum minutes for each sku that were included in your plan, that is: net_amount of 0
  • Consider splitting the costs and included minutes by organization

For an example Python script that generates this summary information from a summarizedUsageReport, see summarize_actions_costs.py.

提示

There is no change to the costs of storing artifacts and caches, so you can ignore the actions_storage SKU.

3. Estimate impact of the cost changes

Using the summaries of the recent costs of GitHub-hosted runners and the minutes used by self-hosted runners, you can estimate future costs of using GitHub Actions.

General trend in costs

Assuming that the number of workflows you run and the time they take to complete stays similar, the impact on your future costs will vary according to the types of runners that you currently use:

  • Mostly GitHub-hosted runners: You will see lower bills for GitHub Actions.
  • Mostly self-hosted runners: You will probably see higher bills for actions. It makes sense to re-evaluate your split between self-hosted and GitHub-hosted runners. You may find that the costs of maintaining your own runners versus using GitHub-hosted runners are more evenly balanced.
  • A mix of runner types: You will need to assess how your costs will change with the new charging model and decide whether or not to make any changes to your runner usage.

Detailed calculations of changes to costs

For each type of runner that you use, you can calculate how much the same usage will cost from January and from March 2026 using data from Actions 运行器定价.

To estimate your expected spend more precisely, you can also use the GitHub pricing calculator.

In this example, the change in costs for standard GitHub-hosted runners and self-hosted runners is calculated.

Runner typePast GitHub billJanuary 1, 2026 onwardMarch 1, 2026 onward
Linux 2-core (actions_linux)past costpast cost * 0.75past cost * 0.75
Windows 2-core (actions_windows)past costpast cost * 0.62past cost * 0.62
macOS 3-core or 4-core (actions_macos)past costpast cost * 0.77past cost * 0.77
Self-hosted$0 USD$0 USDMinutes used * $0.002 USD

The multipliers in this table reflect the change in per-minute pricing for standard GitHub-hosted runners starting January 1, 2026. For self-hosted runners, billing begins on March 1, 2026, based on total minutes used.

4. Identify runner changes to explore

When you have estimated the impact of the charging changes on your costs, you may want to update your runner usage.

Investing the budget freed in more powerful runners

If the billing changes free some of your budget, then you could identify the workflows that take the longest to run and update them to use larger runners hosted by GitHub.

To identify the longest-running workflows, display the Insights tab for your enterprise or organization and display the Actions performance metrics. Click Avg run time to sort the workflows by run time.

For more information, see 大型运行器.

Migrating workflows from self-hosted to GitHub-hosted runners

If the total cost of running workflows on self-hosted runners is now similar to the cost of using GitHub-hosted runners, you may want to simplify your CI/CD platform by migrating from self-hosted runners.

Some considerations:

  • Do all the costs of maintaining self-hosted runners come under the same internal budget as billing for actions usage?
  • Are we using all the processing time included in our GitHub plan currently?
  • Do any of the self-hosted runners provide specialized environments that would be difficult to replicate on a GitHub-hosted runner?

提示

You can request that additional tools are added to GitHub-hosted runners, by raising an issue with the tool request template.

Next steps