Skip to content
Searchpedia SEO field notes Callum Bennett Callum

Measurement

SEO Audit Template

I have stopped using a generic SEO audit template because it missed too many site-specific issues. A well-designed template saves time, but only if you customise it for your site.

Beginner5 min readUpdated 2026-07-27Notes by Callum Bennett

The short verdict

  • Start with a spreadsheet that has columns for issue, severity, owner, and status so you never lose track of what you found.
  • Run a crawl first to populate the technical checks automatically rather than typing them manually.
  • Add an estimated impact column (e.g., traffic, conversions) to prioritise fixes that actually move the needle.
  • Update the template every six months to remove outdated checks and add new ones based on Google changes.
  • Use the template as a starting point, but always supplement it with manual review of pages that matter most.

What it's good at

I used to believe a good SEO audit template was all you needed to run a thorough audit. I was wrong — but I also learned that a template is still the best tool for standardising the process. Without one, I would forget checks, especially when I was juggling multiple sites. My current template is a spreadsheet with 30 rows covering technical, on-page, content, and link factors. Each row has columns for the issue, severity (high, medium, low), the page or pattern, the assigned owner, current status, and a notes field. That structure means I can hand the audit to a junior colleague and be confident they will cover the same ground as me.

Prioritisation is another big win. I assign an impact score out of 10 to each issue based on estimated traffic and conversion uplift. Then I sort by that score and tackle the top five first. For example, on a client site I audited last month, fixing a broken pagination link was high impact (estimated 15% of organic traffic affected) while missing alt text on a few product images was low. The template forced me to make that call explicit rather than burying it in a paragraph.

It also helps with reporting. I can export the sheet directly into a client-facing [SEO report](/seo-report/) and show exactly what was found, what is being done, and by when. That transparency has saved me hours of explanation. I will admit, though, that the template is only as good as the checks I put in it. I used to include a row for "keyword density" — a metric that is useless now. I have to review and update the template every quarter to avoid propagating bad advice.

What it's awkward for

The moment a site grows beyond a few hundred pages, a flat template becomes awkward. An e-commerce site with 10,000 product pages cannot be audited row by row. You would spend weeks filling in cells. The template works for a sample — say, the top 20 pages by traffic — but the rest of the site needs a different approach. I learned this the hard way when I tried to audit a 5,000-page site with a single spreadsheet. I ended up with a mess of duplicate rows and no clear picture.

Templates are also bad at context. A missing meta description on a product page might be a minor issue, but on a category page that ranks for a high-volume term it is critical. The template treats both the same unless you manually add a column for page importance. I now add a column called "page type" (homepage, category, product, article) and weight the severity accordingly. But that is an extra step that many templates skip.

Another awkwardness: templates become stale. The checks I included two years ago included things like "check for mobile-friendliness" — now that is a given. Today I need checks for Core Web Vitals, AI-generated content, and E-E-A-T signals. If I do not update the template, I miss the most relevant issues. I also find that templates encourage a checklist mentality. People tick boxes without thinking about whether the check actually applies. I once saw an audit that flagged a missing H1 on a page that intentionally had no H1 because it was a video landing page. The template had no column for "intentional design choice". So I rely on the template as a scaffold, not a script.

Finally, templates are terrible for surfacing big-picture patterns. A pattern of thin content across 200 pages does not show up as a single row; it requires a cross-cut analysis. For that, I need a custom dashboard or a [SEO analysis](/seo-analysis/) tool that can aggregate and score. I still use a template for the detailed work, but I run a separate [SEO monitoring](/seo-monitoring/) process to catch the system-level issues.

Alternatives I'd consider

If I were building an audit process from scratch today, I would not start with a spreadsheet. I would build a live dashboard in Looker Studio that pulls data from Google Search Console, a crawl tool, and a backlink database. That gives me a real-time view of issues across the entire site, with filters by page type, status, and impact. I have done this for two clients and it works well for ongoing monitoring — you see issues as they appear, not just during a quarterly audit. But the upfront setup is a few hours of configuration, and it does not replace the manual review of content quality.

For a one-off audit, I still reach for a template, but I customise it for each site. I have a base template in Notion with phases: crawl, index, on-page, content, links, competitor. Each phase has a set of checks and a place to paste findings. Notion allows me to assign tasks and track progress, which the spreadsheet lacks. I would pick Notion over a spreadsheet for a team audit because collaboration is easier. But for a solo audit, I stick with the spreadsheet because it is faster to export and share.

Another alternative I considered is a paid tool like Screaming Frog with a custom audit report. That tool can generate a list of issues with severity, but it does not include my own qualitative notes. I have to combine the crawl output with my template. So the template is still the bridge between automated data and human judgement. I would say: if you audit more than 500 pages regularly, invest in a [SEO dashboard](/seo-dashboard/) and a [SEO performance](/seo-performance/) tracker. If you audit a few pages a month, a template will do. I use both, and I have a rule: if the template has more than 50 rows, I am overcomplicating it — pare it back to the 20 checks that actually matter.

Next step

Quick answers

Should I use a free SEO audit template or buy a paid tool?

A free template is fine for a few sites. Paid tools bring automation and scale, but they cost. I use a free template for small audits and a paid scraper for large sites. The template helps me think, while the tool helps me collect data. Start with a free template and upgrade only when you need to audit hundreds of pages.

How often should I update my SEO audit template?

Every six months, at least. Google changes its guidelines, and new issues like Core Web Vitals or AI content emerge. I review my template each quarter and remove checks that are no longer relevant. For example, I dropped the 'keyword density' check two years ago. Keep your template lean.

Can I use an SEO audit template for a single-page site?

Yes, but you will only use a few rows. A single-page site has limited technical issues. Focus on on-page content, structured data, and performance. Most templates are built for multi-page sites, so you should strip out the crawl and indexing checks. I have a mini-template for landing pages.

Sources

Primary documentation is linked directly. Anything commercial is marked nofollow.

  • Google Search Central — Most authoritative source for indexing, crawling, and technical checks that inform the template's technical section.
  • Google Search Console Help — Practical guidance for checks tied to pages, indexing, and crawl errors that I include in the template.
  • Moz SEO Audit Checklist — A well-known checklist that inspired the structure of my first template, especially the prioritisation fields.
  • Ahrefs SEO Audit Template — A concise, task-oriented template that shows how to organise findings by issue, priority, and owner.

Notes from Callum Bennett.