SEO Website Audit Checklist
What to check, in the order that matters, with the reason each item is on the list.

Short answer
Audit in this order: indexability, canonicalisation, site structure, on-page targeting, performance, structured data. Findings at the top of that list invalidate everything below them, so fixing in order avoids wasted work.
Order matters. A brilliant title tag on a noindexed page is wasted effort, so the checks that can invalidate other findings come first.
1. Indexability
- [ ] No unintended
noindexon any page you want indexed - [ ] WordPress "discourage search engines" setting is off in production
- [ ]
robots.txtdoes not block CSS, JavaScript or images - [ ]
robots.txtdoes not block anything you want indexed - [ ] XML sitemap exists, is reachable, and is submitted in Search Console
- [ ] Sitemap lists only indexable URLs — no redirects, no 404s, no noindexed pages
- [ ] Sitemap is generated from live data, not frozen at build time
- [ ] Search Console Pages report reviewed, excluded reasons understood
The sitemap item is worth more scrutiny than it usually gets. A sitemap that silently loses URLs looks completely normal from the outside. On this site it dropped eighteen of thirty-eight URLs for three months.
2. Canonicalisation and duplication
- [ ] Every indexable page has a self-referencing canonical
- [ ] Google's chosen canonical matches yours *(URL Inspection shows both)*
- [ ] One host only: http, https, www and non-www resolve to a single origin with 301s
- [ ] Trailing slashes handled consistently
- [ ] Parameter URLs are not creating indexable duplicates
- [ ] No two pages targeting the same intent
3. Structure and internal linking
- [ ] Every important page reachable within three clicks of the homepage
- [ ] No orphan pages — anything in the sitemap should have internal links
- [ ] Navigation links are real anchors, not JavaScript-only buttons
- [ ] Breadcrumbs present and marked up
- [ ] Anchor text descriptive and varied
- [ ] Redirect chains resolved to single hops
- [ ] Internal links point at final URLs, not through redirects
The navigation check catches a surprisingly costly failure. If a dropdown only mounts on hover, its links do not exist in the server-rendered HTML — so a crawler never sees them. That was worth zero internal links to twelve service pages on this site until it was fixed.
4. On-page
- [ ] Unique title on every page, roughly 50–60 characters
- [ ] No duplicated brand suffix — check for "| Brand | Brand"
- [ ] Unique meta description, roughly 140–160 characters
- [ ] Exactly one H1 per page
- [ ] Heading levels not skipped
- [ ] Each page targets one clear search intent
- [ ] Images have descriptive alt text that is not keyword-stuffed
- [ ] Content answers the query near the top
5. Performance
- [ ] Core Web Vitals checked on field data in Search Console, not just lab tests
- [ ] LCP under 2.5s, INP under 200ms, CLS under 0.1
- [ ] Tested on a mid-range mobile profile, not desktop
- [ ] Images sized correctly and in a modern format
- [ ] Hero image not lazy-loaded
- [ ] Pages cacheable — check for
no-storeon HTML responses
6. Structured data
- [ ] JSON-LD parses without errors
- [ ] Schema matches what is visible on the page
- [ ] No review or rating markup without visible reviews on that page
- [ ] FAQ markup only where FAQs are actually rendered
- [ ] One entity per concept — not a separate Person node on every page
- [ ] Breadcrumb markup matches the visible trail
That third item is the one that causes manual actions. It is also the easiest to ship by accident, because a theme or plugin can add it without anyone deciding to.
7. The things a tool will not tell you
- Does each page actually serve the intent it targets?
- Is the content genuinely better than what ranks above it?
- Are there questions customers ask that no page answers?
- Do the pages convert once someone lands?
Audit tools are good at the first six sections and useless at this one. It is also where most of the remaining opportunity usually is.
Turning findings into a plan
Sort by *impact × effort*, not by the tool's severity colour. A single indexing block affecting your whole site outranks two hundred missing alt attributes, even though the tool will show two hundred red rows and one amber one.
The SEO service runs this and returns a prioritised list rather than a raw export — the working is in technical SEO implementation.
Worked examples
Related services
Related reading
SEO
Why Is My Website Not Ranking on Google?
Work through these in order. Most sites that are not ranking fail at step one or two, and never find out.
SEO
Technical SEO vs On-Page SEO: What's the Difference?
One controls access, the other controls meaning. Knowing which is broken tells you what to buy.
SEO
How Google Crawls and Indexes a Website
Four stages, four different failure modes. Most SEO confusion comes from treating them as one process.
SEO
How to Create an SEO-Friendly Website Structure
Structure is decided early and expensive to change. Here is how to get it right the first time.
