Vercel Node Version Update: Node.js 20 Is Now Disabled
By Nihar Ranjan Das · Tue Sep 29 2026 · 6 min read · 10 views · Updated Sun Oct 11 2026
View as a Web StorySoftware#node.js#javascript#vercel#devops#nodejs-20#deployment

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
enginesfield inpackage.json, or a setting in Vercel's Project Settings.- Run
vercel project ls --update-requiredfirst 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.

The Fix
Set your Node.js version to 24 in one of these places, and Vercel picks up the first one it finds:
Advertisement
package.json. Add or update theenginesfield:
{
"engines": {
"node": "24.x"
}
}
.nvmrcor.node-version, if your project uses one of those files for local development.- 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:
- 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).
- 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

NestJS Redis caching: cache-manager traps, measured
NestJS Redis caching with cache-manager, tested on Nest 12. Six traps we measured, from leaked user data to a silent wrap failure, plus the fixes.
Tue Oct 13 2026 · 10 min read · 0 views

NestJS JWT auth: Passport, guards and the new package
NestJS authentication with Passport, JWT and guards, tested on Nest 12. Four traps we measured, plus the new @nestjs/authentication package.
Tue Oct 13 2026 · 13 min read · 0 views

NestJS vs Express vs plain Node.js: what each layer costs
NestJS vs Express vs plain Node.js, measured. We priced every layer in microseconds per request and show when a framework's overhead stops mattering.
Tue Oct 13 2026 · 11 min read · 0 views