How to Conduct a Technical SEO Site Audit, Step by Step

how to conduct a technical seo site audit

Learning how to conduct a technical SEO site audit comes down to a fixed sequence: crawl the site, confirm what is actually indexed, check that important pages are reachable and fast, verify the structural signals, then rank the findings by traffic impact rather than by severity label. Most audits fail not because something was missed but because everything was reported at equal weight, producing a 200-item list nobody acts on.

Budget half a day for a site under 500 pages and two days for anything larger. The crawl is the fast part. Interpreting it is the work.

Step 1: Crawl the site and compare against reality

Start with a full crawl that follows internal links from the homepage, then crawl the XML sitemap separately. Comparing the two lists is where the first real findings appear.

Pages in the sitemap but not reachable by crawl are orphans — they exist, but no internal link points at them, so they accumulate almost no authority. Pages reachable by crawl but absent from the sitemap are usually either unintentionally exposed or a sitemap generation bug. Both are common and both are quick fixes.

Confirm the sitemap exists at all before assuming. Checking the robots.txt Sitemap directive and probing the common paths — /sitemap.xml, /sitemap_index.xml, and the CMS-specific variants — catches sites that have one but never declared it.

Note your crawl depth distribution too. Any money page more than three clicks from the homepage is being under-served by your own internal linking.

Step 2: Establish what Google has actually indexed

Your crawler tells you what exists. Google Search Console tells you what counts. Open the Page Indexing report and work through the exclusion reasons in order of volume.

  • Crawled – currently not indexed. Usually a quality or duplication signal. Google saw the page and declined. Thin templated pages dominate this bucket.
  • Discovered – currently not indexed. Crawl budget or perceived low value. Common on large sites with weak internal linking.
  • Duplicate, Google chose a different canonical. Your canonical tag was overruled. Look for near-identical content across parameters, filters, or locations.
  • Excluded by noindex. Fine if intended. Check the list anyway — noindex left on a template after a staging launch is a classic disaster.
  • Soft 404. Pages returning 200 with empty or error-like content. Frequently out-of-stock products or empty search results.

If the number of indexed pages is dramatically lower than your published count, stop the audit and solve that first. Nothing else matters until pages can be indexed.

Step 3: Check the structural signals

Work through the elements that tell search engines what a page is and how it relates to the rest of the site. For each finding, capture the evidence — the actual title text, the actual URL, the actual H1 — because a bare count like “23 duplicate titles” is not something a developer can act on.

  1. Title tags. Missing, duplicated, over 60 characters, or brand-first. Template problems usually explain the bulk of them.
  2. Meta descriptions. Missing or duplicated. Aim for 140 to 155 characters where you write them.
  3. H1s. Missing, multiple, or identical to the title across dozens of pages.
  4. Canonicals. Self-referencing on canonical pages, pointing correctly on variants, absent from nothing important.
  5. Redirects. Chains longer than one hop, loops, and internal links still pointing at redirected URLs.
  6. Status codes. Internal 4xx links, and any 5xx at all — those are urgent.
  7. Hreflang, if you run multiple languages. Missing return tags are the usual error.
  8. Structured data. Validate it. Broken schema silently loses rich results.

Step 4: Speed and Core Web Vitals, with field data

Run PageSpeed Insights on a representative page from each template — homepage, category, product or service, article — rather than testing one URL and generalizing.

The distinction that matters: lab data is a simulated test on synthetic hardware; field data comes from real Chrome users. Google uses field data for ranking. A lab score of 95 alongside failing field metrics means your test conditions are not your users’ conditions, and the field numbers are the ones to trust.

Current thresholds worth memorizing: Largest Contentful Paint under 2.5 seconds, Interaction to Next Paint under 200 milliseconds, Cumulative Layout Shift under 0.1. Fix in that order for most sites. LCP problems are usually a hero image that is not preloaded, a render-blocking font, or slow server response.

Be realistic about the payoff. Speed is a real but modest ranking factor. Moving from terrible to acceptable helps; moving from good to excellent rarely changes positions and mostly helps conversion.

Step 5: Audit for AI search surfaces

A modern technical seo audit for ai search adds a short layer to the standard checks, because the retrieval systems behind AI Overviews, ChatGPT, Gemini, and Perplexity have their own requirements.

Check whether your robots.txt blocks AI crawlers, and decide deliberately rather than by inheritance. Many sites block them accidentally through an overly broad rule copied from elsewhere.

Check whether your content renders without JavaScript. Some AI crawlers execute JS poorly or not at all. If your core text only appears after hydration, you may be invisible to them while ranking fine in classic search.

Check passage structure. AI answers extract self-contained chunks. Pages where each H2 section opens by stating its conclusion get quoted; pages that meander do not. This is a content-structure issue that a technical audit is well positioned to flag, because it shows up as a pattern across templates.

Step 6: Prioritize by impact, not by count

Sort every finding into four buckets. Blocking issues — noindex on money pages, 5xx errors, robots.txt disallowing important paths — get fixed today. High-impact issues affecting pages that already earn traffic come next. Template-level issues affecting many pages come third, because one fix resolves hundreds of rows. Everything else is a backlog.

Then estimate effort. A title template fix that takes 30 minutes and touches 400 pages beats a two-week migration that touches ten. Sequence by the ratio, not the severity color.

Running this repeatedly

An audit is not a one-time project. Sites break continuously — a plugin update strips canonicals, a redesign drops H1s, a developer ships a staging noindex. Quarterly full audits plus a lightweight monthly check on the critical pages catches most regressions before they cost anything.

The tooling should support both cadences. SEO Rocket runs an instant quick scan of roughly 25 pages when you need an immediate read, and a deep full-site crawl verified past 900 pages when you need the complete picture, with the actual titles, URLs, and H1 text attached to every issue plus PageSpeed and Core Web Vitals using real-user field data. It sits alongside keyword research, rank tracking, and AI visibility in one workspace at a flat US$50 per month.

Whatever you use, hold the discipline: crawl, verify against Search Console, capture evidence, and fix in impact order. An audit that produces five fixes shipped this week is worth more than one that produces a 200-page PDF nobody opens twice.