Firebase: Runtime Node.js 20 was decommissioned

Runtime Node.js 20 was decommissioned on 2026-10-30. To deploy you must first upgrade your runtime version.

Short answer: Google decommissioned the Node.js 20 runtime for Cloud Functions (Cloud Run functions) on 30 October 2026, so the Firebase CLI refuses to deploy functions that still target it. Switch the runtime to Node.js 22 (or 24) in package.json or firebase.json, test, and redeploy every function.

Why it happens

Google's runtime policy: after the decommission date "you can no longer create new workloads or update existing workloads using the runtime", and workloads that stay on it "may be disabled". Node.js 20 was deprecated on 30 April 2026 (the CLI warned on every deploy since then) and decommissioned on 30 October 2026. The Firebase CLI checks the date itself and stops with the error above.

You may also see

Runtime Node.js 20 was deprecated on 2026-04-30 and will be decommissioned on 2026-10-30, after which you will not be able to deploy without upgrading. Consider upgrading now to avoid disruption.

Fix

  1. Install Node.js 22 or 24 locally (for example nvm install 22) so the emulator matches production.
  2. In functions/package.json set "engines": { "node": "22" }. If firebase.json has "runtime": "nodejs20" for a codebase, change it to nodejs22: the CLI uses firebase.json in preference to package.json.
  3. Update the Firebase CLI (npm install -g firebase-tools) and run npm install in functions/, then fix anything your dependencies flag for the new Node version.
  4. Test with the Local Emulator Suite (firebase emulators:start).
  5. Redeploy all functions (firebase deploy --only functions). Repeat for every codebase in firebase.json.

Watch out

Sources

Did this fix it?

What's still not working?

Describe what happens and paste any error message. We read every report and fix the page.

Other errors breaking soon

All "breaking soon" fixes