diff --git a/lib/datasource/github.js b/lib/datasource/github.js
index a8f238f619fef1e42b9721c607b97ac7f41d0d30..f42aab2a3390f2fc02ae4dbed91aa6eaebdc8e4b 100644
--- a/lib/datasource/github.js
+++ b/lib/datasource/github.js
@@ -11,21 +11,31 @@ function semverSort(a, b) {
 }
 
 async function getRepoTags(repo) {
-  const url = `repos/${repo}/git/refs?per_page=100`;
-  const res = (await ghGot(url, { paginate: true })).body;
-  const tagPrefix = 'refs/tags/';
-  return res
-    .filter(o => o.ref.startsWith(tagPrefix))
-    .map(o => o.ref.replace(tagPrefix, ''))
-    .filter(o => semver.valid(o))
-    .sort(semverSort);
+  try {
+    const url = `repos/${repo}/git/refs?per_page=100`;
+    const res = (await ghGot(url, { paginate: true })).body;
+    const tagPrefix = 'refs/tags/';
+    return res
+      .filter(o => o.ref.startsWith(tagPrefix))
+      .map(o => o.ref.replace(tagPrefix, ''))
+      .filter(o => semver.valid(o))
+      .sort(semverSort);
+  } catch (err) /* istanbul ignore next */ {
+    logger.warn({ repo }, 'Could not fetch repo tags');
+    return [];
+  }
 }
 
 async function getRepoReleases(repo) {
-  const url = `repos/${repo}/releases?per_page=100`;
-  const res = (await ghGot(url, { paginate: true })).body;
-  return res
-    .map(o => o.tag_name)
-    .filter(semver.valid)
-    .sort(semverSort);
+  try {
+    const url = `repos/${repo}/releases?per_page=100`;
+    const res = (await ghGot(url, { paginate: true })).body;
+    return res
+      .map(o => o.tag_name)
+      .filter(semver.valid)
+      .sort(semverSort);
+  } catch (err) /* istanbul ignore next */ {
+    logger.warn({ repo }, 'Could not fetch repo releases');
+    return [];
+  }
 }