The SEO Audit Checklist I Run on Every Site

9 min read

Topics: SEO

Brass magnifying glass on a clipboard grid of checkboxes, the cover image for The SEO Audit Checklist I Run on Every Site
On this page

The short answer

A useful SEO audit answers five questions in order: can search engines reach your pages, can they render them, do the pages match search intent, does anything about the site suppress trust, and can AI engines extract and cite you. This checklist covers all five with 52 checks, each section labeled Critical, Important, or Refinement.

In 2004, an SEO audit was a weekend with Excel and a head full of guesses. I have run hundreds since, and the most expensive auditing lesson I ever learned was on my own site. A client-side script injected a noindex tag that only existed in the rendered DOM. The server HTML looked clean. Google saw the rendered version. The site was de-indexed before I found it. Half of this checklist exists because of failures like that one: the kind your eyes cannot catch but a process will.

Do not treat these as 52 boxes of equal weight. Critical items can suppress an entire site on their own. Important items cost you rankings page by page. Refinement items compound over quarters. Work top to bottom.

Critical

Section 1: Crawling and indexing

1. Google Search Console coverage. Compare indexed pages against what you expect to be indexed, and investigate every cluster under Crawled, currently not indexed. Large gaps here make everything else on this list irrelevant.

2. robots.txt review. Read it line by line. Look for staging rules that shipped to production and disallows on money paths. Two minutes, occasionally saves a business.

3. noindex sweep. Check both the raw server HTML and the rendered DOM for noindex directives. Mine only existed after JavaScript ran, which is exactly why you check both.

4. XML sitemap integrity. Only canonical, indexable, 200-status URLs belong in it, and lastmod should tell the truth. A sitemap full of redirects erodes crawler trust.

5. Canonical tags. Server-rendered, absolute, and self-referencing on unique pages. Pick one URL convention, with or without trailing slash, and enforce it with 301s.

6. Redirect health. No chains beyond one hop, no 302s doing permanent work, no loops. Every hop leaks equity and crawl budget.

7. HTTP status audit. Crawl the full site. Every internal link should resolve 200. Fix or remove everything else.

8. Duplicate URL surface. Parameters, http versus https, www versus non-www, and trailing slash variants should all consolidate to one canonical version.

Critical

Section 2: Rendering and technical foundations

9. Server-rendered head tags. Title, meta description, canonical, and schema must exist in the raw HTML response. Test with curl, not your browser. Browsers are too forgiving to audit with.

10. Raw versus rendered diff. Compare the curl output against the rendered DOM for critical content and directives. Anything that differs is a risk surface.

11. Core content without JavaScript. Your primary copy should be visible with JavaScript disabled. Most AI crawlers do not execute JavaScript, and Google's renderer is a queue you do not control.

12. HTTPS everywhere. No mixed content, sane certificate setup, HSTS if you can commit to it.

13. Mobile rendering. Real device, not just devtools emulation. Check for blocked resources and viewport issues.

14. Structured data validity. Validate every JSON-LD block, confirm it is server-rendered, and confirm it matches the visible content. Schema that contradicts the page is worse than no schema.

15. International tags, if applicable. Hreflang pairs must be reciprocal and point at indexable URLs.

Important

Section 3: Speed and Core Web Vitals

16. LCP at or under 2.5 seconds on mobile, in field data. Use CrUX numbers, not just lab runs. Lab scores flatter almost every site.

17. INP at or under 200 milliseconds. Long tasks and heavy hydration are the usual suspects on JavaScript-first sites.

18. CLS at or under 0.1. Reserve explicit space for images, embeds, and ads so the page does not shift under the reader.

19. Image discipline. Modern formats, explicit width and height, lazy-loading below the fold only. Never lazy-load your LCP element.

20. Third-party script audit. Every tag manager tag is a tax. Remove what nobody can defend.

Important

Section 4: On-page and intent

21. One page, one primary keyword. Map every URL to a single target and kill the overlaps. Cannibalization is silent, common, and expensive.

22. Title tags. Front-load the keyword, stay near 60 characters, and write for the click, not just the crawler.

23. Meta descriptions. Unique, roughly 150 characters, selling the click. Google rewrites many of them. Write them well anyway.

24. One H1 per page, matched to the query the page targets.

25. Heading hierarchy that mirrors the questions searchers actually ask. Your H2s should read like a People Also Ask box for the topic.

26. First 100 words answer the query outright. Context and nuance come after the answer, not before it.

27. Intent match. If the SERP is full of tools and your page is an essay, you are bringing the wrong format to the fight. Check the live results before writing.

28. Internal anchor discipline. Descriptive anchors, and no two pages competing for the same anchor theme.

Important

Section 5: Content quality and depth

29. Thin and overlapping pages. Inventory every indexable URL and ask what query it deserves to win. Pages with no answer get merged, improved, or removed. A smaller site that answers cleanly beats a big one that rambles.

