What a GitHub Actions macOS runner really costs in 2026

For paid private-repository usage beyond the included allowance, GitHub's standard macOS runner costs $0.062 per billed minute, $3.72 per billed hour (checked 25 Oct 2026). GitHub's current pages print per-minute rates rather than a multiplier; at the price ratio of $0.062 to $0.006 for Linux 2-core, about 10 to 1, GitHub Free's 2,000 included minutes cover about 200 macOS minutes, 3 hours 20 minutes. The arithmetic and the alternatives follow, with every outside number dated and linked.

How much do GitHub’s macOS runners cost?

GitHub bills hosted macOS runners per minute, for private-repository usage beyond the plan’s included minutes; standard runners are free in public repositories. The rates on GitHub’s Actions runner pricing page (checked 25 Oct 2026) are $0.062 a minute for the standard 3- or 4-core runner behind the macos-latest label, $0.077 for the 12-core runner and $0.102 for the 5-core M2 Pro runner: $3.72, $4.62 and $6.12 per billed hour. Each job is rounded up to the next whole minute before the rate applies. Included minutes, 2,000 a month on GitHub Free and 3,000 on Pro and Team per About billing for GitHub Actions (checked 25 Oct 2026), run out faster on macOS: GitHub’s current pages print rates rather than a multiplier, and the ratio of $0.062 to $0.006 for Linux 2-core is about 10 to 1, so 2,000 minutes cover roughly 200 macOS minutes. Included minutes cannot be used on the two larger runners. Storage is billed separately; every figure on this page covers compute only.

The three macOS rates

Runner Billing SKU Per minute Per hour Who can use it
macOS 3-core or 4-core (M1 or Intel) actions_macos $0.062 $3.72 Every plan; the runner behind the macos-latest label
macOS 12-core macos_l $0.077 $4.62 Larger runner: Team and Enterprise Cloud organizations only
macOS 5-core (M2 Pro) macos_xl $0.102 $6.12 Larger runner: Team and Enterprise Cloud organizations only
Linux 2-core, for scale actions_linux $0.006 $0.36 Every plan

Rates from GitHub’s Actions runner pricing reference (checked 25 Oct 2026); the per-hour figures are the per-minute rate times 60. The two larger macOS runners carry two extra rules on the same page: “Included minutes cannot be used for larger runners”, and “Larger runners are only available for organizations and enterprises using the GitHub Team or GitHub Enterprise Cloud plans.” Every minute on them is a paid minute.

Why 2,000 included minutes become about 200

GitHub’s plans include minutes, not dollars: 2,000 a month on Free, 3,000 on Pro and Team, 50,000 on Enterprise Cloud, per About billing for GitHub Actions (checked 25 Oct 2026). That page and the runner pricing page print per-minute rates and no multiplier. The REST API documentation still says a workflow’s reported usage “does not include the multiplier for macOS and Windows runners”, without stating a value (checked 25 Oct 2026). The table below therefore uses the price ratio, $0.062 for a standard macOS minute against $0.006 for a Linux 2-core minute, about 10 to 1, as a planning assumption rather than a vendor rule. The deductions also assume the full monthly quota is still unused and no other jobs consumed it.

Illustration assuming a 10x included-minute multiplier; confirm against account billing.

Plan Included minutes a month macOS minutes at 10x In hours
GitHub Free 2,000 200 3 h 20 min
GitHub Pro 3,000 300 5 h
GitHub Team 3,000 300 5 h
GitHub Enterprise Cloud 50,000 5,000 83 h 20 min

Included minutes cover standard runners only, never the 12-core or M2 Pro runners, and they matter for private repositories; standard runners are free in public ones.

How are macOS jobs rounded?

The pricing page states the rule in one sentence: “GitHub rounds the minutes and partial minutes each job uses up to the nearest whole minute” (Actions runner pricing, checked 25 Oct 2026). The unit is the job, not the workflow. A 40-second job that checks formatting on a standard macOS runner bills one minute: $0.062, or about ten included minutes on the 10x assumption. A matrix of six jobs that each take 4 minutes 10 seconds bills 30 minutes, not 25. At the listed paid rates, the same extra billed minute costs about 10.3 times as much on standard macOS as on Linux 2-core, so many short macOS jobs are the expensive shape. Merge short steps into one job and keep lint and formatting on Linux.

What would an example iOS CI workflow cost?

Take a job that resolves Swift packages, builds the app and runs unit tests on one Simulator in 18 minutes 30 seconds. GitHub bills 19 minutes, at the rates on Actions runner pricing (checked 25 Oct 2026):

  • Standard runner: 19 × $0.062 = $1.18
  • 12-core runner: 19 × $0.077 = $1.46
  • M2 Pro runner: 19 × $0.102 = $1.94

