Skip to content
Latchkey

Migrating GitHub Actions to the Node 20 Runtime

GitHub moved the Actions runtime to Node 20 and deprecated Node 16. Old action versions throw warnings, then stop working.

JavaScript actions run on a Node runtime supplied by GitHub. As Node 16 reaches end of life, actions pinned to it are deprecated.

What to do

  1. Find warnings mentioning Node 16 in your run logs.
  2. Bump those actions to versions that declare runs.using: node20 (usually the latest major).
  3. Re-run and confirm the warnings are gone.

For your own actions

If you maintain a JavaScript action, set runs.using: node20 in action.yml and test on the current runner image.

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →