Verified limit lookup

GitHub Actions Job Timeout Limits

Current GitHub-hosted and self-hosted job execution ceilings, workflow-run scope, and timeout diagnostics.

Verified Aug 22, 20261 official source
Quick answer

A job on a GitHub-hosted runner can execute for up to 6 hours. A self-hosted job has a separate 5 days execution ceiling.

Verified Aug 22, 2026Official source

Current limits

ConstraintCurrent valueScopeVerified source
GitHub-hosted job execution timeA job is terminated and fails when it reaches the limit.6 hoursAll GitHub-hosted runnersGitHubAug 22, 2026
Self-hosted job execution timeDistinct from the total workflow run time limit.5 daysSelf-hosted runnersGitHubAug 22, 2026

Why does this limit matter?

A workflow can contain multiple jobs, so the per-job ceiling is not the same as total workflow run time.

A YAML timeout-minutes setting can intentionally stop a job before the platform ceiling.

What should you check?

  1. Check whether the job uses a GitHub-hosted or self-hosted runner.
  2. Inspect timeout-minutes in the job definition.
  3. Break long workloads into resumable jobs and persist intermediate artifacts.

Important caveats

  • Queued time and approval waiting use separate limits.
  • Runner availability, billing minutes, and concurrency can block progress before execution time is exhausted.
HyperObserve reports the documented platform constraint. Your application, SDK, gateway, provider, region, or account can impose a lower effective limit.
Related

Related references and tools

Found an outdated limit? Report it.