Why a list of forty findings is not a diagnosis
An agency owner sent me an audit last month. Sixty-two pages, 340 findings, colour-coded by severity. It had taken someone four days to produce.
I asked what they were going to do first. They didn’t know. Neither did the client.
That is the whole problem, and it is not a quality problem. The audit was competent. Every finding in it was real. It still changed nothing, because it never answered the only question that matters.
An inventory is not an argument
Crawlers are very good at telling you what is imperfect. Point one at any site over a few hundred pages and it will find hundreds of things: missing meta descriptions, thin content, redirect chains, images without alt text, headings out of order.
All true. Almost all irrelevant.
The trouble is that a list implies every item deserves attention, and severity labels make it worse — they sort by how bad the tool thinks each thing is in isolation, not by how much any of it is costing this particular business right now.
So the client fixes the criticals. Three months later nothing has moved, and the agency has to explain why.
One driver is usually doing the damage
Any business metric is a product of a few multiplicative drivers. Demo requests are sessions multiplied by a conversion rate. Conversions are clicks multiplied by a rate. Revenue is customers multiplied by value.
Write the equation out and something useful happens: you can compare each driver against what it should be, and one of them is almost always dramatically further from its benchmark than the others.
That distance, weighted by how reachable it is, is the constraint. Not the scariest finding. Not the one at the top of the crawler’s list.
I ran a diagnostic recently on a specialist B2B supplier with 176 blog posts and a 26-page glossary. Excellent content, competently written, 1,237 words a post on average. The obvious read was “they need more traffic.”
They didn’t. In an 18-post sample, the average post carried 5.5 in-content links to other blog posts and 0.6 to any service page. Seven of the eighteen carried none at all.
The content was fine. The routing was broken. Every post was doing its job and then depositing the reader nowhere.
Effort spent off the constraint returns approximately nothing
This is the part that costs money. If eleven of your twelve drivers are near benchmark, work on those eleven produces almost no movement — however well executed, however many hours it takes.
That is why “we did everything the audit said and nothing happened” is a sentence agencies hear constantly. It is usually literally true. The work was done. It was just done on drivers that were already fine.
And it is very hard to admit six months later, which is why it keeps happening.
The asymmetry nobody mentions
Naming a constraint is a claim. You can be wrong. Name the wrong bottleneck and you have spent a quarter on the wrong thing, and it is your fault.
Producing a list makes no claim at all. It cannot be wrong, because it never said which thing mattered. Nobody is ever held accountable for a thorough audit that changed nothing.
That asymmetry is exactly why the list remains the default. It is the safer deliverable for the person producing it — and the more expensive one for the person receiving it.
What to do instead
Before recommending anything, answer one question in writing: what is the single thing stopping this number from moving?
If you cannot answer it from the data you have, say so, and say what you would need. That is a more useful report than forty findings, and a considerably harder one to write.
Then fix that. Then find the next one.