Updated September 23, 2026. GitHub removed Node 20 from GitHub Actions runners on September 23, 2026. JavaScript actions now run on Node 24, and the temporary ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION opt-out is gone. GitHub also notes that Node 24 is incompatible with macOS 13.4 and earlier and does not officially support ARM32.
This is more than a runtime-number change. Maintainers must publish action versions whose action.yml uses node24; workflow owners need current action versions; and organizations with old self-hosted runner operating systems or ARM32 hardware need to treat the change as an infrastructure compatibility issue.
A practical review checklist
- Search repositories for JavaScript actions pinned to old major versions.
- Inspect custom action.yml files for runs.using: node20.
- Inventory self-hosted runner OS versions and CPU architectures.
- Run representative workflows before changing production runner pools.
- Do not assume a successful build means every rarely used action path is compatible.
Sources and verification
Primary source: GitHub Changelog — “Node 20 is no longer available in GitHub Actions” (September 23, 2026).
This article distinguishes confirmed release facts from engineering interpretation. Dynamic details such as support status, limits and availability should be rechecked against the primary documentation before a production change.