Add a UI-test job of 25 minutes: $1.55 on the standard runner. A push that runs both jobs bills 44 minutes and $2.73. Ten pushes a day for 22 working days is 220 pushes, 9,680 macOS minutes and $600.16, before included minutes. On GitHub Team, 3,000 included minutes cover about 300 macOS minutes on the 10x assumption, under seven of those pushes, if nothing else used them. The 18 minutes 30 seconds, the 25-minute UI-test job, ten pushes a day and 22 working days are assumptions for the example, not measurements of any project.

What is the monthly compute bill?

The table covers compute only, at the rates on Actions runner pricing (checked 25 Oct 2026), before included minutes and before storage. The hours are billed runner-hours after each job is rounded up, so 30 hours of elapsed runtime made of short jobs bills more than 1,800 minutes. The 730-hour row is an illustrative average month, not the length of October or one uninterrupted job.

Billed runner-hours after rounding each job Billed minutes Standard, $0.062 12-core, $0.077 M2 Pro, $0.102
30 1,800 $111.60 $138.60 $183.60
90 5,400 $334.80 $415.80 $550.80
300 18,000 $1,116.00 $1,386.00 $1,836.00
730, an illustrative average month 43,800 $2,715.60 $3,372.60 $4,467.60

To turn your own usage into a bill:

  1. Round each job’s duration up to the next whole minute.
  2. Sum the billed minutes by runner class: standard, 12-core, M2 Pro.
  3. Subtract the standard-runner minutes your plan’s remaining allowance still covers, at about ten included minutes per macOS minute on the 10x assumption; larger runners get no allowance. If the full quota is unused, that is worth $12.40 on Free (200 macOS minutes) or $18.60 on Pro and Team (300) at the standard rate.
  4. Multiply what is left by each class’s per-minute rate.
  5. Add artifact and cache storage beyond the plan’s included amounts, which GitHub bills separately from minutes (About billing for GitHub Actions, checked 25 Oct 2026).

The full-time row is the one that circulates. Cirrus Runners’ pricing page says a similar macos-latest runner managed by GitHub “costs $3,456 a month” (checked 25 Oct 2026). $3,456 equals 720 × 60 × $0.08; that is our reconstruction, not an explanation supplied by Cirrus. At today’s $0.062 the same 720 hours cost $2,678.40, and a 730-hour month $2,715.60.

What changed in January 2026

Per GitHub’s pricing-changes page, dated 15 December 2025 (checked 25 Oct 2026): from 1 January 2026 the prices of hosted runners fell “by up to 39%”, with a $0.002 a minute Actions cloud platform charge included in the listed rates. The announced billing change for self-hosted runners is postponed while GitHub re-evaluates it. Standard runners stay free in public repositories. The page prints no included-minute figures and no macOS multiplier; the rates above come from the current pricing reference, and the allowance table rests on the billing page’s included minutes and the price ratio.

Alternatives, checked 25 Oct 2026

Prices come from each vendor’s public page on that date; per-hour figures are our arithmetic, and each row links its source. A longer table with worked bills is on macOS CI runners pricing compared; Xcode Cloud and Cirrus Runners each have a page of their own, Macswarm vs Xcode Cloud and Cirrus Runners alternative.

Vendor macOS price Hardware Notes Source
GitHub-hosted, standard $0.062 a minute, $3.72 an hour M1 or Intel, 3 or 4 cores Included minutes drawn down at about 10x by price ratio; no multiplier printed docs.github.com, checked 25 Oct 2026
Namespace $0.06 a minute prepaid for 6 vCPU, 14 GB ($3.60 an hour), $0.09 overage; prepaid shapes from $0.04 (4 vCPU, 7 GB) to $0.20 (16 vCPU, 56 GB) M4 Pro and M5 Max Namespace labels these rates prepaid; plans are Developer (pay as you go), Team ($100 a month) and Business ($250 a month); 30-day trial namespace.so/pricing, checked 25 Oct 2026
WarpBuild $0.08 a minute (6 vCPU, 14 GB), $4.80 an hour; $0.16 for 12 vCPU, 28 GB M4 Pro No card to start warpbuild.com/pricing, checked 25 Oct 2026
Depot $0.08 a minute (8 vCPU, 24 GB), $4.80 an hour M4 Its docs note macOS capacity is not fully elastic depot.dev, checked 25 Oct 2026
Blacksmith $0.08 a minute, $4.80 an hour; 3,000 free minutes a month per runner type M4 Startup and open-source discounts blacksmith.sh/pricing, checked 25 Oct 2026
Tenki $0.040 (2 vCPU) to $0.160 a minute (8 vCPU, 32 GB), $2.40 to $9.60 an hour M4 Pro bare metal $100 starter credit, no card tenki.cloud, checked 25 Oct 2026
MacRun $139 a month flat for one dedicated Mac mini as a runner M6 Mac mini MacRun’s own break-even against GitHub’s standard rate is about 2,242 minutes a month macrun.dev, checked 25 Oct 2026
Xcode Cloud 25 compute hours a month included with the Apple Developer Program; 100 h $49.99, 250 h $99.99, 1,000 h $399.99 Apple-managed Apple platforms only; $0.50 an hour on the 100-hour tier developer.apple.com, checked 25 Oct 2026
Cirrus Runners $150 a month per concurrent runner, unlimited minutes M4 Pro Not taking new customers since April 2026, per cirruslabs.org (checked 25 Oct 2026) cirrus-runners.app, checked 25 Oct 2026

