The complete technical audit as a single ordered list. Work top to bottom — fix what stops a page from being indexed before optimising what already works. Each point links to a deep explainer and the tool to check it.
A checklist isn't just a list — it's an order of operations. The first checks gate everything after them: a page that can't be crawled or indexed can't rank, no matter how good its content or speed.
If these fail, nothing else matters.
Confirm no over-broad Disallow blocks pages you want ranked, and that your sitemap is declared. robots.txt guide →
Check no page (or shared template) carries an accidental noindex. This is the most common cause of sudden deindexing. noindex explained →
Key pages should return HTTP 200, not 4XX or 5XX. Watch for pages that started erroring after a migration.
Indexable pages should canonicalise to themselves; none should canonicalise to a redirect, error, or the wrong URL. Canonical tag guide →
Every page worth ranking should have internal links pointing to it. Orphan pages →
How authority and crawlers flow through your site.
Collapse multi-hop redirects to a single hop, and fix any loops. Redirect chains →
Verify permanent redirects return a 301 so authority transfers. 301 vs 302 →
No redirects, errors, noindex, or non-canonical URLs in the sitemap. Sitemap best practices →
Pages you want ranked should appear in the sitemap; flag any that are missing.
Fix internal links to 404s, links to redirects, and malformed URLs Google can't crawl. Why broken links hurt SEO →
Replace "click here" with descriptive anchors; fix links with no anchor text. Anchor text →
Keep key pages no more than ~4 clicks deep so they're crawled and pass authority.
What you optimise once the foundation is solid.
Every page: a unique title around 50–60 characters. Titles & descriptions →
Under ~160 characters, unique, written to earn the click.
A single descriptive H1 per page and headings that nest logically.
Consolidate duplicate titles, descriptions, H1s and URL variants. Duplicate content →
LCP, CLS and INP in the green on mobile, not just desktop. Core Web Vitals →
The whole site on HTTPS, no insecure resources, correct HTTP-to-HTTPS redirects.
Any JSON-LD validates against schema.org with no errors that block rich results.
Reciprocal return tags, self-references, valid codes, x-default, 200 targets. hreflang guide →
Free to start. Every point on this list, on every page, mapped to exactly what to fix.
Start my free audit