The Complete SEO Audit Checklist
A 50-point checklist for auditing any website's SEO, organized from indexability through to measurement. Run it against your own site in about ninety minutes — no tool required beyond Search Console.
How to use this checklist
Tick each item yes or no. Anything marked no is a finding; anything you cannot verify is a question to answer before you conclude anything. The value is not in the count of failures — it is in the ordered list of what to fix first.
Phases are ordered by dependency, not by difficulty. Indexability comes first because a page that cannot be indexed cannot rank regardless of everything else you do to it. Performance comes late because a fast site with a blocked index still gets no traffic.
Phase 1 — indexability (the checks that decide everything)
If a page is not in the index, nothing else matters. These nine checks account for the large majority of organic traffic problems.
- Is the site indexed at all? Search Console → Pages. Compare indexed pages against the pages you expect to rank. A large shortfall is the single most important number on this list.
- Are specific pages excluded, and why? Search Console → Pages → Excluded. The reason given tells you exactly what to fix. "Discovered – currently not indexed" means crawled but not judged worth indexing, usually a thin-content or duplicate signal.
- Is robots.txt blocking anything you need? Check Search Console → robots.txt tester. Look for accidental blocks on CSS, JS or image directories, which cause rendering failures.
- Does any page have a noindex tag? Search in the rendered HTML. A stray noindex on a money page is invisible until you look at the source.
- Are canonical tags correct? Every indexable page should have a self-referencing canonical. Wrong canonicals are a very common cause of pages being dropped from the index in favor of a duplicate.
- Is the site served over HTTPS with one canonical host? Check that http://, https:// and any www/non-www variant all resolve to the same URL. Split access to Google wastes crawl budget and splits signals.
- Does the sitemap list only canonical, indexable, 200-status URLs? Submit it in Search Console. A sitemap containing redirects, 404s or noindexed URLs is worse than no sitemap.
- Are there blocked resources in robots.txt that break rendering? Blocking /css/ or /js/ prevents the crawler seeing the page as users do.
- Is the site reachable without JavaScript? View source and check for primary content, navigation and internal links. If the content only exists after script execution, it is at risk.
Phase 2 — on-page and keywords
These checks assume indexability is fine. They are about relevance and clarity of signal to the search engine.
- Does every page target a distinct intent? Check whether any two pages compete for the same query. Duplicate intent across pages splits signal and confuses the ranking.
- Is the title tag unique and descriptive? Under about 60 characters, front-loaded with the topic, written for a human not a crawler.
- Is the meta description written to earn the click? Unique per page. It does not affect ranking directly, but it affects click-through, which is what ranking is for.
- Does the H1 match search intent? One H1 per page, describing what the page is actually about.
- Is there a logical heading hierarchy? H1 → H2 → H3, no skipped levels. This matters for accessibility as much as for parsing.
- Is the primary content visible without interaction? No content hidden behind tabs or accordions that only appears on click.
- Are internal links descriptive and pointing where you intend? Anchor text should tell the reader where they land. "Click here" wastes a ranking signal.
- Is the URL structure clean and permanent? Lowercase, hyphens, no unnecessary parameters. Changing a URL means updating internal links and adding a redirect.
- Are images optimized? Descriptive alt text, compressed file size, explicit width and height to avoid layout shift.
Phase 3 — content quality
Content quality is the hardest thing to audit objectively. These checks are proxies for the things that correlate with performing well.
- Does the page answer the query completely? Compare against what currently ranks. Is anything a reader would still be missing afterwards?
- Is there information here a competitor does not have? Original data, a worked example, first-hand experience. If not, why would Google prefer your version?
- Are claims sourced? Statistics with a named source and date. This is both a trust signal and the thing that makes content citable by AI.
- Is there a named author with real credentials? Relevant on YMYL and expert topics, good practice everywhere.
- Is the content current? Statistics, features and screenshots should reflect the present, not 2024.
- Does it answer Related Searches? Google suggests these. If your page ignores them, it is incomplete against the query.
- Is each section self-contained? A reader landing on one paragraph from a search result should get a complete answer from it alone. This also determines whether AI systems can cite you.
Phase 4 — performance and Core Web Vitals
Use Search Console → Core Web Vitals for the real-user data. PageSpeed Insights for the diagnosis.
| Metric | Good threshold | Check in |
|---|---|---|
| LCP — Largest Contentful Paint | ≤ 2.5 seconds | Search Console; PageSpeed Insights |
| INP — Interaction to Next Paint | ≤ 200 milliseconds | Search Console; requires field data |
| CLS — Cumulative Layout Shift | ≤ 0.1 | Search Console; PageSpeed Insights |
- Are field metrics passing for the majority of real users? The 75th percentile over 28 days, not a lab score on your own machine.
- Is LCP under 2.5s on mobile? Usually caused by a slow server response or an oversized hero image that is not preloaded.
- Is INP under 200ms? Usually long JavaScript tasks or oversized third-party scripts. INP measures the full latency of every interaction, so it catches jank that FID missed.
- Is CLS under 0.1? Usually images or embeds without explicit dimensions, or content injected above existing content.
- Does the server respond quickly? Time to First Byte over 600ms on mobile is a problem in its own right.
Phase 5 — structured data and AI visibility
- Is Organization schema in place? On every page, in one block, referencing your real social profiles via sameAs.
- Is the page type marked up correctly? Article, Product, Service or LocalBusiness as appropriate — not BlogPosting on a service page.
- Is FAQPage markup present where FAQs exist? Must match visible content exactly. Markup for content not on the page is a violation.
- Do you have a self-referencing canonical? On every indexable page.
- Are ratings and prices in markup current? Stale structured data generates errors that suppress rich results.
- Is the brand described consistently everywhere online? Inconsist-ent name, address or description across sources creates entity ambiguity for both search and AI retrieval.
- Can you answer four questions about your category? Ask AI assistants the questions your customers ask and note who gets cited. This takes ten minutes and is frequently the most revealing check on this list.
Phase 6 — measurement and conversion
You cannot improve what you do not measure, and most sites fail this phase quietly.
- Do conversions fire exactly once per session? Check in GA4 DebugView. Double-firing inflates everything downstream.
- Are offline conversions imported? Phone calls, booked jobs, closed deals. If your main revenue path is a phone call and it is not tracked, your ROI figures are fiction.
- Is a clear primary action on each page? Three competing calls to action convert worse than one.
- Is the form asking only for what you need? Every unnecessary field measurably reduces completions.
- Does the landing page match the ad? Someone clicked a promise. A mismatch wastes premium traffic.
- Is consent mode v2 configured correctly? Required for EEA traffic. Tag behavior must not assume consent was granted.
- Do you know your break-even acquisition cost? Derived from margin, not from a benchmark. This number governs every paid decision.
- Is speed-to-lead measured? For service businesses the highest-leverage conversion variable, and usually untracked.
Frequently asked questions
How long does a full SEO audit take?
Do I need paid tools to run this audit?
What is the single most important check on this list?
Should I run this on a competitor's site too?
How often should I run the audit again?
Should I fix everything on the list before doing anything else?
Does a low score on this checklist mean the site is bad?
Who should carry out the audit?
Keep reading
Want this applied to your business?
Stop guessing what to prioritize. Get a straight answer on where your marketing is leaking money, and what to fix first.
Book a free 30-minute audit