Run npm outdated with the global flag to list global packages that have newer versions, then run npm update with the same flag to update them. For global packages, the wanted column shows the latest version, because there is no package.json range to respect. Review what changed before updating tools you rely on.
The two commands
npm outdated -g
npm update -g
The npm documentation says that when the global flag is given, npm update updates globally installed packages, and with no package name it updates all packages in that location. So the second command touches everything in your global folder at once. If you would rather move one tool at a time, name it.
npm update -g some-tool
Reading the columns
npm outdated prints a table. Two columns confuse people.
- Wanted is the highest version that satisfies the range in package.json. The npm docs add that when there is no available range, for example when you run outdated with the global option, wanted simply shows the latest version.
- Latest is the version the registry tags as latest. The docs caution that this may not be the highest or most recently published version, depending on how the maintainer uses tags.
Our post on the current, wanted and latest columns goes deeper on the project case. For globals, the practical reading is simple: if current differs from wanted, an update exists.
Why bother with global tools
An outdated global tool is software with your privileges that nobody is watching. Security fixes only help if they reach the machine. Updating is also not risk free: a new release is exactly the moment a compromised version can slip in. Both sides are real.
That is why a short delay and a look at the release are sensible. The post on npm min-release-age versus before explains how to hold back brand new versions.
A routine you can keep
- Once a month, run the outdated command for globals.
- For each row, check the publisher and the changelog. A sudden change of maintainer or a huge version jump deserves a pause.
- Update the tools you use weekly first, since you will notice if they break.
- Remove tools you do not use. The cheapest update is an uninstall.
- Write down what you updated and when. A plain text file in your notes is enough.
What this does not cover
npm outdated and update look at the npm registry only. Tools installed through Homebrew, pip, Cargo or a vendor installer have their own commands. We cover those in the Homebrew update post and the post on listing every global tool.
Try it yourself
Click through it at your own pace, or open it full screen.
Look at how a fix being available is a separate fact from the fix being applied. Outdated tools on a laptop work the same way.
Quick check
Does npm update change my project dependencies when I use the global flag?
No. With the global flag it updates globally installed packages, per the npm documentation.
Why does wanted equal latest for globals?
Because there is no package.json range to satisfy, so npm shows the latest version.
Sources
Last reviewed: 19 October 2026.