PlatformDoc All articles
Engineering Culture

Ghost in the Machine: How to Run a Documentation Audit Before Your Docs Run You Into the Ground

PlatformDoc
Ghost in the Machine: How to Run a Documentation Audit Before Your Docs Run You Into the Ground

Photo: Cameron, Harry F., Public domain, via Wikimedia Commons

Here's a fun thought experiment: if a new engineer joined your team tomorrow with zero context, how long would it take them to be productive using only your existing documentation? Be honest. If the answer involves a lot of Slack DMs, a few apology emails, and at least one confused Zoom call, you've got documentation debt—and it's quietly compounding interest.

The tricky part about documentation debt is that it doesn't announce itself. It doesn't show up in your sprint velocity metrics or your error budgets. It hides in plain sight: inside a README that was accurate in 2021, an internal wiki page that references a service you deprecated eight months ago, or an API guide that still mentions an endpoint you sunset without telling anyone. The technical debt in your codebase gets tracked. The debt in your docs? That usually just gets inherited.

So let's talk about how to actually audit your documentation—systematically, repeatably, and in a way that produces findings you can act on.

Why Most Teams Never Do This

The honest reason most engineering organizations skip documentation audits is the same reason they skip a lot of hygiene work: it doesn't feel urgent until it does. No one files a P1 incident because a setup guide is three major versions out of date. But someone quietly spends four hours debugging a problem that a current doc would've solved in ten minutes. Multiply that across a team of twenty, and you're looking at a real productivity drain that never makes it into a postmortem.

There's also the psychological barrier. Auditing your docs means confronting how far behind they've drifted, and that can feel demoralizing. Engineers already know the docs aren't great. Nobody wants to spend a sprint formally documenting how bad things are.

But here's the reframe: an audit isn't a punishment. It's a map. You can't prioritize fixes without knowing what's broken, and you can't make a business case to leadership without quantifying the problem.

Step One: Take Inventory Before You Judge

Before you start assessing quality, you need to know what you actually have. This sounds obvious, but you'd be surprised how many teams don't have a complete picture of where their documentation lives. There's the official docs site, sure—but there's also the internal Confluence space, the GitHub READMEs, the Notion workspace someone set up two years ago, the Google Docs folder that engineering leadership swears is temporary, and the Slack channel where tribal knowledge goes to age like milk.

Start by cataloging everything. Create a simple spreadsheet (or a doc, appropriately enough) that captures every documentation surface your team uses. Include the platform, the owner if one exists, when it was last updated, and what audience it's intended for. This inventory step alone is usually illuminating. Teams often discover they have five overlapping sources covering the same topic, each with slightly different—and sometimes contradictory—information.

Step Two: Score What You Have

Once you've got an inventory, you need a consistent rubric for evaluating each piece. Keep it simple. A five-dimension scoring model works well for most teams:

Accuracy — Does this reflect how things actually work today? Has the underlying system, API, or process changed since this was written?

Completeness — Does it cover what a reader actually needs to know, or does it leave critical gaps that force people to go find answers elsewhere?

Discoverability — Can someone find this when they need it, or is it buried three levels deep in a navigation structure that hasn't been touched since the Obama administration?

Clarity — Is it written for the intended audience, or is it a brain dump from someone who already knows the answer and forgot what it's like not to?

Freshness — When was this last reviewed, and does it have any mechanism to flag when it might be outdated?

Score each document or section on a simple 1–3 scale for each dimension. You're not looking for perfection here—you're building a heat map of where the real problems are clustered.

Step Three: Map Debt to Business Impact

This is where the audit becomes useful beyond the engineering team. Not all documentation debt is created equal. A stale internal design doc for a legacy service that two people use is annoying. Outdated onboarding documentation for your primary SDK is a business problem.

For each area of significant debt you've identified, ask: who is affected, and what does it cost them? Quantify where you can. If your onboarding docs are incomplete, estimate how many extra hours new hires spend getting up to speed. If your API reference is inaccurate, look at how many support tickets or internal questions trace back to documentation confusion. These numbers don't have to be perfect—they have to be directionally honest.

When you present audit findings to stakeholders, lead with impact, not inventory. Nobody in a leadership meeting cares that you have 47 docs with an accuracy score below 2. They care that new engineers are spending an estimated 12 hours in their first two weeks chasing down answers that should be in the docs. That's the framing that gets resources allocated.

Step Four: Build a Prioritized Fix List

With impact mapped, prioritization becomes straightforward. Fix the high-traffic, high-impact documentation first. That usually means:

For lower-priority items, the right answer isn't always to fix them—sometimes it's to archive or delete them. Outdated documentation that's still publicly accessible is often worse than no documentation, because it actively misleads people. A clean archive with a clear "this is no longer maintained" label beats a zombie doc that still ranks in your internal search.

Making This a Habit, Not a Heroic Effort

A one-time audit is better than nothing, but what you really want is a lightweight, ongoing process. The teams that keep documentation healthy aren't the ones who run a massive cleanup every eighteen months—they're the ones who've built small documentation rituals into their regular workflow. That might look like a quarterly review of the top twenty most-visited docs, a policy that every pull request touching a significant feature includes a doc update, or a simple rotation where one engineer per sprint owns a "docs maintenance" ticket.

The goal isn't perfect documentation. It's documentation that's good enough to be genuinely useful, and a culture that treats keeping it that way as normal engineering work rather than a special project.

You've already got enough technical debt in your codebase. Don't let the docs pile on.

All Articles

Related Articles

Why the Engineers Who Should Be Writing Docs Are the Ones Who Never Do

Why the Engineers Who Should Be Writing Docs Are the Ones Who Never Do

The Slow Bleed: How Technical Documentation Quietly Falls Years Behind Your Codebase

The Slow Bleed: How Technical Documentation Quietly Falls Years Behind Your Codebase

Why Great Open Source Projects Bleed Contributors (And How Better Docs Fix It)

Why Great Open Source Projects Bleed Contributors (And How Better Docs Fix It)