diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6318739b234844b5aa4ea182db4a7558cd936d75..bddc4857a39bea425165a190edb8b91c515d446b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -65,6 +65,9 @@ before_script:
     - Rscript tests/scheduled_tests/regression.R compare
 
 .check:
+  only:
+    refs:
+      - tags
   stage: check
   script:
   - tlmgr update --self && tlmgr install ec epstopdf-pkg
@@ -72,11 +75,17 @@ before_script:
   - R -q -e 'rcmdcheck::rcmdcheck(args = "--as-cran", error_on = "warning")'
 
 .test_all:
+  only:
+    refs:
+      - tags
   stage: check
   script:
   - R -q -e 'devtools::test()'
 
 benchmark_devel:
+  only:
+    refs:
+      - tags
   extends: .R-devel
   stage: check
   allow_failure: true
@@ -133,15 +142,10 @@ test_all_oldrel:
 
 revdepcheck_devel:
   stage: revdepcheck
-  only:
-    refs:
-      - tags
-      - schedule
-      - master
   extends: .R-devel
   script:
     - R -q -e 'remotes::install_github("https://github.com/r-lib/revdepcheck")'
-    - R -q -e 'revdepcheck::revdep_check(num_workers = 2)'
+    - R -q -e 'revdepcheck::revdep_check(quiet = FALSE)'
     - R -q -e 'stopifnot(all("+" == sapply(revdepcheck::revdep_summary(), "[[", "status")))'
     - R -q -e 'if (any(sapply(revdepcheck::revdep_summary(), function(x) {any(x$cmp$change == 1)}))) stop()'
   artifacts:
@@ -150,3 +154,4 @@ revdepcheck_devel:
       - revdep/problems.md
       - revdep/failures.md
       - revdep/cran.md
+      - revdep/checks