SEO audit report template that gets fixes shipped
·4 min read
An SEO audit report template is a fixed outline for turning audit findings into work someone will actually do. A good one has six parts. They are a one-paragraph summary, a few scores, a prioritized issue table with impact, effort and an owner for each row, evidence for every issue, next steps with dates, and a recheck that measures what got fixed. Copy the Markdown template below, paste in your findings, and cut anything the reader cannot act on.
How to find the issues is a different job, covered in our SEO audit guide. This post is about the document.
Why most SEO audit reports get ignored
Most audit reports fail because they are written for the auditor, not the reader. Eighty pages of crawler export prove you were thorough. They also leave a founder or a client with no idea what to do on Monday.
The reader wants three answers. How bad is it? What do we fix first? Who does it? Every section of the template exists to answer one of those, and anything that answers none of them goes in an appendix or nowhere.
Two habits make the biggest difference. Put an owner on every issue, because an issue assigned to "the team" stays open. And end with a date for the recheck, because a report without one is a snapshot that never gets compared with anything.
The SEO audit report template
Copy this into a doc, a ticket or a README. Every value shown is illustrative, for an invented site, and should be replaced with your own.
# SEO audit report for example.com
Date: 2026-10-10 | Auditor: <name> | Pages checked: /, /pricing, /blog/guide
## Summary
Google can crawl the site, but 3 product pages carry a stray noindex tag,
so they cannot appear in search. Fixing that and the missing titles is about
two days of work. Everything else can wait for the next sprint.
## Scores (0 to 100)
| Area | Score | Band |
|---------------|-------|------------|
| SEO readiness | 72 | Needs work |
| AEO readiness | 81 | Needs work |
| AI access | 94 | Good |
| Overall | 79 | Needs work |
## Issues, highest priority first
| # | Issue | Pages | Impact | Effort | Owner | Due |
|---|-------------------------------|-------|--------|--------|--------|--------|
| 1 | noindex on product pages | 3 | High | Low | Dev | Oct 14 |
| 2 | Missing title tags | 2 | High | Low | Content| Oct 14 |
| 3 | Redirect chain on /pricing | 1 | Medium | Low | Dev | Oct 21 |
| 4 | No Organization schema | 1 | Medium | Medium | Dev | Oct 28 |
| 5 | Images without alt text | 12 | Low | Low | Content| Nov 4 |
## Evidence
1. /product/a returns <meta name="robots" content="noindex">.
Search Console URL Inspection says "Excluded by noindex tag".
2. ...
## Next steps
- Dev ships 1 and 3 this week. Content ships 2 and 5.
- Out of scope: backlinks, rankings, pages not listed above.
## Recheck
Date: 2026-10-28. Same URLs, same checks.
Report the issues fixed, the score change and new issues.How to fill in each section
Each section has one job, and the first sentence of each should do that job.
Summary. Write it last, in plain words, for someone who reads nothing else. Name the worst problem, what it costs, and how long the fix takes. No scores here and no jargon.
Scores. Use few and keep them stable. A score only means something next to the last one, so pick a method you can repeat. Bands help non-SEO readers more than the numbers do. We use the PageSpeed Insights bands, 90 and up good, 50 to 89 needs work, below 50 poor, because many readers already know them.
Issues. Sort by priority, and set priority from impact and effort together. A high-impact, low-effort fix like a stray noindex goes first even if it looks dull. Group repeats into one row with a page count instead of listing the same missing alt text twelve times.
Evidence. Give each issue a URL and the exact thing you saw, such as the tag, header or status code. A developer should be able to reproduce it in a minute. Google's URL Inspection tool is good evidence for indexing issues because the reader can open it themselves. Link a deeper explainer when it helps, like our post on redirect chains.
Next steps. List who does what by when, and state what the audit did not cover. Saying "we did not look at backlinks" up front saves an argument later.
Scoring impact, effort and owner
Keep each column to three values. More levels invite debate about the label instead of the fix.
| Value | Impact means | Effort means |
|---|---|---|
| High | Stops pages being crawled, indexed or understood | A project, or needs a release |
| Medium | Weakens how pages rank or show in results | A few hours for one person |
| Low | Polish, or affects few pages | Minutes, often a CMS edit |
The owner is a person or a role, never "SEO". Most fixes belong to a developer or whoever edits content, and the report should say which. If you are unsure what counts as technical, our technical SEO checklist sorts the common issues.
The recheck closes the report
The recheck is the section that proves the audit was worth paying for. Run the same checks on the same URLs after the fixes ship, then report the share of issues fixed, the score change and any new issues. Keep both reports, so the next audit starts from a baseline.
Generate the audit data for your own report
Our website check produces most of what the template needs. You enter your URL and up to 2 more pages on the same site, then pick checks such as crawling and indexing, on-page SEO, structured data and content. It returns one fix list sorted into high, medium and low priority, plus 0 to 100 scores for SEO readiness, AEO readiness and AI access and an overall score. While any high priority fix is open, scores are capped at 89. The default set costs 67 credits for one page plus 47 for each extra page, and the price shows before you run it.
Run it again on the same URL after you publish and it compares itself with the last run, reporting the percent of issues fixed, the score change and new issues. That is your recheck section. It does not read Search Console or check rankings and backlinks, and it checks only the pages you pick. A quick home page preview costs no credits and takes about 20 seconds.