diff --git a/lib/manager/npm/registry.js b/lib/manager/npm/registry.js
index baf571b1fcb8fe97a30f1bf6331abad06badf706..8f110e3ab2c7486f84a11ca9f6698934d8070758 100644
--- a/lib/manager/npm/registry.js
+++ b/lib/manager/npm/registry.js
@@ -98,7 +98,7 @@ async function getDependency(name) {
       headers,
     })).body;
     if (!res.versions || !Object.keys(res.versions).length) {
-      throw new Error('no-versions');
+      return null;
     }
     // Determine repository URL
     let repositoryUrl;
@@ -137,10 +137,6 @@ async function getDependency(name) {
       logger.info({ err, name }, `Dependency not found`);
       return null;
     }
-    if (err.message === 'no-versions') {
-      logger.info({ err }, 'npm registry problem: no versions returned');
-      throw new Error('registry-failure');
-    }
     if (err.name === 'ParseError') {
       // Registry returned a 200 OK but got failed to parse it
       logger.warn({ err }, 'npm registry failure: ParseError');
diff --git a/test/manager/npm/registry.spec.js b/test/manager/npm/registry.spec.js
index cab2c966e182ecc8eb6c20e18c38c14aab6ffd30..d660baef1bbc2898d3e0025ec5b53d951a7e6d4f 100644
--- a/test/manager/npm/registry.spec.js
+++ b/test/manager/npm/registry.spec.js
@@ -28,19 +28,14 @@ describe('api/npm', () => {
     jest.resetAllMocks();
     npm.resetCache();
   });
-  it('should throw error for no versions', async () => {
+  it('should return null for no versions', async () => {
     const missingVersions = { ...npmResponse };
     missingVersions.versions = {};
     nock('https://registry.npmjs.org')
       .get('/foobar')
       .reply(200, missingVersions);
-    let e;
-    try {
-      await npm.getDependency('foobar');
-    } catch (err) {
-      e = err;
-    }
-    expect(e.message).toBe('registry-failure');
+    const res = await npm.getDependency('foobar');
+    expect(res).toBe(null);
   });
   it('should fetch package info from npm', async () => {
     nock('https://registry.npmjs.org')