How to manage GitHub notifications (and actually see the ones that matter)
GitHub notifications flood because Watch is all-or-nothing and every thread you touch follows you. The fix: switch noisy repos from Watch to Custom or Unwatch, route only Participating and @mentions to email, and let a digest tool summarize repo activity in Slack or Discord instead.
Why do I get so many GitHub notifications?
Two defaults stack up. Watching a repo subscribes you to every conversation in it, and any PR or issue you comment on follows you automatically. On a busy team that is hundreds of threads a week, most of which stopped being yours minutes after you commented.
How do I tune GitHub's notification settings?
GitHub Settings > Notifications has the levers. Set 'Participating and @mentions' as the default instead of 'All activity' so only threads you joined follow you. Per repo, choose Watch > Custom to pick releases, PRs, or issues only, or Unwatch to stop everything except direct mentions. Unsubscribe from a single noisy thread with the unsubscribe button on the right of any conversation.
Email, web, or mobile - which should be on?
Pick one primary channel, not three. Most people keep web notifications plus email for @mentions, and turn mobile off entirely. If email is your inbox for everything else, the GitHub newsletter-style flood will bury real mail - keep email for mentions only.
How do I get GitHub activity in Slack or Discord instead?
The official GitHub app for Slack posts per-event messages, which swaps one flood for another. A digest tool like HotBot sends one filtered daily summary of open PRs, CI results, and review status to Slack or Discord, with escalation for PRs that sit too long. Same signal, one message a day.
What about notifications for repos I maintain?
Maintainers should keep Watch on their own repos but move the noise to a channel, not an inbox: a dedicated Slack or Discord channel fed by a digest keeps the timeline scannable. Anything truly urgent - failing CI on main, stale security PRs - should escalate, not wait in the stream.