Audit checklists

SEO Audit Checklist Template: Free Excel and Google Sheets Download

Quick answer

The free SEO audit checklist template is an Excel file with 69 checks in eight categories, the fix for each failure and a status column (To do, In progress, Done, N/A). Download it, open it in Excel or upload it to Google Sheets, add impact and owner columns, and sort by priority.

A good SEO audit checklist template does two jobs. It reminds you what to check, so nothing gets skipped on a busy day, and it becomes the working document that tracks what has been fixed. Most free templates do the first job and fail the second: they are long lists with a tick box and no way to say which row matters.

Download the SEO audit checklist template (Excel, 69 checks). It is generated from the same check list Seotific's audit engine uses, so every row is a real, testable check. This page explains how to set it up in Excel or Google Sheets, the columns worth adding, and the formulas that turn it into a ranked fix list.

Why use a template instead of a blank sheet

Templates save time, but the real benefit is consistency. When every audit uses the same 69 rows in the same order, three things become possible.

Comparisons over time. The January audit and the April audit line up row for row, so you can show a client exactly which issues moved from "To do" to "Done".

Delegation. A junior team member can run the checklist and fill in evidence without deciding what to check. You review the result instead of designing the audit.

Nothing forgotten. The checks people skip under time pressure are the boring ones: robots.txt, HTTPS redirects, the sitemap. They are also the ones that cause the worst problems when they fail.

The template is the spreadsheet companion to the SEO audit checklist, which explains each check and the order to fix them in.

Insight: Keep one master copy and duplicate it per audit. The moment you edit the master for one client, the next audit inherits their quirks.

What is in the SEO audit checklist template

The file has one sheet with five columns: Category, Check, What to do when it fails, Status and Notes. The 69 checks are grouped into eight categories:

CategoryChecksExamples
Technical22HTTP status, canonical tag, indexing, robots.txt, redirects, sitemap, JavaScript rendering
On-page22Keyword in title and H1, title length, meta description, heading order, internal links
Content10Content depth, opening answer, publish date, lists and tables, readability
Performance4Core Web Vitals (field and lab), render-blocking files, backlinks
Accessibility4Page language, form labels, button labels, new-tab links
AI search3AI crawler access, Organization details, llms.txt
Conversion2Next step for visitors, forms
Trust2About and contact pages, author and date on articles

The Status column has a drop-down with four values: To do, In progress, Done and N/A. The header row is frozen and filters are on, so you can show only open items or only one category.

How to set up the template in 6 steps

  1. Download the Excel file and save a master copy you never edit.
  2. For each audit, duplicate the master and rename it with the site and date, for example acme-co-seo-audit-2026-10.xlsx.
  3. To use Google Sheets, upload the file to Google Drive and open it with Sheets; the drop-down and filters carry over.
  4. Add three columns after Status: Impact tier, Pages affected and Owner.
  5. Add a Priority column with the scoring formula below, then sort by it, largest first.
  6. Fill in Evidence in the Notes column as you go: the URL, the current value and what it should be.

Fill the template automatically

Seotific runs the automated checks on any URL and exports the results to Excel with the status, impact tier and fix already filled in.

Audit a page free

Copy-paste formulas and rules for the template

These turn the checklist into a ranked list. They work the same in Excel and Google Sheets. Assume Impact tier is in column F, Pages affected in G, and an Effort (hours) column in H.

1. Tier points from the tier name. In column I:

=IFS(F2="Critical",10, F2="High",5, F2="Medium",2.5, F2="CTR only",1.5, F2="Low",0.75, TRUE,0)

2. Priority score. In column J: tier points times pages affected, divided by effort.

=IF(OR(D2="Done",D2="N/A"),0, I2*G2/MAX(H2,0.25))

3. Force blockers to the top. In column K, so critical items always sort first whatever their score:

=IF(F2="Critical",1000000+J2,J2)

4. Count of open items per category (in a summary sheet):

=COUNTIFS(Checklist!A:A,"Technical",Checklist!D:D,"To do")

5. Share of checks done (exclude N/A):

=COUNTIF(D:D,"Done")/(COUNTA(D:D)-1-COUNTIF(D:D,"N/A"))

6. Conditional formatting for Status. Rule: format cells where the text is exactly "To do" in bold; "Done" in grey. Keep it monochrome so the sheet prints clearly.

7. Highlight critical rows. Custom formula rule applied to A2:K70:

=$F2="Critical"

8. Data validation for Impact tier. List: Critical,High,Medium,CTR only,Low,Cosmetic.

