Alert fatigue slows real incident response, lets genuine outages slip through, and grinds down all your experienced engineers. Reducing it is not about changing your alert thresholds, but putting machines on call.
It usually starts small. A CPU alert threshold gets added during a launch, set to fire above 80 percent so nobody misses a problem on release day. The launch goes fine, but why turn off the alert? It’s helpful, right? Over the next few months, that alert fires under normal load but nothing bad ever happens. Every one of those was a false positive, a page with no real problem behind it, and each on-call engineer learns exactly one thing: it means nothing.
And then one day, it means something. This time the CPU is genuinely pegged. Requests back up, and latency climbs. But by then, the habit is set. The alert goes unanswered until timeouts lead to errors users actually see and the “alerts” start coming from users.
This is alert fatigue. Alert fatigue slows real incident response, lets genuine outages slip through, and grinds down all your experienced engineers. Reducing it is not about changing your alert thresholds, but putting machines on call.
Key facts:
Alert fatigue is when engineers get so many alerts that they stop reacting to them, including the ones that signal real problems.
Psychologically, it is the desensitization that sets in when engineers receive so many alerts, many of them noise, that they start ignoring, silencing, or slowly acknowledging them. They aren’t “real,” so don’t require a response. These false alarms are the bulk of what a monitored system produces. It shows up anywhere people monitor systems, including security operations and healthcare, where the term was first coined.
Here, we’re focusing on on-call and production engineering alert fatigue, where the alerts come from monitoring, deploys, and incident tooling. It manifests as:
Importantly, alert fatigue doesn't stay with the alert that caused it. One noisy CPU rule teaches the team to distrust the whole pager, including the alerts that are well built.
Alert fatigue has pedigree, and it started in medicine and clinical decision support rather than software. In a 2013 Sentinel Event Alert, the Joint Commission flagged alarm fatigue as a patient-safety problem, citing estimates that 85 to 99 percent of clinical false-alarm signals never required intervention. Clinicians had grown so used to the noise that real alarms were missed, and the problem was serious enough to become a National Patient Safety Goal the following year.
The mechanism in a production system is the same. A person exposed to constant low-value automated alerts stops reacting to all of them, including the ones that matter. The stakes usually differ, but the failure pattern is identical, and so are most of the fixes.
A lot of alert fatigue comes from collapsing three things that should stay separate.
| Layer | What it is | How often it should reach a human |
|---|---|---|
| Event | Any change of state in your system | Almost never on its own |
| Alert | An event you've decided is worth surfacing | Only when it needs attention |
| Incident | A confirmed problem that needs a response | Every time |
Most events should never become alerts, and most alerts should resolve without ever becoming incidents. Keeping the layers distinct is what makes alerting sustainable. A good alert fires as close as possible to the incident layer, on signals that reliably track real problems, which is exactly why symptom and SLO-based alerting works. When teams alert at the event layer instead, paging on every state change, the gap between alerts and incidents widens until the pager is mostly noise.
The first cost is slower response to real incidents. When most pages are noise, engineers acknowledge them out of habit or stop acknowledging them at all. Thus, alert fatigue drives up MTTR: engineers acknowledge later, investigate less, and occasionally let a page sit because the last fifty were nothing.
Low-priority alerts that interrupt an on-call engineer erode productivity, and the fatigue they cause makes serious alerts get less attention than they need.
There's a hard ceiling underneath this. Google's SRE book puts a sustainable shift at fewer than two actionable incidents per twelve hours, since a single incident takes about six hours to work through end to end. Constant noise pushes teams well past that line, which is where both response quality and morale start to slip.
The second cost is employee burnout. On-call is demanding on its own, and constant noise turns a workable rotation into a driver of burnout and attrition. Losing an experienced engineer who knows your systems costs far more than the noise that pushed them out, and it takes much longer to recover from.
Most alert fatigue traces back to a small set of patterns, and nearly all of them are fixable. The usual causes:
There is a manual way to reduce alert fatigue: reduce alerts. Cutting alert fatigue is really mostly subtraction. You raise the bar for what earns a page and remove everything that doesn't clear it. The practices that work, roughly mapping to the causes above:
Taken together, these are the core of good alert management: deciding what fires, who it reaches, and when.
You can't manage alert fatigue without measuring it. A few signals tell you whether your changes are working:
Resolve AI is an agentic AI that reduces alert fatigue by investigating every alert the moment it fires, grouping the ones that belong to a single incident, and attaching the context an engineer would otherwise gather by hand, so fewer pages reach a human, and the ones that do are already triaged.
Earlier AIOps tools leaned on machine learning to flag anomalies, which surfaces the unexpected but rarely tells you whether it actually matters.
Unlike rule-based or machine-learning monitoring, agentic AI can investigate an alert end to end: pull the data, form a hypothesis, and confirm or rule it out. When a page comes in, a Resolve agent picks it up, pulls the relevant logs, metrics, traces, and recent changes, and works out whether it represents real user impact or noise before anyone is pulled in.
That directly addresses the patterns that cause fatigue. It correlates and groups the flood of pages from a single incident into one investigation, so alert storms stop reaching the pager as thirty separate notifications and needing manual triage. It attaches the context that low-fidelity alerts lack, including recent deploys and affected services. And it works out the difference between a symptom and its root cause, which is the triage that usually lands on a tired on-call engineer at the worst possible time.
The investigation runs automatically, and what happens next is up to you. Resolve starts advisory, handing the engineer an evidence-backed summary of what's happening and why, and takes on more of the execution for low-risk, well-understood problems as your team gets comfortable with it. Everything else stays a human decision. That model, AI-led investigation with graduated autonomy on the fix, is how Resolve approaches on-call.
Alert fatigue is caused by too many low-value alerts: non-actionable pages, untuned static thresholds, duplicate alerts from a single incident, missing severity and ownership, and alerting on internal causes rather than user-visible symptoms. The common thread is a low ratio of signal to noise, which trains people to stop reacting.
You reduce alert fatigue by raising the bar for what earns a page: alert on symptoms and SLO burn rather than every internal cause. An AI SRE can then investigate each alert as it fires, groups the pages from a single incident, and attaches context automatically, so fewer reach a human and the ones that do arrive are already triaged, with a person still deciding what to act on.
Alarm fatigue and alert fatigue describe the same effect in different fields. Alarm fatigue is the original clinical term, formalized by the Joint Commission for medical-device alarms. Alert fatigue is the equivalent in software and security operations. Notification fatigue is sometimes used for the broader case that adds chat, email, and push on top of monitoring alerts.
Google's SRE book puts the ceiling at fewer than two actionable incidents per twelve-hour on-call shift, based on the roughly six hours an incident takes to work through end to end. Most teams that feel constant alert fatigue are running well above that.
Stay current on how the best engineering teams are using AI in production. Customer spotlights, product updates, how-tos, and more delivered monthly.