GitHub Actions concurrency limit reached for repository
By Daniel Zoghalchali·Latchkey
Each plan caps how many GitHub-hosted jobs can run at once. Beyond the cap, additional jobs queue until a slot frees, even if minutes remain. This is a parallelism cap, not a billing block.
What this error means
Many jobs sit queued while a few run; the limit is the plan concurrency cap, not minutes.
github-actions
The job is queued because the concurrency limit for this account has been reached.
Waiting for a concurrent job slot to free up.
Diagnose it: is the job queued, or is the runner gone?
A job that never starts and a job whose runner disappeared mid-run look similar in the UI and have opposite causes. The first is a labelling or capacity problem, the second is the runner being killed, usually by memory pressure or a spot reclaim.
Exit 137 is the kernel out-of-memory killer, not an application error. Check free -h above against your peak usage.
Disk exhaustion presents as unrelated write errors deep in a build. GitHub-hosted runners ship roughly 14 GB of free space, which a Docker-heavy job can exhaust.
A lost connection to the server on a self-hosted runner is usually the host being reclaimed or rebooted, not a network fault in your job.
A job that starts and immediately fails with no step output normally failed during runner setup, before your workflow ran at all.
How to prevent it
Right-size matrix fan-out to the available concurrency.
Use managed runners when parallelism needs exceed the hosted cap.
Frequently asked questions
What causes GitHub Actions concurrency limit reached for repository?
There are 2 common causes: plan concurrent-jobs cap hit and large matrix fan-out. Total simultaneous GitHub-hosted jobs across the account reached the plan ceiling.
How do I fix GitHub Actions concurrency limit reached for repository?
There are 2 fixes depending on which cause you have: reduce parallel demand or raise the plan and use managed runners for elastic parallelism. Work through them in order, since the first is the most common.
What does GitHub Actions concurrency limit reached for repository actually mean?
Many jobs sit queued while a few run; the limit is the plan concurrency cap, not minutes.
How do I stop GitHub Actions concurrency limit reached for repository happening again?
Right-size matrix fan-out to the available concurrency. The prevention section lists 2 changes that keep it from recurring.