diff --git a/app/services/notification_service.rb b/app/services/notification_service.rb
index 9a7af5730d2b3f5a43f821e6084c00e67017d1af..75277d3ac127cd10ca1544783d7ba8308b8153b6 100644
--- a/app/services/notification_service.rb
+++ b/app/services/notification_service.rb
@@ -591,7 +591,11 @@ class NotificationService
     custom_action = build_custom_key(action, target)
 
     recipients = target.participants(current_user)
-    recipients = add_project_watchers(recipients, project)
+
+    # TODO: CLEAN ME UP!
+    unless custom_action == :success_pipeline
+      recipients = add_project_watchers(recipients, project)
+    end
 
     recipients = add_custom_notifications(recipients, project, custom_action)
     recipients = reject_mention_users(recipients, project)
diff --git a/changelogs/unreleased/remove-successful-pipeline-emails-for-now.yml b/changelogs/unreleased/remove-successful-pipeline-emails-for-now.yml
new file mode 100644
index 0000000000000000000000000000000000000000..47d484e5c84fadff6a2da0125eb715c2e3d3ef51
--- /dev/null
+++ b/changelogs/unreleased/remove-successful-pipeline-emails-for-now.yml
@@ -0,0 +1,4 @@
+---
+title: Make successful pipeline emails off for watchers
+merge_request: 8176
+author:
diff --git a/doc/workflow/notifications.md b/doc/workflow/notifications.md
index c936e8833c6e0770b377e465109235e41f685d10..4c52974e1038447b3de0f725b9e33b2c247fe765 100644
--- a/doc/workflow/notifications.md
+++ b/doc/workflow/notifications.md
@@ -73,7 +73,7 @@ In all of the below cases, the notification will be sent to:
 
     ...with notification level "Participating" or higher
 
-- Watchers: users with notification level "Watch"
+- Watchers: users with notification level "Watch" (however successful pipeline would be off for watchers)
 - Subscribers: anyone who manually subscribed to the issue/merge request
 - Custom: Users with notification level "custom" who turned on notifications for any of the events present in the table below