As of October 4, 2026, GitHub Actions runners no longer provide Node 20 for JavaScript actions. Those actions now run on Node 24, and the temporary opt-out has ended. Workflow users should move to action releases compatible with Node 24; action maintainers should set runs.using to node24 and publish a compatible release. Before upgrading, check self-hosted runner compatibility: Node 24 is incompatible with macOS 13.4 and earlier and does not officially support ARM32.
Is Node 20 still available in GitHub Actions?
No. GitHub removed Node 20 from Actions runners on September 23, 2026. GitHub’s final migration notice says, “Runners now use Node 24 for JavaScript actions.” The temporary ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION opt-out ended at the same time, so it is not a rollback option.
The migration’s earlier schedule changed over time. GitHub’s 2025 announcement and its dated updates identified June 16, 2026 as the planned default change and September 23, 2026 as the Node 20 removal date. The September 23 notice establishes the current status.
What should workflow users change?
- Find JavaScript actions used by your workflows, including references pinned to older tags and actions invoked through reusable workflows maintained by another repository.
- Update each reference to a release that supports Node 24. Check the action’s release notes or documentation if compatibility is not clear.
- Run the affected workflows and investigate failures against the exact action version and runner OS or architecture. Do not assume the project’s Node.js setting is the cause: the action runtime is configured separately.
GitHub’s final notice directs users to the latest versions of actions that support Node 24. A metadata change in an action maintainer’s unreleased branch does not update workflows that still reference an older published release.
Recommended Free Tools
#1 Best Overall
How do maintainers upgrade a JavaScript action to Node 24?
- In the action’s
action.ymloraction.yaml, change theruns.usingvalue tonode24. The GitHub metadata syntax reference defines this field as the runtime for the action; itsmain,pre, andpostscripts use that runtime. - Validate the action’s dependencies and bundled code with Node 24 and on the operating systems and architectures the action intends to support. Check any native or external binary dependencies for compatibility.
- Publish a new compatible action release and tell users which version to adopt. Changing metadata on the default branch alone does not change what a workflow gets when it references an earlier tag.
GitHub’s custom actions guidance recommends packaged pure JavaScript without reliance on other binaries for compatibility across hosted Ubuntu, Windows, and macOS runners. That is general guidance, not a claim that any particular action has been tested on every platform.
Do I need to change actions/setup-node too?
Not necessarily. The two settings control different runtimes:
Rank #2
| Setting | What it controls | What to change for this migration |
|---|---|---|
runs.using in action metadata |
Node runtime used to execute that JavaScript action’s scripts. | Action maintainers should use node24 and publish a compatible release; workflow users should adopt that release. |
actions/setup-node and its node-version input |
Node.js placed on PATH for project commands, such as build and test steps. | Choose the version your project requires. Changing it does not change an action’s runs.using. |
GitHub recommends setup-node for consistent project Node.js behavior across runners. On self-hosted systems, the required project Node.js version must be installed and available on PATH.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Will Node 24 work on my self-hosted runner?
Check the runner’s operating system and processor architecture. GitHub’s Node 20 removal notice states that Node 24 is incompatible with macOS 13.4 and earlier and does not officially support ARM32. GitHub says self-hosted runners using those operating systems or architectures are no longer supported for this change. Confirm the environment before relying on a Node 24 action release.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Rank #3
Keep the runner application current
The runner software itself is separate from the Node runtime declared in action metadata, but it also needs maintenance. GitHub’s self-hosted runner reference says Actions features may require runner updates. If automatic updates are disabled, the runner must be updated within 30 days of an available update or the service will stop queuing jobs. Critical security updates can cause jobs to be paused until the update is applied.
Quick Recap
Rank #4
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




