diff --git a/js/src/components/Event/ParticipationButton.vue b/js/src/components/Event/ParticipationButton.vue
index 65c44041f..4fa3bd5c6 100644
--- a/js/src/components/Event/ParticipationButton.vue
+++ b/js/src/components/Event/ParticipationButton.vue
@@ -151,6 +151,7 @@ A button to set your participation
       >
     </b-dropdown>
     <b-button
+      rel="nofollow"
       tag="router-link"
       :to="{
         name: RouteName.EVENT_PARTICIPATE_LOGGED_OUT,
@@ -164,6 +165,7 @@ A button to set your participation
     >
     <b-button
       tag="router-link"
+      rel="nofollow"
       :to="{
         name: RouteName.EVENT_PARTICIPATE_WITH_ACCOUNT,
         params: { uuid: event.uuid },
diff --git a/js/src/components/Participation/ParticipationWithAccount.vue b/js/src/components/Participation/ParticipationWithAccount.vue
index fa252f072..9d9e5a4f6 100644
--- a/js/src/components/Participation/ParticipationWithAccount.vue
+++ b/js/src/components/Participation/ParticipationWithAccount.vue
@@ -31,6 +31,7 @@ import { IEvent } from "@/types/event.model";
   metaInfo() {
     return {
       title: this.$t("Participation with account") as string,
+      meta: [{ name: "robots", content: "noindex" }],
     };
   },
 })
diff --git a/js/src/components/Participation/ParticipationWithoutAccount.vue b/js/src/components/Participation/ParticipationWithoutAccount.vue
index ae26b2e65..bf18cc5d0 100644
--- a/js/src/components/Participation/ParticipationWithoutAccount.vue
+++ b/js/src/components/Participation/ParticipationWithoutAccount.vue
@@ -158,6 +158,7 @@ import { ApolloCache, FetchResult } from "@apollo/client/core";
   metaInfo() {
     return {
       title: this.$t("Participation without account") as string,
+      meta: [{ name: "robots", content: "noindex" }],
     };
   },
 })
diff --git a/js/src/components/Participation/UnloggedParticipation.vue b/js/src/components/Participation/UnloggedParticipation.vue
index a53fb9f0e..1457f459a 100644
--- a/js/src/components/Participation/UnloggedParticipation.vue
+++ b/js/src/components/Participation/UnloggedParticipation.vue
@@ -133,6 +133,7 @@ import RouteName from "../../router/name";
   metaInfo() {
     return {
       title: this.$t("Unlogged participation") as string,
+      meta: [{ name: "robots", content: "noindex" }],
     };
   },
 })
diff --git a/js/src/views/User/Login.vue b/js/src/views/User/Login.vue
index 27c1e7251..5d0700d4c 100644
--- a/js/src/views/User/Login.vue
+++ b/js/src/views/User/Login.vue
@@ -158,6 +158,7 @@ import AuthProviders from "../../components/User/AuthProviders.vue";
     return {
       title: this.$t("Login on Mobilizon!") as string,
       titleTemplate: "%s | Mobilizon",
+      meta: [{ name: "robots", content: "noindex" }],
     };
   },
 })
diff --git a/js/src/views/User/ResendConfirmation.vue b/js/src/views/User/ResendConfirmation.vue
index a791e5dc2..bedfeb237 100644
--- a/js/src/views/User/ResendConfirmation.vue
+++ b/js/src/views/User/ResendConfirmation.vue
@@ -60,6 +60,7 @@ import RouteName from "../../router/name";
   metaInfo() {
     return {
       title: this.$t("Resend confirmation email") as string,
+      meta: [{ name: "robots", content: "noindex" }],
     };
   },
 })