Support Runbooks: Write the Playbook Your Future Self Will Thank You For

Support runbooks are short, practical checklists that turn a known problem into a repeatable fix: symptoms, diagnosis steps, the solution, and when to escalate. This guide shows you what goes into a runbook your team will actually use, walks through a real example, and closes with the five runbooks every support team should write first.
If you have ever solved the same weird issue twice, you already know why runbooks matter. The first time, you spend an hour figuring it out. The second time, you spend forty-five minutes remembering how you figured it out. A runbook converts both of those hours into ten calm minutes for anyone on the team, including future you at 2am. That is the whole pitch, and it is enough.
Here is where we are going:
- What a runbook is, and what it is not
- The anatomy of one people actually use
- A real annotated example
- Where runbooks live so they get found
- Keeping them alive after writing them
- The five runbooks to write first
- Connecting it all to your support habits
What a Support Runbook Actually Is
A runbook is a checklist for a specific, recurring problem. Not an essay, not a wiki page about the architecture, not a troubleshooting philosophy. If a competent teammate cannot follow it half-asleep and reach the fix, it is not a runbook yet.
What it is not matters just as much. It is not a substitute for understanding; the checklist handles the known cases so your brain is free for the novel ones. It is not a dumping ground for every fact about a service; ten precise steps beat fifty pages of background. And it is not write-once literature. A runbook that nobody updates becomes a trap, confidently guiding people through last year's system. We will fix that in section 5.
The test is simple. Next time you solve something that took real digging, ask: could someone else hit this next month? If yes, it earns a runbook. Three tickets with the same root cause is not three tickets. It is one runbook waiting to be written.
The Anatomy of a Runbook People Actually Use
Every good runbook has the same five parts, in this order. Keep each part short enough to scan during an incident.
1. Title and trigger. One line saying when to reach for this page. "Use this when: login failures spike above baseline" beats a clever title every time.
2. Symptoms. What the customer sees and what your dashboards show. Include the exact error text, because people search for exact error text.
3. Diagnosis, in order. Numbered checks from most likely and cheapest to rarest and hardest. Each step says what to run or look at, and what result means "move to the next step" versus "you found it."
4. The fix. Exact commands or clicks, not descriptions of commands. Copy-paste ready, with the expected output noted so the reader knows it worked.
5. Escalation. Who owns this service, what evidence to attach (logs, timestamps, what you already ruled out), and the severity line where you stop and page someone. A runbook without an escalation path strands people at the worst moment.
One more ingredient: a header with owner and last-verified date. "Owner: platform team, verified March 2026" tells the reader whether to trust the page before they invest in it. We will come back to why this line saves runbooks from rotting.
A Real Annotated Example
Theory sticks better with an example, so here is a miniature runbook for a classic support incident: a spike in failed logins. Read the structure, not just the content, and notice how each section maps to the anatomy above.
Use this when: failed-login alerts fire, or two or more customers report being locked out within an hour.
Symptoms: customers see "invalid credentials" on correct passwords; auth dashboard shows failed logins climbing.
Diagnosis:
Check whether it is one account or many. One account means a lockout or expired password. Many accounts at once means a system problem, so keep going.
Look at the freshest failures first. This one command shows the most recent failed attempts:
grep -i "failed" /var/log/auth.log | tail -n 20It filters the authentication log for failures and shows the last 20 lines, which is usually where the current incident lives. Note the usernames, source addresses, and timestamps.
Compare against the baseline. A handful of failures per hour is background noise from bots. Hundreds per minute from a few addresses is a brute-force wave. Failures spread across real customer accounts right after a deploy points at your change, not attackers.
The fix: for a brute-force wave, block the source addresses at the firewall and confirm the rate drops. For a post-deploy breakage, roll back first and investigate second. For single locked accounts, verify identity through your normal process, then unlock.
Escalate to: the security on-call if you suspect credential stuffing against real accounts. Attach the log lines, the timeframe, and the affected account count. Page immediately if logins are still failing for real users after the rollback.
Short, ordered, copy-paste ready. That is the bar for every runbook on the shelf.
Where Runbooks Live So They Get Found
A runbook nobody can find in a hurry does not exist. Storage matters as much as content, and the rule is one home, searchable, linked from the places incidents start.
One shared home beats five personal folders. Whether that is your team wiki, a docs folder in the repo, or a dedicated page in your helpdesk tool matters less than everybody knowing the address. Name files for the symptom people search for: login-failures-spike, not auth runbook final v2. People search error text at 2am, so titles should match that vocabulary.
Then link each runbook from the alert or dashboard that fires for its problem. The alert message itself should carry the link: "Failed logins above baseline, see runbook: login-failures-spike." This one habit does more for adoption than any announcement. When the page arrives exactly when it is needed, people use it, trust it, and eventually improve it.
Finally, make the collection browsable by symptom for humans and by service for owners. A single index page with both groupings takes ten minutes to maintain and answers both questions: "customers cannot log in, where do I look" and "I own billing, which pages are mine."
Keeping Them Alive After Writing Them
Most runbooks die of old age, not bad writing. Systems change, commands move, dashboards get renamed, and a year later the checklist confidently misleads people. Prevention is a lightweight loop, not a project.
Tie every runbook to the postmortem habit. After any incident with a runbook, the reviewer asks one question: did the page help, and what needs updating? After any incident without one, the question is: does this earn a runbook? This connects to the write-up habit from the rockstar technical support guide. Ten minutes per incident keeps the whole shelf honest.
Give every page an owner and a heartbeat. The owner does not have to rewrite anything monthly. They only re-verify the page once a quarter: run the commands, click the links, confirm the escalation contacts. That header line with the last-verified date makes staleness visible, and visible staleness gets fixed. Pages without owners rot silently, so unowned pages get an owner or get deleted.
Measure shelf health with two numbers: how often runbooks get opened during incidents, and how often the fix on the page resolves the issue without escalation. Low opens mean people cannot find them. Opens without resolution mean the content drifted. Both point at exact next actions instead of vague "docs need work" guilt.
The Five Runbooks to Write First
Do not try to document everything. Start with the five highest-leverage pages, which cover the incidents that wake people up and the tickets that eat afternoons.
1. Login and access failures. The example above, adapted to your auth stack. Lockouts, password resets, SSO breakage, and the brute-force pattern.
2. Payment failures. Declined cards, webhook delays, double charges, refund steps. Money incidents carry the most customer emotion, so this page earns its keep fast, and calm handling here matters as much as the fix. The difficult-customer guide pairs well with it.
3. Degraded performance. "The app is slow" is the vaguest ticket there is, so this runbook narrows it: which slowness (page loads, imports, reports), which checks in order, and the thresholds that turn "slow" into an incident.
4. Data discrepancies. Missing records, wrong totals, sync lags. Include how to verify ground truth, because half of these tickets are misunderstandings that a verification checklist closes in minutes.
5. Deployment rollback. The one everyone hopes to never use. Exact rollback command, how to verify the previous version is serving, and who must be told. Write it on a calm Tuesday, not during the outage that needs it.
Five pages, each under an hour to write, and your team handles its most common bad days from checklists instead of memory.
Connect It to Your Support Habits
Runbooks close the loop on everything the support series has covered. The troubleshooting workflow tells you how to think. Runbooks remember what you thought. Metrics like reopen rate, from the support metrics guide, tell you which pages are working and which are rotting. De-escalation buys you the calm minutes; the runbook spends them well.
Start this week. Pick last month's most time-consuming ticket type, spend one hour writing its runbook, and link it from the alert or queue view where the next one will appear. Then tell the team it exists. One page, used once, will sell the whole practice better than any proposal. Your future self, awake at 2am with the answer already written down, says thanks.
Related reading
Comments
Comments disabled — configure NEXT_PUBLIC_GISCUS_* env vars.

