diff --git a/lib/manager/bazel/extract.js b/lib/manager/bazel/extract.js
index de92493171df5bbecebd7893b73567ebf9b3c17d..b4eaafc13b9438fb750da3aaa7b516763d3eab1f 100644
--- a/lib/manager/bazel/extract.js
+++ b/lib/manager/bazel/extract.js
@@ -128,7 +128,7 @@ function extractPackageFile(content) {
       dep.depName = depName;
       dep.repo = parsedUrl.repo;
       dep.currentValue = parsedUrl.currentValue;
-      dep.purl = 'pkg:github/' + dep.repo + '?lookupType=releases';
+      dep.purl = 'pkg:github/' + dep.repo + '#releases';
       deps.push(dep);
     } else {
       logger.info(
diff --git a/lib/util/purl.js b/lib/util/purl.js
index 2127ef6ace46d9e7a6150bdb036837d52d334e3f..99a5f9f4557fefff6f68e111c16c830002c8c198 100644
--- a/lib/util/purl.js
+++ b/lib/util/purl.js
@@ -41,10 +41,6 @@ function parse(input) {
       const [key, val] = qualifier.split('=');
       res.qualifiers[key] = val;
     });
-    if (res.qualifiers.lookupType) {
-      res.lookupType = res.qualifiers.lookupType;
-      delete res.qualifiers.lookupType;
-    }
     if (res.qualifiers.repository_url) {
       res.repositoryUrls = res.qualifiers.repository_url.split(',');
       delete res.qualifiers.repository_url;
@@ -52,6 +48,10 @@ function parse(input) {
   } else {
     res.qualifiers = {};
   }
+  if (res.subpath) {
+    res.lookupType = res.subpath;
+    delete res.subpath;
+  }
   delete res.namespace;
   delete res.name;
   delete res.version; // we don't use it
diff --git a/test/datasource/github.spec.js b/test/datasource/github.spec.js
index 3b249ba5e2853ef6d31381d0e018ec44d5fcc34d..ae6969936d12c13ee63467e0f527121858c49468 100644
--- a/test/datasource/github.spec.js
+++ b/test/datasource/github.spec.js
@@ -71,7 +71,7 @@ describe('datasource/github', () => {
       ];
       ghGot.mockReturnValueOnce({ headers: {}, body });
       const res = await datasource.getPkgReleases({
-        purl: 'pkg:github/some/dep?lookupType=releases',
+        purl: 'pkg:github/some/dep#releases',
       });
       expect(res).toMatchSnapshot();
       expect(res.releases).toHaveLength(2);
diff --git a/test/manager/bazel/__snapshots__/extract.spec.js.snap b/test/manager/bazel/__snapshots__/extract.spec.js.snap
index 34f208315e85b0f2f37c8f0ed2857cb9eb42962d..514773788897c7a206569b7ce5347d557a083ed7 100644
--- a/test/manager/bazel/__snapshots__/extract.spec.js.snap
+++ b/test/manager/bazel/__snapshots__/extract.spec.js.snap
@@ -90,7 +90,7 @@ Array [
 ",
     "depName": "io_bazel_rules_go",
     "depType": "http_archive",
-    "purl": "pkg:github/bazelbuild/rules_go?lookupType=releases",
+    "purl": "pkg:github/bazelbuild/rules_go#releases",
     "repo": "bazelbuild/rules_go",
   },
   Object {
@@ -107,7 +107,7 @@ Array [
 ",
     "depName": "bazel_skylib",
     "depType": "http_archive",
-    "purl": "pkg:github/bazelbuild/bazel-skylib?lookupType=releases",
+    "purl": "pkg:github/bazelbuild/bazel-skylib#releases",
     "repo": "bazelbuild/bazel-skylib",
   },
 ]
diff --git a/test/util/__snapshots__/purl.spec.js.snap b/test/util/__snapshots__/purl.spec.js.snap
index ceb89d7a6a03bd51cdd613a1886346fc39cd3055..564473a1200cc8e8d2a150a6885872ab8d0ac17a 100644
--- a/test/util/__snapshots__/purl.spec.js.snap
+++ b/test/util/__snapshots__/purl.spec.js.snap
@@ -1,6 +1,6 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
-exports[`util/purl parse() parses github with lookupType 1`] = `
+exports[`util/purl parse() parses github with subpath/lookupType 1`] = `
 Object {
   "datasource": "github",
   "lookupName": "abc/def",
@@ -46,18 +46,6 @@ Object {
 }
 `;
 
-exports[`util/purl parse() parses npm with version and 2 qualifiers and subpath 1`] = `
-Object {
-  "datasource": "npm",
-  "lookupName": "foo",
-  "qualifiers": Object {
-    "a": "b",
-    "c": "d",
-  },
-  "subpath": "stop",
-}
-`;
-
 exports[`util/purl parse() parses repository_url qualifier 1`] = `
 Object {
   "datasource": "maven",
diff --git a/test/util/purl.spec.js b/test/util/purl.spec.js
index 68d947ab698736a5810698d1a6831f213c71a646..96cf12db118585c6cc441e2c75a2157fbe2db282 100644
--- a/test/util/purl.spec.js
+++ b/test/util/purl.spec.js
@@ -23,11 +23,8 @@ describe('util/purl', () => {
     it('parses npm with version and 2 qualifiers', () => {
       expect(parse('pkg:npm/foo@1.0.0?a=b&c=d')).toMatchSnapshot();
     });
-    it('parses npm with version and 2 qualifiers and subpath', () => {
-      expect(parse('pkg:npm/foo@1.0.0?a=b&c=d#stop')).toMatchSnapshot();
-    });
-    it('parses github with lookupType', () => {
-      expect(parse('pkg:github/abc/def?lookupType=releases')).toMatchSnapshot();
+    it('parses github with subpath/lookupType', () => {
+      expect(parse('pkg:github/abc/def#releases')).toMatchSnapshot();
     });
     it('parses repository_url qualifier', () => {
       expect(