MacRun’s 2,242-minute figure compares its $139 with GitHub’s $0.062 rate and leaves out included minutes and administration. With 200 or 300 included macOS minutes still available, the same simple rate comparison shifts to roughly 2,442 or 2,542 total minutes. Those are derived examples, assuming identical work on both machines, from the sources and date above.

Where each is the better choice:

  • GitHub-hosted runners, when macOS is a small share of your CI and you want nothing to set up.
  • Namespace, WarpBuild, Depot, Blacksmith or Tenki: consider these vendors for different hardware, capacity or workflow features. Compare the chosen shape’s rate and measure your own job duration; several listed rates exceed GitHub’s standard rate. Blacksmith’s free minutes and Tenki’s starter credit suit a trial.
  • MacRun or another flat-rate dedicated Mac, above roughly 2,200 to 2,550 macOS minutes a month depending on your included minutes, per the derived examples above, if someone will administer the machine.
  • Xcode Cloud, for an individual or small team inside the Apple Developer Program for whom 25 hours a month is enough.

Where Macswarm fits

Macswarm is not a GitHub Actions runner. There is no runs-on label and no workflow YAML; nothing here replaces your CI. Macswarm hosts Pods for coding agents: a Mac with the Latest Xcode, iOS runtimes and pre-booted Simulators that Claude Code and Codex sessions connect to, with two to three active agents per Pod. A Pod belongs to one developer, and that developer’s sessions share it. Pro is $99 a month for 300 Pod-hours, about $0.33 per included Pod-hour if all 300 are used, and $0.40 per extra Pod-hour; Team is $399 for 1,500 and $0.30 per extra; see pricing. Anthropic or OpenAI bill model usage separately. The comparison with a runner only holds for agent work: an agent that builds, launches, taps through the app and reads the screen for hours at a time. Why cloud agents need a Mac to build iOS draws the line between CI and an agent session. For a test matrix on every push, GitHub or one of the runner vendors above is the right tool, and agents can open pull requests from a Pod that your existing pipeline verifies. Setup is in the Claude Code quickstart and the Codex quickstart; build slots, Simulator leases and plan caps are in Limits and queues, and the isolation model is on Security. The side-by-side is on Macswarm vs GitHub-hosted macOS runners.

FAQ

How many macOS minutes do 2,000 included GitHub Actions minutes buy?

About 200 minutes, or 3 hours 20 minutes, on the assumption that a macOS minute draws ten included minutes. GitHub’s current pages print per-minute rates rather than a multiplier; the ratio of $0.062 for standard macOS to $0.006 for Linux 2-core is about 10 to 1 (Actions runner pricing, checked 25 Oct 2026). On the same assumption GitHub Pro and Team’s 3,000 included minutes cover about 300 macOS minutes and Enterprise Cloud’s 50,000 about 5,000. Included minutes apply to standard runners only, so the 12-core and M2 Pro macOS runners are always paid. Confirm against your account’s billing.

How much does a macos-latest runner cost per month if it runs all the time?

About $2,716 at the standard rate of $0.062 a billed minute for an illustrative 730-hour month (43,800 minutes), before included minutes and excluding storage (Actions runner pricing, checked 25 Oct 2026). The 12-core runner costs about $3,373 and the 5-core M2 Pro runner about $4,468 for the same month. The $3,456 figure on Cirrus Runners’ pricing page equals 720 × 60 × $0.08; that is our reconstruction, not an explanation supplied by Cirrus.

Is the macOS minute multiplier still 10x after the January 2026 price change?

GitHub’s current billing pages print per-minute rates and no multiplier (checked 25 Oct 2026). The REST API documentation still says a workflow’s reported usage does not include the multiplier for macOS and Windows runners, without stating a value. The price ratio, $0.062 for standard macOS against $0.006 for Linux 2-core, is about 10.3 to 1; the tables on this page assume 10x for included minutes. The billing dashboard shows spend in dollars, which already reflects the rates, so confirm there.

Can I use included minutes on the 12-core or M2 Pro macOS runners?

No. GitHub’s pricing page says included minutes cannot be used for larger runners, and larger runners are billed at the per-minute rate even when the account has quota left (Actions runner pricing, checked 25 Oct 2026). They are also only available to organizations on GitHub Team or Enterprise Cloud.

Sources

Reviewed October 25, 2026. Facts on this page are rechecked when the product changes.