Audit example: findings, impact and the fixes that followed.
This is not a fictional client. The examples use the first version of this site and a live project, showing how findings turn into changes you can verify — including the ones still open.
First example: findings on this site
This is not a fictional client. The example uses the first version of this site, from 15 August 2026, and shows how findings become changes you can verify in the current build.
| Priority | Finding | Impact | Solution implemented |
|---|---|---|---|
| P0 | Service pages had no contact details and no call to action. | A reader could not proceed to an enquiry. | Contact, CTA and a process page were added. |
| P0 | The Organization schema pointed to a logo file that did not exist. | An unconnected, unverifiable entity signal. | An SVG logo and a crawlable 512 × 512 px PNG were created. |
| P0 | robots.txt contained Disallow: / while a complete sitemap was published. | Every page was closed to indexing; the entire semantic build was invisible. | Replaced with Allow: / and a sitemap directive. |
| P1 | Methodological claims were presented as Google facts. | A risk to professional credibility. | Claims were qualified and linked to primary sources. |
| P1 | The visual section contained no images at all. | It did not demonstrate the subject it explained. | Two original control images and a test protocol were added. |
| P1 | A dead dark theme remained in the stylesheet, fully overridden by a later one. | Unused code with no visible effect. | The overridden variable block was removed; the structural CSS was kept. |
| P2 | Tables had no caption, no scope and no mobile wrapper. | Poorer accessibility and mobile reading. | Semantic markup and horizontal scrolling inside the table were added. |
Second example: findings on the taxi.co.rs project
The first example shows findings on our own site. This one shows two findings on a project in production, where the cost of the mistake is measurable in positions.
| Priority | Finding | Impact | Solution |
|---|---|---|---|
| P0 | A guide and the national fare page targeted the same query. | The guide sat at position 9.35 with 25 clicks; the fare page at 5.35 with 354. Two pages split the signal for one query. | The guide's unique content was moved into the fare page, the guide was 301 redirected, and internal links and the sitemap were cleaned up. |
| P1 | The national fare page reproduced the tariff table from the Belgrade fare page verbatim. | The hub competed with its own subpage for a city query, on the site's strongest URL. | The block was rewritten to show the structure of the tariffs without the amounts; the figures remain in the comparison table and on the city page. |
Both findings belong to the same category — several URLs competing for one query — but they differ in where the overlap arose. The first is an overlap between two separate documents. The second is an overlap between levels of the hierarchy, where a hub repeats the content of its own subpage. The second type is harder to spot, because neither page looks like a duplicate at first glance.
How the finding surfaced: by comparing the pages report in Search Console against the structure of the site. The guide had a good share of AI answers but a weak position — a combination that almost always means a stronger page for the same query exists on the same domain.
When is a finding complete?
A finding is complete when it contains six elements: the surface, an example, the impact, the priority, the owner of the task and the completion criterion. Without a completion criterion, a finding cannot be closed — only abandoned.
| Element | Content in this case |
|---|---|
| Surface | Two URLs: the price guide and the national fare page |
| Example | Both target the query about the cost of a taxi in Serbia, with nearly identical titles |
| Impact | The guide at position 9.35; 25 clicks against 354 on the fare page |
| Priority | P0 — it affects the commercially most important query |
| Owner | The project owner, plus changes in the city fare page template |
| Completion criterion | The guide returns a 301, no internal link points to the old URL, the URL is removed from the sitemap, and the sitemap is resubmitted |
The completion criterion is the element most often left out, and the only one that separates a finding from an opinion. “Remove the cannibalisation” is not a criterion. “No internal link points to the old URL” is, because it can be verified with a single command.
How is priority decided?
| Level | Criterion | Example from these two audits |
|---|---|---|
| P0 | Blocks indexing or conversion, or splits signal on the commercially most important query | Two URLs for one price query; robots.txt blocking the whole site |
| P1 | Weakens credibility or dilutes signal, but does not block the task | A hub reproducing a subpage's table; methodological claims without qualification |
| P2 | Degrades accessibility or maintainability with no immediate loss | Tables without caption and scope |
Priority follows the consequence, not the difficulty of the change. A finding resolved in five minutes can be P0; one that takes a week can be P2.
What is still open
An audit example that only listed solved problems would be a portfolio, not an audit. Two items from the list above remain unresolved at the time of writing, and they are recorded here for the same reason the solved ones are.
- No analytics on this site. Deliberate until the measurement tool is chosen, but it means there is currently no baseline period for this site itself.
- No reviews, therefore no
aggregateRating. Adding one without real reviews would breach the same guideline this site tells others to follow.
Frequently asked questions
What separates a finding from an opinion?
The completion criterion. “Remove the cannibalisation” is an opinion because it cannot be verified. “No internal link points to the old URL” is a finding because a single command checks it.
Is priority set by how hard the change is?
No, by the consequence. A finding resolved in five minutes can be P0, and one that takes a week can be P2.
Must an audit always contain Search Console data?
Not always, but a finding that claims a loss should support it with a measurement. Without a number, a claim about impact remains an estimate and should be labelled as one.
Why publish unresolved findings?
Because an audit that lists only solved problems is a portfolio. The open items show the same standard being applied when it is inconvenient.