30. First-hand evidence on money pages. Screenshots, numbers, client results, original photos. Google and AI engines both reward pages that could only have been written by someone who did the work.

31. Freshness where it matters. Prices, dates, tool names, and screenshots age fast. A 2023 screenshot under a 2026 headline tells the reader the rest is stale too.

32. Author and about pages that hold up. A real name, a real face, and credentials a stranger can verify. Trust decisions increasingly happen off the page you are trying to rank.

33. One clear next step per page. Every page should know what it wants the visitor to do. A page that converts also earns the engagement signals a page that merely informs never sees.

34. Read it out loud. If a paragraph embarrasses you when spoken, it is filler. Cut it. Word count is a byproduct, not a target.

Important

35. Backlink profile snapshot. Pull referring domains from Ahrefs or Semrush and read the top 50 by authority. You are looking for the shape of the profile: editorial mentions versus directories versus junk.

36. Toxic pattern scan. Do not disavow by default. Look for site-wide footers, obvious link networks, and anchors you would never write yourself. Disavow is a last resort, not hygiene.

37. Anchor text distribution. Branded and natural anchors should dominate. If exact-match anchors lead, you either bought links or a negative SEO campaign is doing it for you.

38. Competitor gap check. List the domains linking to your top three competitors but not to you. That list is your outreach plan, pre-qualified.

39. Unlinked brand mentions. Search your brand name, find the mentions without links, and ask. The easiest links you will ever get.

40. Internal links as a ranking tool. Your most linked internal pages should be the pages you most need to rank. Run a crawl, sort by internal links, and fix the mismatch. It is the cheapest authority you control.

Refinement

Section 7: Measurement and reporting hygiene

41. Search Console and analytics actually wired. Domain-level verification, every variant covered, and at least 16 months of history preserved. You cannot audit trends you never recorded.

42. Rank tracking on a frozen keyword set. A fixed list tracked weekly beats an ever-changing list tracked daily. Consistency is what makes movement mean something.

43. Conversion events that reflect money. Track the actions that pay you: calls, form fills, booked consultations. Sessions are a vanity metric on a lead generation site.

44. Annotation habit. Log every site change, migration, and Google update in one place. Six months later, that log is the difference between diagnosis and guessing.

45. Branded and non-branded queries, separated. Branded queries measure your reputation. Non-branded queries measure your SEO. Blending them flatters the report and hides the truth.

Important

46. Google Business Profile completeness. Categories, services, hours, photos, and a steady review cadence. In local SEO work, this single asset often outweighs the website.

47. NAP consistency. Name, address, and phone must match everywhere they appear: your site, your profile, and the citation sources that matter in your market.

48. Location page quality. One real page per location with unique copy, an embedded map, local proof, and LocalBusiness schema. A templated city-name swap does not count.

Important

Section 9: AI search visibility

49. AI crawler access. Read robots.txt for GPTBot, OAI-SearchBot, PerplexityBot, and ClaudeBot. Blocking the search crawlers removes you from the answers your buyers now read.

50. Bing indexation. ChatGPT's live retrieval leans on Bing. Verify your key pages in Bing Webmaster Tools. An empty Bing index is an empty ChatGPT presence.

51. Answer-first extractability. Every important page should surface a liftable two to three sentence answer near the top. I cover the full playbook in how to rank in ChatGPT.

52. Citation monitoring. Run a fixed set of buyer prompts monthly across ChatGPT and Perplexity, and record who gets cited. You cannot grow a channel you never measure.

If you only fix five things

Run checks 1, 3, 9, 21, and 49 first: indexation coverage, the noindex sweep, server-rendered head tags, keyword cannibalization, and AI crawler access. In hundreds of audits, those five have produced more recovered traffic than the other 47 combined. Then work the rest top to bottom.

Frequently asked questions

How long does a proper SEO audit take?

For most small business sites, 6-10 hours spread across a week. Automated crawlers finish in minutes, but the calls that matter, like intent match and content quality, need human judgment. Anyone selling a same-day full audit is selling a PDF export.

How often should I run this checklist?

The Critical sections quarterly, the full 52 checks once a year, and any time traffic drops without an obvious cause. Sites that ship code weekly need the noindex sweep and canonical checks in their release process, not their calendar.

What tools do I need to run it?

Google Search Console, Bing Webmaster Tools, one crawler such as Screaming Frog, and curl or a raw-HTML viewer. A paid link index like Ahrefs helps for Section 6, but the highest-impact checks on this list are free.

Can I run an SEO audit myself or should I hire someone?

Run it yourself first. Most of these checks need patience, not certification. Hire help when the findings pile up faster than you can fix them, or when the fixes touch code, migrations, or link strategy you do not want to learn on your own site.

Rather hand this off?

I run this exact checklist, plus the judgment calls a list cannot capture, as a fixed-scope engagement with findings ordered by impact and a fix list your developer can act on the same day. See my SEO audit services for scope and pricing.

Keep reading

All SEO articles