Skip to content
Latchkey

GitHub Actions "The job running on runner X has exceeded the maximum execution time"

A single job ran longer than the platform hard cap of 6 hours, so GitHub forcibly stopped it; this is a ceiling, not a configurable timeout you can raise.

What this error means

A long-running job is killed with "The job running on runner X has exceeded the maximum execution time of 360 minutes." Work in progress is lost at the cutoff.

github-actions
The job running on runner GitHub Actions 7 has exceeded the maximum execution time of 360 minutes.

Common causes

Genuinely long workload in one job

A large build, test suite, or data job legitimately needs more than 6 hours when run serially in a single job.

A hung step that never finishes

A deadlocked process, infinite retry, or stuck network wait keeps the job alive with no progress until the cap fires.

How to fix it

Split and parallelize the work

  1. Break the job into multiple jobs that run in parallel.
  2. Shard tests or build targets across a matrix.
  3. Cache expensive steps so reruns are far shorter.
  4. Add per-step timeout-minutes to catch hangs early.

Find and fix the hang

If the job should finish well under 6 hours, profile the step that runs longest; a stuck process or retry loop is usually the real cause, not the workload size.

How to prevent it

  • Keep each job comfortably under the 6-hour ceiling.
  • Add timeout-minutes per step to surface hangs fast.
  • Parallelize heavy work across jobs rather than serializing it.

Frequently asked questions

What causes ""Job exceeded max time""?
A large build, test suite, or data job legitimately needs more than 6 hours when run serially in a single job.
How do I fix "Job exceeded max time"?
Split and parallelize the work

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card