Skip to main content
Cloud DevOps Solutions
Get a quote Talk to an engineer

SRE & Incident Response

Setting Up a Sustainable On-Call Rotation

We set up on-call by choosing a paging tool, designing schedules and escalation policies that fit your team size and time zones, connecting alerts to the right rotation, and writing the rules for handover, compensation and load. The goal is a rotation people can sustain without burning out.

Key takeaways

  • A rotation is a people system first and a tooling problem second.
  • Small teams need a different design from large ones: primary and secondary, shorter shifts, clear opt-outs.
  • Every page should reach one named person, with an automatic escalation if they do not respond.
  • Healthy on-call is measured by pages per shift and sleep interrupted, not by heroics.
  • Tool choice matters less than integration, routing and discipline.

Why on-call goes wrong

Most on-call problems come from design, not from the tool. A single “DevOps person” is paged for everything. Alerts fire for conditions nobody can act on. A rotation exists on paper but one senior engineer quietly covers every bad night. Within a year the team is tired, resentful, or a key person leaves.

A well-built rotation is the opposite: predictable, shared, and rarely disturbing. This page covers how we build one as part of our SRE and incident response service, including the awkward trade-offs for small teams.

What good looks like

  • Shared fairly. Load is spread across everyone qualified, with swaps and overrides easy to arrange.
  • Reachable. A page produces a phone call or push that breaks through do-not-disturb, and the schedule shows who is on right now.
  • Backed up. Every page has an escalation: if the primary does not acknowledge within a set time, the secondary is paged, then a manager.
  • Equipped. The on-call engineer has access, runbooks and authority to act, including rollback.
  • Bounded. Alert volume is capped by process. If a shift regularly exceeds a sensible number of interrupting pages, that triggers work on alerts, not more heroics.
  • Reviewed. Handover notes and a weekly look at the previous shift’s pages.

Choosing the paging tool

The three tools we implement most are PagerDuty, OpsGenie and Grafana OnCall. All can model schedules, escalation policies and routing from monitoring tools.

ConsiderationPagerDutyOpsGenieGrafana OnCall
IntegrationsVery broadBroad, strong with AtlassianBest with Grafana stack, webhooks for others
HostingSaaSSaaSCloud or self-hosted option
Best forLarger or compliance-heavy teamsJira and Confluence shopsGrafana-centric teams, cost sensitivity
Watch out forPer-user cost at scaleCheck Atlassian’s current product directionFewer enterprise features

Vendors change plans and roadmaps, so we verify the current state at the time of selection rather than relying on a comparison written earlier. If your monitoring already lives in Grafana, the lowest-friction option is often Grafana OnCall. If you need rich reporting and many integrations, PagerDuty is hard to beat.

Designing the rotation

Small teams (two to four engineers)

Weekly rotations of one person are exhausting at this size. Options that work better:

  • Split the day and night, so nobody carries both.
  • Use a primary-and-secondary model where the secondary only answers if the primary misses.
  • Reduce what can page at night to a short list of truly severe conditions, and let everything else wait until morning.
  • Consider outsourced coverage for out-of-hours.

Larger teams

Weekly shifts with a primary and a secondary, plus a separate rotation for incident commander if you have a formal incident process, keep load balanced. Multi-region teams can add follow-the-sun handoffs.

Shift hygiene

Handover happens at a fixed time with a written note: open issues, risky changes planned, flaky alerts to watch. Swaps are recorded in the tool, not agreed in chat only, so the schedule remains the single source of truth.

Alert routing and escalation

A page must reach someone who can act. We map each service to an owning team in the paging tool and route from Alertmanager or cloud alarms using labels:

route:
  receiver: default-ticket
  group_by: [alertname, service]
  routes:
    - matchers: [severity="page", team="platform"]
      receiver: pagerduty-platform
    - matchers: [severity="page", team="payments"]
      receiver: pagerduty-payments
    - matchers: [severity="ticket"]
      receiver: jira-ticket

receivers:
  - name: pagerduty-platform
    pagerduty_configs:
      - routing_key_file: /etc/alertmanager/secrets/pd-platform-key

The key is read from a mounted secret file rather than written into configuration. The escalation policy then lives in the paging tool: for example, notify the primary immediately, escalate to the secondary if unacknowledged after a few minutes, then to the engineering manager. Exact timings are agreed with you. The wider escalation structure is described in escalation paths and communication.

