Skip to content

SEO audit report template

An SEO audit report lists what stops a site from doing well in Google, how much each problem matters, and who fixes it by when. This template has 18 checks in 6 areas, a findings table that ranks the fixes, and a filled-in example. Free to copy into a doc.

Copies as Markdown. Notion and most Markdown editors paste it as headings, a checklist and a table. In Google Docs, turn on Markdown in Tools, Preferences, then right-click and choose Paste from Markdown.

What is an SEO audit report?

An SEO audit report lists what stops a site from doing well in Google search, how much each problem matters, and who fixes it by when. It covers indexing, crawl errors, page speed, titles and links, content, and penalties, and it ends with a ranked list of fixes.

An audit is a one-off check. To track search results month by month, use the SEO report template instead; the audit's fixes become the work done in those reports.

To go through your pages one by one and decide which to keep, update, merge, redirect or remove, use the content audit template.

The 18 checks

Each check with where to look and what counts as a problem. Most need only Google Search Console.

Indexing

Pages you want in Google are indexed
Where: Search Console, Pages (the Page indexing report)
Problem if: A page that earns or should earn visits is listed under Why pages aren't indexed.
Nothing important is blocked
Where: Your robots.txt file, and URL Inspection for one page
Problem if: A page you want in Google is disallowed in robots.txt or has a noindex tag. robots.txt only stops crawling; to keep a page out of Google, use noindex.
The sitemap is submitted and read
Where: Search Console, Sitemaps
Problem if: The status is not Success, or the sitemap lists URLs that redirect, return 404 or carry noindex.
Google picks the canonical you chose
Where: URL Inspection: user-declared and Google-selected canonical
Problem if: Google chose a different URL than yours for a page you want in search.

Crawling and errors

No broken pages
Where: Page indexing report (Not found (404), Soft 404), or a site crawler
Problem if: Internal links point to a 404, or a real page is reported as a soft 404 because it looks empty or like an error.
Internal links go straight to the final URL
Where: A site crawler, or open the link and compare the address
Problem if: Internal links pass through a redirect, or a redirect leads to another redirect. Google follows up to 10 hops, but each one is a step that can break.
Every page loads on HTTPS
Where: Open the http:// and the www or non-www address in a browser
Problem if: A page loads without HTTPS, or the other versions of the address don't redirect to one.

Page experience

Core Web Vitals pass
Where: Search Console, Core Web Vitals (data from real Chrome users)
Problem if: URL groups rated Poor or Need improvement: LCP over 2.5 s, INP over 200 ms or CLS over 0.1. Small sites may show Not enough data.
Top pages work on a phone
Where: Open the ten pages with the most clicks on a phone
Problem if: Text you have to zoom to read, content wider than the screen, or buttons too close to tap.

On-page

Each page has its own descriptive title
Where: A site crawler or the page source; the SERP preview tool for length
Problem if: Missing titles, the same title on several pages, or titles stuffed with repeated keywords.
Important pages have their own meta description
Where: A site crawler or the page source
Problem if: The same description on many pages. Google doesn't always show it, but a page-specific one helps when it does.
One clear H1 and headings in order
Where: The heading checker
Problem if: No H1, several H1s, or skipped levels. Clear headings help readers and screen reader users find their way around the page.
Images that carry meaning have alt text
Where: A site crawler or the page source
Problem if: Missing alt text on images that show something, or alt text that is a list of keywords.

Content

One page per search
Where: The keyword cannibalization checker, on a Search Console export
Problem if: Two of your pages split the clicks for the same query and neither ranks well.
No outdated or empty pages
Where: Search Console, Performance, Pages, over the last 12 months
Problem if: Pages with old prices, dates or facts, or pages with no impressions in a year that answer nothing people search for.

Structured data and penalties

Structured data has no errors
Where: Google's Rich Results Test, and the rich result reports in Search Console
Problem if: Errors on a markup type you use. Warnings are optional fields and can wait.
No manual actions or security issues
Where: Search Console, Security & Manual Actions
Problem if: Any listed action. Pages with a manual action can rank lower or drop out of Google until you fix them and ask for a review.

Free tools for some of the checks: the heading checker for H1s and heading order, the SERP preview tool for title and description length, the keyword cannibalization checker for pages that split one search, and the schema markup generator to rebuild markup with errors. Pages not indexed? What Discovered and Crawled - currently not indexed mean. Soft 404 on a real page? How to fix a Soft 404. Google chose another canonical? When to fix Duplicate without user-selected canonical.

How to rank the findings

Give each problem an impact and an effort, then sort by impact and, inside each level, by effort. High-impact fixes that take minutes go first.

High impact
Keeps a page that earns or should earn visits out of Google, or affects the whole site (a manual action, a noindex left on).
Medium impact
Costs clicks or rankings on pages that matter: slow pages, two pages splitting one search, broken internal links.
Low impact
Small or limited to pages few people visit: duplicate descriptions on old posts, missing alt text on a few photos in old posts.

The report, section by section

