On-Call Coverage Roster & Fatigue Risk Planner
Plan sustainable on-call rotations, calculate fatigue risk, and optimize team coverage to prevent burnout.
Formula
Shifts per Year = 52 weeks / (Team Size × Rotation Length weeks); Fatigue = f(Frequency, Duration, Incident Load)
On-call shifts per engineer per year is calculated by dividing 52 weeks by the product of team size and rotation length in weeks. Example: 6-person team with 1-week rotations = 52 / (6 × 1) = 8.7 weeks per engineer annually. Target is <6 weeks/year for sustainability. Fatigue score combines multiple factors: shift frequency (how often), duration (how long), and incident load (how many hours spent resolving issues). Additional factors include weekend coverage, backup availability, and team size adequacy. The formula works because it quantifies the burden distribution: larger teams with shorter rotations spread the load more evenly. However, absolute numbers don't capture context—2 hours/shift of complex debugging is more draining than 4 hours of routine tasks. Qualitative factors (incident severity, sleep disruption, documentation quality) matter as much as quantitative metrics. The formula provides baseline; team feedback and burnout signals provide context for adjustment.
Worked Examples
Example 1: SRE Team On-Call Planning
Problem:6-person SRE team, 1-week rotations, 3 incidents/week averaging 2 hours each. Weekend coverage required. Assess fatigue risk and optimize.
Solution:Current Setup: - Team: 6 engineers - Rotation: 1 week (7 days) - Shifts per person/year: 52 / 6 = 8.7 weeks - Incidents per shift: 3/week - Hours per shift: 3 × 2 = 6 hours - Avg hours/day: 6 / 7 = 0.86 hours Fatigue Analysis: - Frequency: 8.7 weeks/year (moderate; target <6) - Duration: 7 days (acceptable) - Load: 0.86 hours/day (low-moderate) - Weekend: Yes (+stress) - Fatigue Score: ~45 (Moderate risk) Problems: 1. Frequency slightly high (8.7 vs target 6) 2. Weekend coverage adds stress 3. No backup mentioned (single point of failure) Optimization Options: Option 1: Grow Team - Add 2 engineers → 8 total - Shifts per person: 52 / 8 = 6.5 weeks/year ✓ - Cost: $200K/year (2 × $100K) - Fatigue: Moderate → Low Option 2: Follow-the-Sun (if global team) - Split into 3 regions: Asia, EU,
Result:8.7 weeks/year per engineer (target <6) | Moderate fatigue risk | Add secondary rotation + reduce incidents
Frequently Asked Questions
What is on-call rotation?
On-call rotation is scheduled availability to respond to production incidents outside business hours. Engineers take turns being 'on-call'—carrying pager/phone, expected to respond within SLA (typically 15-30 min). Rotations are typically 1 week (168 hours). After rotation, next engineer takes over. On-call is necessary for 24/7 services but creates stress and disrupts personal time.
How many people do I need for sustainable on-call?
Minimum 4 for weekly rotations (each on-call 13 weeks/year). Healthy: 6-8 (6-9 weeks/year each). Excellent: 10+ (5 weeks/year each). Formula: Team size = 52 weeks / (target weeks per person × rotation length). Target <6 weeks/year per person to prevent burnout. Smaller teams (<4) experience unsustainable load; burnout and attrition result.
What is on-call fatigue and how do I prevent it?
On-call fatigue is burnout from sustained availability stress, sleep disruption, and unpredictability. Symptoms: anxiety, poor sleep, resentment, degraded incident response quality. Prevention: (1) Limit frequency (<6 weeks/year), (2) Short rotations (1 week, not 4), (3) Backup person (coverage for breaks), (4) Incident reduction (automation, better monitoring), (5) Compensation (time off, pay), (6) Handoff discipline (clear docs). Fatigue compounds—monitor team health.
Should on-call rotations be 1 week or 2+ weeks?
Shorter is generally better. 1-week rotations: Pro—shorter burden, frequent breaks. Con—more handoffs. 2-week rotations: Pro—fewer handoffs, deeper context. Con—sustained stress. Research shows 1-week preferred—ability to 'see the end' reduces stress. Exception: Low-incident services (<1/week) can do 2-week rotations. High-incident (>5/week) should do daily or follow-the-sun rotation.
What is follow-the-sun on-call?
Follow-the-sun distributes on-call across time zones: Asia team covers Asia hours, Europe covers Europe, US covers US. No one is on-call overnight. Requires global team (3+ regions). Benefits: Healthier work-life balance, faster response during business hours. Challenges: Handoff complexity, timezone communication, requires enough staff per region. Best for: Large teams (20+), global customers, high incident volume.
Should I pay for on-call time?
Yes. Options: (1) Stipend ($500-1,500/week), (2) Hourly rate for actual incidents, (3) Time-off comp (1 day off per week on-call), (4) Hybrid (stipend + incident pay). Paying signals respect and compensates for lifestyle disruption. Unpaid on-call = resentment and attrition, especially if frequent incidents. Check local labor laws—some jurisdictions require compensation.
How do I reduce on-call incidents?
Root cause analysis: Track incident types, identify patterns. Common fixes: (1) Better monitoring/alerts (reduce false positives), (2) Automation (auto-scaling, self-healing), (3) Runbooks (clear resolution steps reduce time), (4) Improved testing (prevent bugs reaching production), (5) Blameless postmortems (fix systems, not people). Goal: Reduce toil—incidents that can be automated. Google SRE target: <50% of time on toil.
What are signs of on-call burnout?
Individual: Anxiety before shifts, poor sleep, resentment, reduced incident response quality. Team: High attrition, sick leave spikes, decreased code quality, passive-aggressive behavior. Leading indicators: Incident volume increasing, mean-time-to-resolution growing, repeated handoff failures. If you see these: Immediately reduce load (add engineers, automate incidents, or temporarily reduce scope), debrief team, offer support.
Should I have primary and secondary on-call?
Yes, for high-impact services. Primary responds first. Secondary backs up if: primary unavailable (doctor appointment, sleep), incident requires expertise, or primary needs help. Reduces single-person pressure. Rotation: Primary week 1, Secondary week 2, Off weeks 3-N. Cost: 2× coverage means smaller team can't provide secondary. Minimum 6-8 engineers to support primary + secondary rotation sustainably.
How do I make on-call less painful?
Cultural: Blameless culture (no punishment for being paged), respect for personal time (avoid non-urgent pages), clear escalation (don't expect one person to solve everything). Technical: Good runbooks (step-by-step), fast rollback (reduce resolution time), observability (logs, metrics, traces readily available). Operational: Reasonable SLAs (not everything is P0), incident classification (only wake people for real emergencies), postmortems (prevent repeats). Compensation: Pay or time off.