Common failure modes

  • The hero pattern. One person quietly takes every page. Fix it with overrides, visible load reports and a manager who checks.
  • Unreachable pages. Silent mode, wrong phone number, notification rules never tested. We test every person’s contact path.
  • Pager for everything. Low-value alerts train people to ignore the pager. Pair rotation setup with an alert quality audit.
  • No authority. The on-call engineer cannot roll back without waiting for approval. Agree pre-authorised actions in advance.
  • No time off after a bad night. Agree a recovery rule, such as a late start after a night with several interruptions.

Handover and shift hygiene

A rotation is only as safe as its handoff. At each change, the outgoing engineer posts a short note: open incidents, alerts that were silenced and why, risky changes in flight, and anything flaky to watch. The incoming engineer acknowledges it. This takes five minutes and prevents the classic failure where a silenced alert quietly outlives the reason for silencing it.

Compensation and time off

Out-of-hours duty is real work. Whether you pay a stipend, grant time off in lieu, or both is a decision for your leadership and local employment rules, and we do not prescribe it. We do recommend writing it down before the first rotation starts. Teams that leave this vague tend to lose their best engineers first.

Reviewing load

Each month, look at pages per shift, night pages, and who carried the heaviest weeks. Uneven load is a rota design problem or an alerting problem, and both are fixable.

When not to run your own rotation

If you have one or two engineers, or your product has no real out-of-hours need, a formal rotation may cost more than it returns. Business-hours support with a clear “best effort” policy for nights can be honest and sufficient. If you do need round-the-clock cover and cannot staff it fairly, an external team under Managed DevOps is often better than burning out a handful of developers.

Delivery and handover

You receive the configured paging tool, schedules, escalation policies and routing rules (as Terraform where the provider supports it), a one-page on-call guide, a handover note template and a tested contact list. We stay alongside for the first rotations to adjust load.

How to tell it is working

Track pages per shift, out-of-hours pages, acknowledgement time, and the proportion of pages that needed action. Add a human measure: ask on-call engineers each quarter how the shift felt. Falling page volume with steady or improving recovery time is the signal that routing, alerts and runbooks are working together. To plan yours, book a consultation.

References

How we deliver it

  1. 01

    Assess team and load

    We count engineers who can respond, review past alert volume and time zones, and agree what a fair rotation looks like for you.

  2. 02

    Choose the paging tool

    We compare PagerDuty, OpsGenie and Grafana OnCall against your stack, budget and existing monitoring.

  3. 03

    Design schedules and escalation

    Primary, secondary and manager tiers, shift lengths, overrides and holiday cover are defined and documented.

  4. 04

    Wire up alert routing

    Alertmanager, cloud alarms and uptime checks are mapped to services and teams so pages reach the right owner.

  5. 05

    Test end to end

    We trigger test pages, confirm phones ring, check escalation timing and verify that notification settings overcome silent modes.

  6. 06

    Train and review

    We walk the first on-call engineers through the tooling and review the first rotations for load and fairness.

Tools and technologies

PagerDutyOpsGenieGrafana OnCallAlertmanagerPrometheusSlackMicrosoft TeamsTerraformCloudWatch Alarms

Frequently asked questions

How many engineers do you need for a sustainable on-call rotation?
As a rough guide, at least five or six people sharing a weekly primary rotation keeps each person on call roughly one week in six. Smaller teams can still run on-call, but it needs lighter alert load, good automation and sometimes external cover. We size the design to your actual team.
PagerDuty, OpsGenie or Grafana OnCall: which should we choose?
PagerDuty has the deepest integrations and reporting. OpsGenie suits teams already in the Atlassian ecosystem. Grafana OnCall fits teams standardised on Grafana and wanting lower cost or self-hosting. Check current vendor roadmaps before committing, as products and plans change. We recommend based on your stack.
Should on-call engineers be paid extra?
Many companies compensate on-call with a stipend, time off in lieu or both, and rules vary by country and contract. We do not set pay, but we advise that unpaid, unbounded on-call is a retention risk. Recognition should be agreed before the first rotation starts.
What is follow the sun on-call?
It hands the pager between teams in different time zones so each covers daytime hours and nobody is regularly woken at night. It works well when you have engineers in two or three regions with enough skill overlap. It also needs strong handover notes and consistent tooling.
Can we outsource on-call instead?
Yes. A managed team can carry the pager under an agreed scope, while your developers handle code defects. It works best when runbooks and access are in place first. See our Managed DevOps service for how that fits with your own rotation.

Talk to an engineer about on-call rotation setup

Book a free 30-minute call. We review your current setup and tell you honestly whether and how we can help.

Written by Saddique Khan, DevOps / SRE / Cloud Consultant Engineer. Last updated 2026-10-08.