diff --git a/lib/datasource/npm.js b/lib/datasource/npm.js
index 5f704675a54714bdc518faac055ef0332dc1fc58..36f4ff9d7b99a4c16b229b41e38c9a6e5080c9be 100644
--- a/lib/datasource/npm.js
+++ b/lib/datasource/npm.js
@@ -10,6 +10,7 @@ const parse = require('github-url-from-git');
 const { isBase64 } = require('validator');
 
 module.exports = {
+  maskToken,
   setNpmrc,
   getDependency,
   resetMemCache,
@@ -32,6 +33,7 @@ function resetCache() {
   resetMemCache();
 }
 
+// istanbul ignore next
 function maskToken(token) {
   // istanbul ignore if
   if (!token) {
@@ -43,15 +45,9 @@ function maskToken(token) {
 }
 
 function setNpmrc(input, exposeEnv = false) {
-  logger.debug('setNpmrc()');
   if (input) {
+    logger.debug('Setting npmrc');
     npmrc = ini.parse(input);
-    const tokenKey = '//registry.npmjs.org/:_authToken';
-    // istanbul ignore if
-    if (npmrc && npmrc[tokenKey]) {
-      const token = npmrc[tokenKey];
-      logger.debug(`Setting authToken to ${maskToken(token)}`);
-    }
     // massage _auth to _authToken
     for (const [key, val] of Object.entries(npmrc)) {
       if (key.endsWith('_auth')) {
@@ -69,7 +65,7 @@ function setNpmrc(input, exposeEnv = false) {
         npmrc[key] = envReplace(npmrc[key]);
       }
     }
-  } else {
+  } else if (npmrc) {
     logger.debug('Resetting npmrc');
     npmrc = null;
   }
diff --git a/test/manager/npm/registry.spec.js b/test/manager/npm/registry.spec.js
index 44465b79e0ecfdf8104fb65a6741695f32acc939..0558b98b84ea07b872cdd5ea4af2d0d583136f76 100644
--- a/test/manager/npm/registry.spec.js
+++ b/test/manager/npm/registry.spec.js
@@ -169,6 +169,10 @@ describe('api/npm', () => {
     process.env.NPM_TOKEN = oldToken;
     expect(res).toMatchSnapshot();
   });
+  it('resets npmrc', () => {
+    npm.setNpmrc('something=something');
+    npm.setNpmrc();
+  });
   it('should use default registry if missing from npmrc', async () => {
     nock('https://registry.npmjs.org')
       .get('/foobar')