Example rows from a real-shaped audit

These show the level of detail that makes a checklist useful to whoever fixes the issue. Each is written the way it should appear in the Notes column.

CheckStatusTierNotes (evidence and fix)
Canonical tagTo doCritical40 product URLs canonicalise to /. Fix in product.liquid: canonical = page URL.
IndexingTo doCritical/pricing has <meta name="robots" content="noindex"> from staging. Remove.
Keyword in titleTo doHigh/running-shoes title is "Shop AllBrand". Change to "Running Shoes for Men and WomenBrand".
JavaScript renderingIn progressHighH1 injected by hero.js; raw HTML has none. Dev ticket WEB-412.
Links to this pageTo doHigh/services/roof-repair has 0 internal links. Link from /services and 2 related posts.
Meta descriptionTo doCTR only14 high-impression pages share one description. Write unique ones for these 14 first.
Core Web Vitals (real users)DoneMediumLCP was 3.4 s on product pages; hero image now preloaded and WebP. Field LCP 2.2 s.
Image alt textTo doMedium38 product images without alt. Use product name plus colour.
HreflangN/ALowSingle-language site. Correct as is.
llms.txtN/ACosmeticNot published. Optional; no search engine uses it.

Two habits make these rows work. Every note names a URL or a file, and every "To do" says exactly what the fixed state looks like. "Improve title" is not a note; the new title is.

Notice too that two rows are marked N/A rather than left as "To do". Marking a check N/A, with a reason, is part of the audit. It tells the reader you looked and decided, and it keeps the completion formula honest, because N/A rows are excluded from the share of checks done.

Excel, Google Sheets or an audit tool?

OptionBest forStrengthWeaknessHow Seotific fits
This template in ExcelOffline work, clients who want a fileFormulas, filters, works anywhereManual data entrySeotific's Excel export uses the same checks
This template in Google SheetsTeams editing togetherLive sharing and commentsFormatting drifts as people editPaste the Seotific export into a tab
Notion or Airtable boardTeams that manage work thereGood for owners and due datesWeak for formulas and bulk dataLink each card to the audit report
An audit tool's own reportRecurring audits on many sitesNo data entry; re-audits show changeLess flexible layoutFills every row automatically and tracks fixes

A common setup is to run the audit in a tool, export to Excel, and keep this template's extra columns (owner, effort, priority) in the same workbook.

Customising the template for clients and platforms

Add a Keyword column for page-level audits. A check like "Keyword in title" only means something next to the keyword the page should rank for.

Hide categories you don't sell. If the engagement excludes accessibility, filter those rows out rather than deleting them, so the master stays complete.

Add platform rows. WordPress sites need rows for plugin conflicts and attachment pages; Shopify needs collection-path duplicates. The WordPress SEO audit checklist and Shopify SEO audit checklist list them. For crawl-level detail, the technical SEO audit checklist has 34 checks you can paste in as extra rows.

Link it to the action plan. Once sorted, the top rows become the action plan. The SEO audit action plan template shows the columns to add for owners, dates and verification.

Frequently asked questions

Is the SEO audit checklist template free?

Yes. The Excel file is free to download with no sign-up, and you can use it for client work. It contains 69 checks, the category, the fix for each failure and a status drop-down.

Can I use the template in Google Sheets?

Yes. Upload the .xlsx file to Google Drive and open it with Google Sheets. The status drop-down, frozen header and filters carry over, and the formulas on this page work in Sheets without changes.

How is this template different from other SEO audit templates?

It is generated from the check list of a working audit engine, so every row is a specific, testable check rather than a vague topic like "improve content". It also marks optional and cosmetic checks clearly, so you don't spend time on items with no ranking effect.

How many checks should an SEO audit template have?

Enough to cover crawling, indexing, on-page relevance, content, speed and structured data without padding. A typical page-level audit has somewhere between 60 and 80 of them. Longer templates usually split one check into several or add items no search engine uses.

Can I add my own logo and send the template to clients?

Yes. Add a cover sheet with your logo and the client's name, and hide or delete the Notes column if it contains internal comments. For a formatted client deliverable, the SEO audit report template guide covers the structure clients respond to best.

Does the template work for a whole site or one page?

Both. For one page, fill each row for that URL. For a whole site, use the Pages affected column to record how many URLs fail each check and put example URLs in the Notes. A crawler or audit tool is the practical way to fill it for sites over a few dozen pages.

Fill the template automatically

Seotific runs the automated checks on any URL and exports the results to Excel with the status, impact tier and fix already filled in.

Audit a page free