Software

Vercel Node Version Update: Node.js 20 Is Now Disabled

By · Tue Sep 29 2026 · 6 min read · 10 views · Updated Sun Oct 11 2026

View as a Web Story

Software#node.js#javascript#vercel#devops#nodejs-20#deployment

Terminal showing a Vercel deployment failing on Node.js 20 next to a package.json engines field set to Node.js 24

If a Vercel project is still set to Node.js 20, new deployments have been failing since October 1, 2026. Vercel disabled Node.js 20 for both Builds and Functions on that date, because Node.js 20 itself reached end of life on April 30, 2026, five months before the cutoff (Vercel's changelog entry on the deprecation). The fix takes one line, and the Vercel Node version you want is 24.

Vercel is the deployment platform behind this blog and thousands of other Next.js and Node.js applications. Node.js 20 is the JavaScript runtime version many of those projects were built against when it was still the current Active LTS release, before Node.js 22 and then Node.js 24 replaced it.

Key Takeaways

  • New deployments on Node.js 20 have failed since October 1, 2026; deployments already live keep running.
  • The fix is a one-line change to the engines field in package.json, or a setting in Vercel's Project Settings.
  • Run vercel project ls --update-required first to find out if this affects you at all.

What Broke on October 1

Only new deployments break; nothing happened to a project's traffic on that date by itself. Since October 1, 2026, Node.js 20 is disabled in Vercel's Project Settings, and any new deployment configured for it fails with an error (Vercel's Node.js 20 deprecation notice). Existing deployed Serverless Functions keep running, and invocations against them continue to work normally.

That distinction matters for how urgent this actually is. A project that deploys weekly has already hit the error. A project that hasn't redeployed since September has not found out yet, but the fix is the same either way, and cannot be put off indefinitely.

Are You Even Affected?

Run this from the Vercel CLI to check before doing anything else:

vercel project ls --update-required

That command lists every project in your account still configured for a deprecated Node.js version. For example, a team managing a dozen projects can use it to find the two or three still pinned to Node.js 20 instead of checking each one by hand.

Which Node.js version can you use on Vercel now?

Node.js line Upstream end of life On Vercel as of Oct 11, 2026
Node.js 20 Apr 30, 2026 Disabled for new deployments since Oct 1, 2026
Node.js 22 Apr 30, 2027 Still upstream-supported; check Project Settings for what your project can select
Node.js 24 Apr 30, 2028 The version Vercel's notice recommends

Sources: Vercel's changelog and endoflife.date. Node.js 20 ran 1,108 days upstream, from April 18, 2023 to April 30, 2026. Node.js 24 gives you about 19 months of upstream security fixes from today, which is the longest runway of any line Vercel names.

Node.js 20, 22 and 24 support windows with Vercel's October 1, 2026 cutoff marked

The Fix

Set your Node.js version to 24 in one of these places, and Vercel picks up the first one it finds:

Advertisement

  1. package.json. Add or update the engines field:
{
  "engines": {
    "node": "24.x"
  }
}
  1. .nvmrc or .node-version, if your project uses one of those files for local development.
  2. Vercel's Project Settings, under the Node.js Version dropdown, if you'd rather not touch the repository at all.

If your CI pipeline pins a Node.js version separately from these files, for example in a GitHub Actions workflow, update that configuration too. A green CI run on Node.js 24 doesn't help if the workflow itself still installs Node.js 20 first.

Should You Migrate Now, or Wait?

Your situation What happens if you do nothing What to do
Deploy at least weekly Your deploys are failing now Bump engines.node to 24.x today
Deploy rarely The first deploy after a quiet spell fails Fix it before you need to ship
Already on Node.js 22 or 24 Nothing — this deprecation doesn't apply No action needed

The riskiest projects here aren't the actively maintained ones. They're the side projects and internal tools that deploy rarely enough that nobody has opened them since Node.js 20 was current. Those are the ones where an engineer discovers the failure by accident, weeks after the cutoff, trying to ship an unrelated fix.

Two Things That Won't Save You

Vercel does offer one narrower option: deploying via a container image with a Dockerfile.vercel instead of upgrading the managed Node.js version. Vercel's own changelog still recommends upgrading when possible, since a container deployment means self-managing Node.js security updates going forward instead of letting the platform handle them (the same deprecation changelog entry).

Waiting for the error to force the fix isn't a real option either, since a failed production deployment is a worse time to discover a version mismatch than a calm afternoon today.

What to Check After Upgrading

Bumping the version number is the easy part. Before merging, confirm two things:

  1. Your framework version supports Node.js 24. Confirm the installed framework version supports the target runtime before relying on it in production, particularly for Next.js applications making the same jump (an independent migration guide covering the Node.js 20-to-24 jump).
  2. Native dependencies still build. Older packages with native bindings may not support Node.js 24 without being updated or rebuilt. Run your full install and build locally on Node.js 24 before pushing, not just in CI.

A build that passes locally and fails on Vercel is almost always a native dependency, not a code problem. Delete node_modules and reinstall under Node.js 24 to catch this before a deploy does.

Frequently Asked Questions

What exact date does Vercel stop supporting Node.js 20?

Vercel disabled Node.js 20 for new Builds and Functions on October 1, 2026. Existing deployments already running on Node.js 20 keep working; only new deployments configured for that version fail after the cutoff (Vercel's official cutoff announcement).

Will my live site go down on October 1?

No. Existing deployed Serverless Functions are not affected, and current function invocations continue to work normally. The deprecation only blocks creating new deployments configured for Node.js 20 from that date forward.

How do I know if any of my Vercel projects are affected?

Run vercel project ls --update-required from the Vercel CLI. It lists every project in your account still configured for a Node.js version Vercel is deprecating, so you don't have to check each project's settings individually.

What Node.js version should I upgrade to instead of 20?

Node.js 24 is the version Vercel's own deprecation guidance points to. Set it through the engines field in package.json, a .nvmrc file, or Vercel's Project Settings directly. Node.js 24 moves from Active LTS to Maintenance LTS on October 20, 2026, and its security support runs through April 30, 2028 (the Node.js release schedule tracker). That's a long runway before this decision comes up again.

Is there any way to keep using Node.js 20 past the cutoff?

Only by deploying through a container image using Dockerfile.vercel instead of Vercel's managed Node.js runtime. Vercel still recommends upgrading when possible, since that path makes you responsible for your own Node.js security patches going forward.

Advertisement

FAQ

What exact date does Vercel stop supporting Node.js 20?

Vercel disables Node.js 20 for new Builds and Functions on October 1, 2026. Existing deployments already running on Node.js 20 keep working; only new deployments configured for that version start failing after the cutoff.

Will my live site go down on October 1?

No. Existing deployed Serverless Functions are not affected, and current function invocations continue to work normally. The deprecation only blocks creating new deployments configured for Node.js 20 from that date forward.

How do I know if any of my Vercel projects are affected?

Run vercel project ls --update-required from the Vercel CLI. It lists every project in your account still configured for a Node.js version Vercel is deprecating, so you don't have to check each project's settings individually.

What Node.js version should I upgrade to instead of 20?

Node.js 24 is the version Vercel's own deprecation guidance points to, set through the engines field in package.json, a .nvmrc file, or Vercel's Project Settings directly.

Is there any way to keep using Node.js 20 past the cutoff?

Only by deploying through a container image using Dockerfile.vercel instead of Vercel's managed Node.js runtime. Vercel still recommends upgrading when possible, since that path makes you responsible for your own Node.js security patches going forward.

Which Node.js version does Vercel support now?

Vercel disabled Node.js 20 on October 1, 2026 and recommends Node.js 24, set with "node": "24.x" in the engines field of package.json or in Project Settings. Node.js 22 stays upstream-supported until April 30, 2027, but check your Project Settings for the versions your project can select.

Comments

Loading…

Sign in to join the conversation.

Related posts