Node.js 26 LTS: Which Version Should You Run?

By Bug Circuit Security Team
Node.js 26 LTS: Which Version Should You Run?

Is your own website affected? Check it free in 2 minutes.

Passive outside check only. Nothing is attacked, no signup.

Use Node.js 26 for new projects, stay on Node 24 if it already works for you, and plan to leave Node 22 before it reaches end of life on 30 April 2027.

This post is for owners and small teams whose site, shop backend or web app runs on Node.js (a popular tool that runs JavaScript on a server). You will get a clear table of which version is supported until when, a decision table, the exact commands to check your version, and a safe upgrade routine. No scary words, just a short to-do list.

Where each Node.js version stands today

Node.js 26 (codename "Lithium") moved into LTS in October 2026 with release 26.13.0, and the release post says it will get updates through the end of April 2029. LTS means "long-term support": the version gets fixes for a long time, so it is meant for real websites. You can see the official list on the Node.js previous releases page and read the Node.js 26.13.0 release post.

Here is the picture as of early November 2026:

VersionCodenameStatusSupported until
Node 26LithiumActive LTS (since October 2026)30 Apr 2029
Node 24KryptonMaintenance (since October 2026)30 Apr 2028
Node 22JodMaintenance30 Apr 2027
Node 20IronEnd of lifeEnded 30 Apr 2026
Node 18HydrogenEnd of lifeEnded

Node 25 is also listed as end of life. Odd-numbered versions have always been short-lived, so you should not run them on a production site.

The dates come from the official Node.js release schedule. The previous releases page links to it (the Node.js "release" repository on GitHub). Dates can change, so check the official schedule before you finalize your plan.

What the status words mean

The Node.js project describes three stages that matter to you:

  • Current: a new major version in its first six months. Library authors use this time to add support.
  • Active LTS: ready for general use and the best choice for production. Node 26 is here now.
  • Maintenance LTS: still supported, but typically only for critical fixes. Node 24 and Node 22 are here now.

The Node.js project says plainly that production applications should only use Active LTS or Maintenance LTS releases. It also notes that starting with Node.js 27 the cycle becomes annual, and every major version will move to LTS after its Current phase. So the "odd versions are short-lived" rule ends after Node 26.

Node 26 vs Node 24: what actually differs

The biggest difference is time. Node 26 is supported for about a year longer than Node 24 (April 2029 versus April 2028). Node 26 is in Active LTS, while Node 24 is in Maintenance, which usually means fewer updates.

A new major version also tends to bundle newer components and can remove or deprecate older APIs. Before you upgrade, read the Node.js 26.13.0 release post and the official changelog for removed features, then test your app on a staging copy.

One practical note for Linux: official Linux binaries may need the libatomic library. Install it only if Node fails to start. On Debian or Ubuntu that is:

sudo apt install libatomic1

On Fedora, RHEL and similar systems the package is called libatomic. Many setups already have it.

Which Node version should you use in 2026?

Use this table to decide.

Your situationWhat to do
Starting a new project or serverUse Node 26. It has the longest support runway.
On Node 24 and everything worksStay put for now. Plan a move to Node 26 within the next year.
On Node 22Supported until 30 April 2027. Schedule your move to 26 (or 24) in the next few months.
On Node 20 or olderUpgrade soon. These versions have reached end of life and no longer get fixes.
On an odd version (21, 23, 25)Move to an LTS version. Odd versions are not meant for production.
You use WordPress or Shopify with no custom server codeYou most likely do not run Node on your server. It may still appear in build tools, so ask your developer.

If you are on Node 22, remember it is the Node 22 end of life date that sets your deadline. That is 30 April 2027, so you have time, but not a lot of it if your app needs testing.

How to check which Node version your site runs

You can find out in a few minutes.

  1. On your own computer or server, open a terminal and run:
node --version

It prints something like v24.x.x. The first number is the major version.

  1. To see if it is an LTS release, run:
node -p "process.release.lts"

