Node.js + npm Compatibility

Which npm versions work with each Node.js release, including strict peer-dependency changes introduced in npm 7 and the Node 18.17 requirement for npm 10. 15 combinations verified against official release notes.

Node.js 22 + npm 10
Node.js 22 ships with npm 10.x and meets npm 10's minimum Node ≥ 18.17.0 requirement with …
✓ Works
Node.js 20 + npm 10
Node.js 20 ships with npm 10.x and meets npm 10's minimum Node ≥ 18.17.0 requirement. Node…
✓ Works
Node.js 20 + npm 9
npm 9 requires Node ≥ 14.17.0; Node.js 20 satisfies this well. You can install npm 9 with …
✓ Works
Node.js 18 + npm 10
npm 10 requires Node ≥ 18.17.0 exactly. Node.js 18 patch releases before 18.17.0 (e.g. 18.…
⚠ Partial
Node.js 18 + npm 9
Node.js 18 ships with npm 9.x as its bundled package manager. npm 9 requires Node ≥ 14.17.…
✓ Works
Node.js 18 + npm 7
npm 7 runs on Node.js 18 (npm 7 requires Node ≥ 10.13.0). However, npm 7 introduced strict…
⚠ Partial
Node.js 16 + npm 9
npm 9 requires Node ≥ 14.17.0; Node.js 16 satisfies this. The combination runs without err…
✓ Works
Node.js 16 + npm 10
npm 10 requires Node ≥ 18.17.0. Node.js 16 does not meet this requirement and installing n…
✗ Incompatible
Node.js 16 + npm 8
Node.js 16 shipped with npm 8.x as its bundled package manager. npm 8 requires Node ≥ 12.1…
✓ Works
Node.js 14 + npm 9
npm 9 requires Node ≥ 14.17.0. Node 14.x patch releases before 14.17.0 are incompatible. N…
⚠ Partial
Node.js 14 + npm 10
npm 10 requires Node ≥ 18.17.0. Node.js 14 is far below this requirement and is EOL (April…
✗ Incompatible
Node.js 14 + npm 7
npm 7 requires Node ≥ 10.13.0; Node 14 satisfies this. However, npm 7 switched to strict p…
⚠ Partial
Node.js 14 + npm 6
Node.js 14 shipped with npm 6.x as its bundled package manager. npm 6 requires Node ≥ 6.0.…
⚠ Partial
Node.js 12 + npm 9
npm 9 requires Node ≥ 14.17.0. Node.js 12 does not meet this requirement and is EOL (April…
✗ Incompatible
Node.js 12 + npm 8
npm 8 requires Node ≥ 12.13.0; Node.js 12.13.0 and later satisfy this. Technically functio…
⚠ Partial