diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2d1412ee9b6c13d329481743b1a03ac0825d628c..3027709a271160517b1b578f183ae554483f0712 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -15,16 +15,19 @@ before_script:
   - bundle config set --local path 'vendor/bundle'
   - bundle install
 
-build:
+build-page:
   stage: build
   script:
     - JEKYLL_ENV=production bundle exec jekyll build --destination public
   artifacts:
     paths:
       - public
+  rules:
+    - if: $CI_COMMIT_BRANCH == "main" || $CI_COMMIT_BRANCH == "publish"
 
 deploy-draft:
   stage: deploy
+  needs: ["build-page"]
   rules:
     - if: $CI_COMMIT_BRANCH == "main"
   script:
@@ -45,6 +48,7 @@ deploy-draft:
 
 deploy-production:
   stage: deploy
+  needs: ["build-page"]
   rules:
     - if: $CI_COMMIT_BRANCH == "publish"
   script:
@@ -61,4 +65,4 @@ deploy-production:
         }'
   environment:
     name: production
-    url: https://mude.citg.tudelft.nl/2024
\ No newline at end of file
+    url: https://mude.citg.tudelft.nl/2024/website
\ No newline at end of file