Skipbox

"The job was not started because an Actions budget is preventing further use": what it means and how to get CI running

GitHub shows this message when a budget that covers Actions has Stop usage when budget limit is reached turned on and is spent: in the words of its docs, "if any budget with Stop usage when budget limit is reached enabled is exhausted, additional usage is blocked" (read on November 9, 2026). Often it's a $0 budget, or a product, SKU, repository, cost center or enterprise budget nobody remembers setting. An owner raises the amount or clears the stop option in Billing & Licensing → Budgets and alerts, and then re-runs the refused jobs by hand.

Skipbox publishes this guide and sells a runner. Every fact about GitHub below links to GitHub's own page, read on November 9, 2026.

What the message means, in GitHub's words

The full text on the run page, as a developer quoted it in December 2025, is "The job was not started because an Actions budget is preventing further use." GitHub's docs don't print it, but they describe the mechanism behind it:

  • Budgets are monthly dollar amounts on metered products such as Actions. "For metered products such as GitHub Actions, Copilot AI credits, or cloud sandboxes, you can set budgets to prevent usage once the budget threshold is reached."
  • "Usage of metered products can count toward multiple applicable budgets at the same time, and if any budget with Stop usage when budget limit is reached enabled is exhausted, additional usage is blocked."
  • Without the stop option, a budget only warns: "you will be notified by email if you exceed your budget, but usage will not be stopped."

What a spent budget blocks, in GitHub's own example: "members are now blocked from using all GitHub-hosted runners until the next billing cycle or until the budget is increased." Self-hosted runners aren't in that list. GitHub bills nothing for them and they "do not reduce the included compute usage" (are self-hosted runners free has the charge GitHub announced for them and postponed).

Two other messages look alike and have other causes:

  • "The job was not started because recent account payments have failed or your spending limit needs to be increased." A failed payment, or no payment method once the included compute is used: see what that message means and how to fix it.
  • "The job was not started because your account is locked due to a billing issue." Reported in GitHub's community forum from early November 2026 (#212276). It's about the account's billing, not a budget, and the same guide covers it.

Which budget blocked you

Budgets have a type and a scope, and any spent one with the stop option blocks:

On the organization or enterprise page, "all of your account's budgets appear in one list". "Each row shows the budget's scope, spending against the budget amount, and status." Filter the list by product to find every budget that covers Actions.

GitHub's own example of an overlap: an organization with a $50 budget for the "Actions" product and a $100 budget for the "Actions Linux 96-core" SKU. After it "consumed all its included compute usage and incurred an additional $50 of billable Actions usage", the $50 budget blocked every GitHub-hosted runner, although the SKU budget still had room. "The overlapping $100 SKU budget cannot prevent this block and should be deleted."

A budget made this month is a trap of its own: it "applies only to metered usage from the date of its creation onwards", so in its first billing period you can spend past it even with the stop option on.

Can included minutes run with a $0 budget?

This is the question in a run of GitHub community threads since October 2026: #210649 (October 19), #210874 (October 21), #212145 (November 5) and #212270 (November 6). Each describes a GitHub Free account with a $0 Actions budget, the stop option on, no payment method, minutes left, and a billing status of "Usage blocked". None had an answer from GitHub staff on November 9.

What GitHub's docs say:

  • "Each budget has a type and a scope that define which paid use contributes to spending against the budget."
  • In the overlapping-budget example, the budget fills only after the organization "consumed all its included compute usage".
  • "If your account does not have a valid payment method on file, usage is blocked once you consume the included compute usage."

So by the docs, a $0 budget stops paid use, not the included amount. They don't explain a "Usage blocked" status while included usage remains. To find out for your account:

  1. Run one short job on ubuntu-latest in a private repository. A 1-minute job takes $0.006 from the included amount.
  2. If it starts, the budget isn't what's stopping you. Check which runner the refused jobs used: a macOS job at $0.062 a minute uses $12 of included compute in under 200 minutes.
  3. If it's refused while Billing & Licensing → Usage shows included usage left, open a ticket at support.github.com with a screenshot of Budgets and alerts and the run's message.

Why so many teams hit it in late October 2026

What changed in GitHub's documentation, and what the forum shows. GitHub hasn't said the two are linked.

  • On October 28, 2026, GitHub rewrote its Actions billing pages (github/docs commit 8e7396e5e). The plans' included amounts changed from 2,000, 3,000 and 50,000 minutes to $12, $18 and $300, and the page now says: "The included compute usage is expressed as a monetary amount, not a fixed number of minutes or other usage units."
  • The "$0 budget" and "Usage blocked" threads above run from October 19 to November 6. On November 6, the author of #212276 linked 14 related threads and wrote that there "seems to be an uptick in the last 24 hours".

The dollar amounts equal the old minutes at the 2-core Linux rate: 3,000 minutes at $0.006 is $18. Jobs on larger, Windows or macOS runners spend it faster. When the included minutes reset has the minutes each plan's amount buys on each runner.