Each section with what goes in it, and the example filled in for a garden-care blog.

  1. Summary

    Three sentences: how healthy the site is, the problems to fix first and why, and when you will check again. Many readers stop here.

    Example

    We checked 64 URLs on October 20. Two problems keep pages out of Google: the lawn care calendar still has a noindex tag from the September redesign, and the new aeration post is not indexed yet. Both take minutes to fix, so they go first; the other five follow over the next six weeks.

  2. Scope

    What you checked and with what: the site or section, how many URLs, the date, the Search Console period, and the tools.

    Example

    • Site: the whole blog, 64 URLs in the sitemap
    • Date: October 20; Search Console data for September 21 to October 18
    • Tools: Search Console, a site crawler, the Rich Results Test, the heading checker, the keyword cannibalization checker
  3. Checks

    Every check with Pass, Problem or Not checked. A pass is worth writing down too: next time you know it was fine on this date.

    Example

    • Pass: HTTPS, Google picks our canonicals, phone layout, titles, headings, structured data, no manual actions or security issues, no outdated pages found
    • Problem: indexed pages, blocked pages, sitemap (read, but it lists the noindexed calendar), internal links, broken links, redirects (3 internal links, fixed with the broken links), Core Web Vitals, meta descriptions, alt text, one page per search
  4. Findings and fixes

    One row per problem: what is wrong, which pages, impact, effort, the fix, who does it and by when. Sort by impact, then by effort, so quick high-impact fixes come first.

    Example

    See the table below.

  5. What to check again, and when

    How you will know each fix worked, and the date to look. Indexing changes can take days to weeks to show in Search Console.

    Example

    • November 3: /lawn-care-calendar and /aerating-a-lawn show as indexed in URL Inspection
    • December 1: mobile LCP for the buying guides is Good in the Core Web Vitals report (it uses 28 days of data)
    • December 15: "best lawn mower for a small yard" shows one page in Search Console, not two
Example findings: a garden-care blog, audited October 20 (made-up numbers)
FindingPagesImpactEffortFixOwnerDue
noindex tag left on the lawn care calendar since the September redesign/lawn-care-calendarHighLowRemove the noindex tag, then request indexing in URL InspectionSamOctober 22
New post is Discovered - currently not indexed; only the sitemap links to it/aerating-a-lawnHighLowLink to it from /fall-lawn-care-guide and /overseeding-a-lawnSamOctober 24
12 internal links point to old URLs that now return 4049 postsMediumLowChange each link to the current URLPriyaOctober 31
Mobile LCP is Poor (4.6 s) for the buying guides; the top image is 1.9 MB/best-lawn-mowers and 5 similar pagesMediumLowCompress the top images and give them a width and heightSamOctober 31
Two pages split "best lawn mower for a small yard" (positions 18 and 23)/best-lawn-mowers, /small-yard-mowersMediumMediumMerge /small-yard-mowers into /best-lawn-mowers as a section and redirect itPriyaNovember 14
The same meta description on 14 posts14 posts in /plants/LowMediumWrite descriptions for the 5 with the most impressions firstPriyaNovember 30
31 plant photos have no alt text/plants/ postsLowMediumDescribe what each photo shows, in a few wordsPriyaNovember 30

After the fixes, Serpwright reads your Search Console numbers every week, suggests titles for the searches your site shows up for but has no page for, and writes the ones you approve.

Start free trial

3 days free, no card.

After the audit: fill the gaps it finds

Once the fixes are in, the next gains usually come from searches your site appears for with no page that answers them. Serpwright turns those into articles.

  • It syncs Search Console once a week, or when you press Sync now.
  • It lists the searches your site shows up for without a page, as titles you approve, and writes the articles.
  • Drafts wait for your review before publishing unless you turn on the drip or auto-publish. Auto-approve takes only titles above a confidence threshold you set.

3 days free, no card.

Questions

What should an SEO audit report include?
A short summary, the scope (what you checked, when and with which tools), the result of every check, a findings table with the pages affected, impact, effort, fix, owner and due date for each problem, and the dates you will check the fixes. A list of problems with no order and no owner rarely gets fixed.
What is the difference between an SEO audit and an SEO report?
An audit is a one-off check of a site's technical and content problems that ends with a ranked list of fixes. A report repeats every month and tracks what search brought the site and what changed. The audit's fixes usually become the work done in the next reports.
How often should you run an SEO audit?
Run one before and after a redesign or a move to new URLs, when clicks drop and you can't see why, and when you take over a site. Between those, the monthly report and Search Console's email alerts catch new indexing issues, manual actions and security problems.
Which free tools do you need?
Google Search Console covers most checks: Page indexing, Sitemaps, URL Inspection, Core Web Vitals, Links and Manual actions. Add Google's Rich Results Test for structured data and a site crawler for titles, descriptions, alt text and broken links. Our free heading checker, SERP preview and keyword cannibalization checker cover three more checks.
How do you decide which problems to fix first?
Rank each finding by impact, then by effort. High impact means it keeps a page that matters out of Google or affects the whole site. Fix the high-impact, low-effort rows first, often the same day, and plan the rest by due date.
Can I use the template in Google Docs or Notion?
Yes. It copies as Markdown. Notion and most Markdown editors paste it as headings, a checklist and a table. In Google Docs, turn on Markdown in Tools, Preferences, then right-click and choose Paste from Markdown.
Do you keep anything when I copy the template?
No. Copying happens in your browser. We count one anonymous use per visit, with whether you copied the template or the example, and nothing you type or paste.