From that doc page it sounds like that <i>should</i> be deterministic? Even without shrinkwrapping, a fresh install from package.json with empty node_modules should be deterministic.<p>&gt; The npm install command, when used exclusively to install packages from a package.json, will always produce the same tree. This is because install order from a package.json is always alphabetical. Same install order means that you will get the same tree.<p>&gt; You can reliably get the same dependency tree by removing your node_modules directory and running npm install whenever you make a change to your package.json.<p>Maybe you&#x27;re experiencing a bug, rather than some in-grained non-determinism in npm?