On an LTS release it prints the codename (for example Lithium on Node 26). If it prints undefined, you are on a non-LTS version. If you are on Node 26 and see undefined, check that you are on 26.13.0 or later.

  1. In your project files, look for a package.json with an engines field, or a file named .nvmrc. These tell your host which version to use.
  1. On your hosting dashboard, look for a Node.js version setting. Platforms like Vercel and Netlify let you choose it in settings or with an environment variable, and cPanel hosts often have a "Setup Node.js App" screen. Names vary, so check your host's docs. Also check that your host offers Node 26, because some roll out new versions slowly.
  1. In a Docker setup, open the Dockerfile and look at the FROM node: line.

Not sure what runs on a live site? You cannot reliably read the Node version of a live site from the outside, so ask your developer or check your host's dashboard. For a passive look at what your site exposes, try the free website security check.

How to upgrade safely

Do this on a copy of your site first, never straight on production.

  1. Back up your code and database.
  2. Install the new version next to the old one. With nvm (Node Version Manager):
nvm install 26
nvm use 26
node --version
  1. Reinstall your packages from the lockfile and run your tests:
npm ci
npm test
  1. Declare which Node versions your app supports. In package.json:
"engines": { "node": ">=26 <27" }

This allows Node 26 only (26.x means the same thing). A plain >=26 would also allow Node 27, 28 and later. Note that engines is only advisory unless npm's engine-strict setting is on. To actually pin the version for nvm users, put 26 in a .nvmrc file.

  1. Deploy to a staging site, click through the important pages (login, checkout, forms), then deploy to production.
  2. Keep the old version available for a few days in case you need to roll back.

If you use a Docker image, change the base image to a Node 26 tag and rebuild. In GitHub Actions, set the node-version input of actions/setup-node to 26.

Why an old Node version matters for security

After a version reaches end of life, the Node.js project stops shipping fixes for it. Any new flaw found later stays open on your server. That does not mean you will be attacked, but it does mean the risk only grows with time.

Using old software is a recognized risk category. The current OWASP Top 10:2025 covers it under A03 Software Supply Chain Failures. Node is only one layer, though. Your npm packages, your operating system and your web server also need updates. Running npm audit will flag known issues in your packages.

If you also want to check how your site presents itself to browsers, the security headers tool takes a few seconds. For a wider look at what an attacker might see, read is my website hackable.

Key takeaways

  • Node.js 26 entered Active LTS in October 2026 and is supported until 30 April 2029. Use it for new work.
  • Node 24 (Maintenance, to 30 April 2028) is fine to keep for now. Node 22 ends 30 April 2027, so plan its upgrade soon.
  • Node 20 and older are end of life. Move off them first.
  • Check your version with node --version, then test the upgrade on a staging copy before touching production.
  • Updating Node is one layer. Keep your packages, server and CMS updated too.

Want a human to look at the whole picture?

A version number is only one piece. If you would like a real person to hand-audit your site and give you a written report with evidence and exact fixes, Circuit is $49 one-time. It is a focused audit for small sites, not a multi-week enterprise pentest or a compliance certification. Start with the free check if you just want a quick look.

Want certainty, not guesswork?

A real human security engineer audits your whole site by hand and sends a full report: every issue, its severity, and the exact fix. From $49, with a 14-day money-back guarantee.

See pricing

Frequently asked questions

Is Node.js 26 LTS?
Yes. Node.js 26 (codename Lithium) entered Active LTS in October 2026 with release 26.13.0. The release post says it will receive updates through the end of April 2029.
Node 26 vs Node 24: which should I use?
For a new project, use Node 26. It is in Active LTS and is supported about a year longer than Node 24 (April 2029 versus April 2028). If your site already runs well on Node 24, you can stay there for now and plan a move to 26.
Which Node version should I use in 2026?
Pick an LTS release, and for most new work that is Node 26. Node 24 is acceptable while it is supported. Avoid Node 20 and older, which are end of life, and avoid odd-numbered versions in production.
When is Node.js 22 end of life?
Node.js 22 is in Maintenance and is supported until 30 April 2027. Plan your upgrade to Node 26 or 24 well before then, so you have time to test.
How do I check which Node.js version my website is using?
On the server, run `node --version`. You can also check your host's Node.js setting, the `engines` field in `package.json`, a `.nvmrc` file, or the `FROM node:` line in your Dockerfile.

Keep reading

See what attackers see, for free

Run the free passive check on your website. No login, no impact on your site, results in seconds.

Ready for the full manual audit? See pricing

Published by Bug Circuit. Written with AI assistance and reviewed for accuracy before publishing.