Fix it: raise the budget, or stop it blocking

An organization's budget (organization owner)

  1. Click your profile picture, then Your organizations, then Settings next to the organization.
  2. Under Access in the sidebar, click Billing & Licensing, then Budgets and alerts.
  3. Find every budget that covers Actions, including repository-scoped and SKU-level ones.
  4. Click the … menu next to the spent budget, then Edit.
  5. Raise the amount, or clear Stop usage when budget limit is reached to get email alerts instead of blocked jobs.

GitHub warns that "Deleting a budget may remove any limits on spending, depending on your other existing budgets", and a budget's scope can't be changed after it's made: to change the scope, make a new budget and delete the old one.

An enterprise or cost center budget

The enterprise's Billing & Licensing is a tab at the top of the enterprise page. "Enterprise owners and billing managers can create and edit enterprise and cost center budgets." An organization owner can't edit these, so send the enterprise owner the budget's name and the run's message.

A personal account

Open github.com/settings/billing, click Budgets and alerts, then edit the Actions budget the same way.

Re-run the refused jobs

Raising the budget lets new jobs start. It doesn't start the ones already refused. For each run that failed: open it, click Re-run jobs, then Re-run failed jobs. A scheduled workflow runs again at its next scheduled time.

When it lifts on its own

At the start of the next billing period. For metered products such as Actions, it "starts at 00:00:00 UTC on the first day of each month and ends at 23:59:59 UTC on the last day of the month". The included compute "resets to the full amount at the start of each billing cycle", and budgets count monthly, so the block holds until then unless someone raises the budget.

Keep it from coming back

  • One hard budget for Actions. GitHub's advice: "avoid creating overlapping budgets for the use of a product and a SKU, or an organization and a repository, so that users are not unexpectedly blocked."
  • Threshold alerts. On the budget, select Receive budget threshold alerts: GitHub emails you and shows a banner at 75%, 90% and 100%. Under Alert Recipients, add the person who can approve more spend.
  • Included usage alerts. On Budgets and alerts, select Receive alerts when my included usage reaches 90% and 100%, to hear before paid use starts.
  • Your real number. Set the budget to what a busy month costs, not a guess. The free cost calculator reads your usage report and gives that number by runner size; how GitHub Actions billing works has the formula behind it.

Run the blocked jobs today without raising the budget

A job whose runs-on points at a self-hosted runner doesn't spend from the budget, so it starts while the budget stays spent.

Skipbox runs self-hosted runners for you: change a private repository's job to runs-on: skipbox and it runs in a fresh Linux VM in Helsinki, on an organization or a personal account. Plans are $39, $79 or $149 a month with unlimited minutes and no usage charges. The free trial runs one job at a time at 4 vCPU and 8 GB. macOS, Windows, Arm and public-repository jobs stay on GitHub, and stay blocked until the budget is raised.

You can try it on your own jobs first: free for 7 days or 3,000 job-minutes, no card.

FAQ

What does "an Actions budget is preventing further use" mean?

A budget that covers GitHub Actions has Stop usage when budget limit is reached turned on, and it is spent. GitHub's docs: "if any budget with Stop usage when budget limit is reached enabled is exhausted, additional usage is blocked." Jobs on GitHub-hosted runners stop starting until someone raises the budget, clears the stop option, or the next billing period starts on the 1st at 00:00 UTC.

Can I use my included Actions minutes with a $0 budget?

GitHub's docs say a budget counts paid use, which suggests a $0 budget stops only usage past the included amount. They don't address the "Usage blocked" status that people with a $0 budget and minutes left have reported since October 2026, and no GitHub staff member had answered those threads by November 9, 2026. Run one short job on ubuntu-latest to see; if it's refused with included usage left, open a GitHub Support ticket.

Who can raise an Actions budget?

For an organization's budgets, an organization owner; GitHub's setup guide also names billing managers. For enterprise and cost center budgets, an enterprise owner or billing manager. On a personal account, its owner. The control is in Billing & Licensing, then Budgets and alerts.

Does a budget block stop self-hosted runners?

No. GitHub's example says a spent budget blocks "all GitHub-hosted runners". Self-hosted runner usage is free and doesn't reduce the included compute, so it doesn't spend from an Actions budget, and jobs whose runs-on points at a self-hosted runner keep starting.

I raised the budget. Why didn't the failed jobs run?

Raising the budget lets new jobs start; it doesn't start the ones GitHub already refused. Open each run and click Re-run jobs, then Re-run failed jobs. If new jobs are refused too, look for a second budget that covers Actions: an organization budget next to a repository budget, or a product budget next to a SKU budget.

Sources

All read on 2026-11-09.

Updated November 9, 2026

See your own GitHub Actions bill

The free cost calculator reads your repositories' last 30 days of runs and gives one fixed monthly amount for the same jobs.

Open the cost calculator

Flat-price CI from your next push

Change one runs-on: line. Any minutes, one price.

  • No card
  • 7 days or 3,000 job-minutes free
  • 30-day refund on first payment