diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 86160f34ff65586c6571cfde35a34ecf92d078cf..8fa1c091bd06e3c867e1840f629630845b34053d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -841,6 +841,10 @@ release-hackage-lint:
   rules:
     - if: '$RELEASE_JOB == "yes"'
   extends: .hackage
+  # The ghcup metadata pipeline requires all prior jobs to
+  # pass. The hackage job can easily fail due to API changes
+  # or similar - so we allow it to fail.
+  allow_failure: true
   variables:
     # No slow-validate bindist on release pipeline
     EXTRA_HC_OPTS: "-dlint"