Open any audit tool on a catalogue site and you get a number in the hundreds. That number measures how many pages the site has more than it measures how much is wrong, and handing it to a client or a developer transfers the sorting work to somebody less equipped to do it.
400 product pages missing structured data is one theme file. 200 blog posts with the same meta description is one component with an unfilled variable. The unit of work is the template.
How to group
- Derive a pattern from each URLSplit the path into segments and template the ones that vary across the crawl. /blog/how-to-x and /blog/why-y become /blog/*. A segment is variable when it takes many values under the same prefix, or when it looks like an id.
- Group by issue type and pattern togetherMissing descriptions on /blog/* and missing descriptions on /product/* are two different decisions in two different components, and merging them produces a ticket nobody can action.
- Compute coverageAffected pages under the pattern, divided by all pages under it. 400 of 400 is a template. 6 of 14 is something else.
- Let coverage set your confidence, and your grammarHigh coverage is stated: 'the blog template omits the description'. Low coverage is a question: 'six of fourteen pages under /docs/* are missing it — is there a second template here?' A confidently wrong cause costs more than no cause.
- Rank by impact, not by countSeverity, multiplied by the demand those pages actually have, multiplied by how much of the pattern is affected. A critical issue on pages with no impressions ranks below a warning on the money pages.
One trap worth knowing
A URL cannot be patterned accurately on its own. Whether a segment is variable depends on what its siblings look like, and you only know that once the whole crawl is in. Patterning as you go and never revisiting it produces stable-looking groups that are wrong at the edges.
The practical form is two passes: a rough guess per URL while crawling, then a pass over the complete set before grouping runs.
What about the genuinely one-off problems?
They are causes whose pattern is a single literal URL. They are valid and common, and grouping should not hide them.
Does this work on a small site?
It has less to do. On a thirty-page site the findings are already a short list, and the value of the method shows up somewhere north of a few hundred pages.
Try it on your own site, free
No card, and the free tier does not expire — the first verdict takes about six weeks to arrive.