On-Call Rotations and Incident Response Explained
On-call rotations spread responsibility for production incidents across a team on a schedule, paired with a defined incident response process for when alerts fire.
An on-call rotation is a schedule that assigns responsibility for responding to production incidents to a specific person (or small group) for a defined window of time — a week is common, though shorter and longer rotations both exist. Incident response is the process that kicks in once that person gets paged: how the team detects, triages, communicates about, and resolves the problem. Together they’re how a team ensures production issues get a human’s attention quickly, without every engineer being interruptible at all times.
Why rotations exist
Software that runs in production breaks in ways that don’t wait for business hours — a deploy that looked fine in review, a dependency that goes down, traffic that spikes past what infrastructure was sized for. Someone needs to be reachable when that happens, but making every engineer permanently reachable is both unsustainable and unnecessary. A rotation solves this by making the reachability requirement rotate: one person (or a primary-and-secondary pair) carries the pager for their shift, then hands it off.
Rotations are usually built around a few explicit roles:
- Primary — the first person paged, expected to acknowledge and begin triage within a defined response time.
- Secondary (or backup) — paged automatically if the primary doesn’t acknowledge in time, or brought in deliberately if an incident needs more hands.
- Incident commander — for larger incidents, a role distinct from “the person fixing the bug,” focused purely on coordinating communication, tracking who’s doing what, and deciding when to escalate further.
What triggers a page
A page should represent something that needs a human right now — not everything an observability stack can measure. This distinction matters enough that it’s usually framed as SLOs and SLIs: an alert should fire when a service-level objective is at risk of being breached, not on every anomalous metric. A dashboard can show a hundred graphs; a page should represent maybe a handful of conditions that actually justify waking someone up.
Getting this threshold wrong in either direction has a real cost. Alerting on too much produces alert fatigue — engineers start reflexively acknowledging and dismissing pages without fully investigating, which is exactly the failure mode a paging system exists to prevent. Alerting on too little means real problems go unnoticed until a customer reports them.
The shape of an incident response
Most incident response processes follow a similar arc, whatever specific tooling a team uses:
- Detection — an alert fires, or someone notices and reports the problem.
- Triage — the on-call engineer assesses severity and decides whether to declare a formal incident.
- Communication — a channel or thread is opened, stakeholders are notified proportionate to severity, and a single source of truth for status updates is established.
- Mitigation — the immediate goal is restoring service, not necessarily fixing the root cause. A circuit breaker tripped manually, a rollback to a previous canary deployment, or a feature flag flipped off can all resolve user impact faster than a proper fix.
- Resolution — the incident is declared over once service is restored and stable.
- Postmortem — a written account of what happened, why, and what changes will prevent recurrence.
That last step matters as much as the response itself. A blameless postmortem treats the incident as a system failure to learn from, not an individual’s mistake to assign — the same deploy, on a different day, could have been caught by anyone. Postmortems that assign blame train engineers to hide problems rather than surface them, which is the opposite of what an incident response process is for.
Runbooks: preparation before the page
The best time to figure out how to resolve a known failure mode is not at 3 a.m. while a service is down. A runbook is a written, step-by-step procedure for a specific, recurring type of incident — “database connection pool exhausted,” “certificate expired,” “queue backed up” — written in advance by someone who has already solved it, or by the team collectively after the first time it happened.
A good on-call rotation pairs pages with runbooks wherever the failure is recurring and well-understood; the human judgment on-call engineers bring is best spent on genuinely novel problems, not re-deriving the same fix every time a known issue recurs.
Sizing a healthy rotation
A rotation with too few people burns everyone out — being on-call is inherently disruptive to personal time even when nothing goes wrong, because the possibility of a page changes how you plan your evening. Teams generally aim for enough people in the rotation that no one is on-call more than roughly once every four to six weeks, though the right number depends heavily on how noisy the alerts actually are and how large the team is. A team that pages its primary every night is telling you something about alert quality, not about rotation size — more people in the rotation just spreads the pain around instead of fixing the underlying noise.
Compensation, defined response-time expectations, and a genuine secondary who actually gets paged on missed acknowledgments are what separate a sustainable rotation from one that quietly drives attrition.
Rotation size vs alert quality
| Symptom | Likely cause | Fix |
|---|---|---|
| Frequent pages, mostly false alarms | Alert thresholds too sensitive | Tighten alert conditions to real SLO risk |
| Rare pages, but each one is a fire drill | Alerts fire too late | Add earlier warning signals, not just hard failures |
| Same person always paged | Rotation too small, or others opted out informally | Grow the rotation, enforce actual rotation |
| Long time-to-acknowledge | No enforced secondary escalation | Configure automatic escalation on missed ack |
The takeaway
An on-call rotation distributes the responsibility of “someone must be reachable when production breaks” across a team on a schedule, and incident response is the structured process that person follows once paged: detect, triage, communicate, mitigate, resolve, and write it up afterward. The system works only when pages represent genuine risk to a defined service-level objective, when runbooks capture the fixes for recurring failures, and when postmortems stay blameless — otherwise a rotation just becomes a schedule for who burns out fastest.
Tagged
Keep reading
Chisato · · 4 min read What Is OpenTelemetry? Traces, Metrics, and Logs
OpenTelemetry is a vendor-neutral standard for instrumenting apps with traces, metrics, and logs — one API, any observability backend.
The Lycoris Team · · 4 min read What Is a Blameless Postmortem? Incident Reviews
A blameless postmortem examines an incident's causes without assigning fault, so teams surface real fixes instead of hiding mistakes.
Chisato · · 4 min read What Is Site Reliability Engineering (SRE)?
Site reliability engineering applies software engineering to operations — error budgets, SLOs, and automating incident response at scale.