Build a 1-Page Incident Response Runbook
Effective incident response is crucial for minimizing downtime and impact during critical system failures. While comprehensive incident management plans…
Effective incident response is crucial for minimizing downtime and impact during critical system failures. While comprehensive incident management plans span many pages, a concise, single-page runbook serves as an invaluable, high-level guide during the initial chaos of a production outage. Its purpose is to provide immediate direction, clarify roles, and ensure critical first steps are not missed, acting as a quick-reference "cheat sheet" for on-call personnel.
This article details the construction of a practical 1-page incident response runbook, emphasizing clarity, actionable steps, and pre-defined decision points to accelerate recovery and communication.
Defining Core Incident Response Roles
Clear role definition is paramount in preventing confusion and ensuring all necessary tasks are covered. Even for a single-page runbook, these roles should be prominently displayed, along with instructions to pre-assign primary and backup individuals for each role.
- Incident Commander (IC): The single point of authority responsible for overall incident management. The IC does not typically perform technical troubleshooting but rather orchestrates the response, ensures adherence to process, and drives decision-making. Key tasks include:
- Declaring and confirming the incident.
- Assigning and delegating tasks.
- Managing the incident timeline and documentation.
- Deciding when to escalate or de-escalate.
- Ultimately declaring the incident resolved.
- Technical Lead (TL): Focuses exclusively on the technical diagnosis and resolution of the incident. The TL leads the technical troubleshooting effort, coordinates with engineers, and provides technical updates to the IC. Key tasks include:
- Leading the technical investigation.
- Identifying root causes and remediation steps.
- Implementing fixes and validating their effectiveness.
- Briefing the IC on technical progress.
- Communications Lead (Comms): Manages all internal and external communication related to the incident. This role shields the IC and TL from communication distractions, allowing them to focus on resolution. Key tasks include:
- Drafting and sending internal updates (e.g., to leadership, sales).
- Drafting and sending external updates (e.g., to customers, public status page).
- Monitoring communication channels for inquiries.
- Coordinating with legal or PR if necessary.
Pre-assign Backups: For each primary role, a designated backup must be identified and trained. This ensures continuity if the primary individual is unavailable or overwhelmed. Update this list quarterly or whenever staffing changes.
Initial Triage Steps and Incident Declaration
The first few minutes of an incident are critical. This section of the runbook outlines the immediate actions an on-call engineer should take upon receiving an alert.
1. Confirm the Incident
Verify that the alert represents a genuine production issue, not a false positive or transient glitch. This can involve:
- Checking related monitoring dashboards (e.g., Datadog, Prometheus, Grafana).
- Attempting to reproduce the reported issue.
- Checking system logs for error patterns (e.g., via Splunk, ELK Stack).
- Pinging affected services or endpoints.
# Example: Check service health and logs
curl -sS https://api.your_service.com/health || echo "Health check failed!"
journalctl -u your_service --since "5 minutes ago" | grep "ERROR\|CRITICAL"
kubectl get pods -n production -o wide | grep "CrashLoopBackOff\|Error"
2. Classify Severity (Impact & Urgency)
Establish a severity level based on the incident's impact on users, business, and data. This dictates the response intensity and communication cadence. A simple 3-tier system is often sufficient:
- Severity 1 (Critical): Major system outage, complete data loss risk, significant business impact (e.g., payment processing down, customer-facing website offline). Immediate, all-hands response.
- Severity 2 (Major): Significant degradation, partial outage, high user impact (e.g., key feature broken, slow performance for a large segment of users). Urgent response required.
- Severity 3 (Minor): Isolated issue, minor degradation, limited user impact (e.g., non-critical background job failing, internal tool glitch). Scheduled response, but track carefully.
The runbook should include specific examples for each severity level relevant to your services.
3. Declare Incident & Open Communications Bridge
Once confirmed and classified, declare the incident. This triggers the formal response process. The primary communication channel should be established immediately. For most organizations, this means:
- Open a dedicated chat channel: e.g., Slack channel
#incident-YYYYMMDD-servicename. - Initiate a conference bridge: e.g., Zoom, Google Meet, Microsoft Teams. Ensure the link is persistent and easily accessible.
- Designate an IC: The first responder typically acts as IC until a designated IC takes over.
- Start a Timeline Document: A simple shared document (e.g., Google Doc, Notion page, wiki) to log all actions, observations, decisions, and their timestamps. This is crucial for post-incident review.
# Example: Timeline entry format
[TIMESTAMP] [ROLE] [ACTION/OBSERVATION]
[2023-10-27 10:05 UTC] [TL] Observed high latency on DB cluster `db-prod-01`.
[2023-10-27 10:07 UTC] [IC] Declared SEV1 incident. Opened Zoom: [LINK]. Slack: #incident-20231027-dbissue.
[2023-10-27 10:10 UTC] [COMMS] Drafting internal update.
Communication Strategy and Templates
Pre-defining communication protocols and having templates ready significantly reduces stress and ensures consistent messaging during incidents. This section outlines who communicates what, when, and how.
1. Internal Communications
Who needs to know internally and at what level of detail? This typically includes:
- Leadership: High-level summaries, business impact.
- Sales/Customer Support: Information to relay to customers (or "no comment" instructions).
- Engineering Teams: Technical details relevant to their services.
The runbook should list contact groups or distribution lists for each of these audiences. For example:
| Audience | Contact Method | Update Frequency | Template (Location) |
|---|---|---|---|
| Leadership (Execs, VPs) | exec-alert@yourcorp.com |
Every 30-60 min (SEV1) | /docs/ir_templates#exec-update |
| Sales/Support | support-alerts@yourcorp.com |
Every 30 min (SEV1/2) | /docs/ir_templates#support-update |
| All Engineering | #engineering-alerts (Slack) |
As needed for major status change | /docs/ir_templates#eng-status |
Pre-written templates are invaluable. These should reside in an easily accessible location (e.g., a shared wiki, Confluence page). They should include placeholders for severity, affected services, current status, known impact, and expected next update time. This prevents panic-induced, poorly worded communications.
2. External Communications (Customers, Public)
Decisions regarding external communication are sensitive. The runbook should clearly state:
- Who is authorized to communicate externally: Typically the Comms Lead, potentially in consultation with Legal/PR and IC.
- When to communicate: Define thresholds (e.g., all SEV1/2 incidents impacting customers for more than 15 minutes trigger external comms).
- Channels: Status page (e.g., Statuspage.io), email list, social media.
External templates should be concise, professional, and focus on empathy and transparency without oversharing technical details. Example template content:
Subject: Incident Update: [Service Name] Interruption
Status: Investigating / Identified / Monitoring / Resolved
We are currently experiencing an issue affecting [brief description of affected service/feature, e.g., "login functionality"]. Users may be experiencing [impact, e.g., "difficulty logging in"].
Our engineering team is actively investigating and working to restore full service as quickly as possible. We will provide another update by [TIME UTC] or as soon as significant progress is made.
We apologize for any inconvenience this may cause.
3. Regulatory/Compliance Notifications
For businesses operating under specific regulations (e.g., GDPR, HIPAA, PCI DSS), incident response must include triggers for notifying regulatory bodies. The runbook should clearly list:
- Specific incident types requiring notification.
- Relevant contact details for regulatory bodies.
- Internal personnel responsible for these notifications (often Legal, CISO, or designated compliance officer).
- Timelines for notification (e.g., "within 72 hours of discovery for GDPR").
Escalation Paths and Resolution
Even with a clear runbook, some incidents require external expertise or higher-level intervention.
1. Technical Escalation
When the on-call team cannot resolve the issue within a defined timeframe (e.g., 60 minutes for a SEV1), or requires specialized knowledge, the runbook should outline:
- How to contact specific subject matter experts (SMEs).
- PagerDuty/Opsgenie schedules for specific teams.
- Vendor support contact information (e.g., cloud provider support, SaaS vendor support).
# Example: Escalation to Cloud Provider (AWS)
1. Verify issue is within AWS's responsibility (e.g., EC2 instance unreachable, region-wide outage).
2. Open Critical Support Case: AWS Management Console -> Support -> Create Case.
3. Select "Service limit increase or other technical support."
4. Severity: "System impaired" or "Production system down."
5. Provide detailed information: Case ID, affected resources, impact, actions taken.
6. Share case ID on incident bridge/timeline.
2. Management Escalation
When the incident's business impact warrants it, or if resolution is stalled, management must be brought in. The runbook should specify:
- Conditions for management escalation (e.g., SEV1 ongoing for 2+ hours, inability to restore service, potential brand damage).
- Contact methods for relevant managers/executives.
3. Resolution and Post-Incident Actions
The IC formally declares the incident "resolved" once the fix is deployed and validated, and systems are stable. The runbook should briefly mention immediate post-resolution steps:
- Final communication to all stakeholders (internal & external).
- Ensure all monitoring and alerting are re-enabled.
- Schedule a post-incident review (PIR) within 24-48 hours.
- Archive incident documentation (timeline, chat logs).
Common Pitfalls
- Outdated Contact Information: Ensure all phone numbers, email lists, and PagerDuty schedules are current. Test them periodically.
- Lack of Training: A runbook is only useful if the team is trained on its contents and practices incident response regularly (e.g., through game days).
- Over-reliance on Memory: Don't expect individuals to remember all steps during high-stress situations. The runbook should be a direct, step-by-step guide.
- Too Much Detail: For a 1-page runbook, focus on high-level, critical actions. Link to more detailed playbooks or documentation for deeper technical steps.
- Ignoring Documentation: Failing to maintain a live incident timeline leads to poor post-mortems and missed learning opportunities.
- Unclear IC: Without a clear, single Incident Commander, decision-making becomes fragmented and slow.