Technical SEO

How to Do a Technical SEO Audit (Step-by-Step)

How to do a technical SEO audit step by step — from crawl analysis to Core Web Vitals, indexing, schema, and mobile. A practical guide with real tools and priority order.

Bhavleen Singh

Bhavleen Singh

SEO Specialist, Khalis Marketing

May 2026
12 min read

Quick Answer: A technical SEO audit checks whether Google can find, crawl, render, index, and understand your website. Work through it in this order: (1) check robots.txt and sitemap, (2) review Google Search Console for indexing issues, (3) run a crawl with Screaming Frog or Ahrefs, (4) check Core Web Vitals in PageSpeed Insights, (5) test mobile usability, (6) audit schema markup, (7) check for duplicate content and canonical conflicts. Fix issues in the order they appear here — crawlability problems always come first.

72% of websites fail at least one critical technical SEO factor.

Most don't know which one.

A technical SEO audit changes that. It moves you from 'my rankings are flat and I don't know why' to 'here are the seven specific things holding this site back, ranked by impact.'

This is the exact process I use when auditing Melbourne client sites.

Need the audit done for you? Our SEO audit service covers every step in this guide.

Tools You Need Before You Start

  • Google Search Console (free): The most important tool. Shows indexing status, crawl errors, Core Web Vitals, manual penalties, and which queries trigger your pages.
  • Screaming Frog (free up to 500 URLs): Crawls your site the way Googlebot does. Finds broken links, redirect chains, duplicate titles, missing meta tags, and orphaned pages.
  • Google PageSpeed Insights (free): Tests Core Web Vitals for any URL. Shows LCP, INP, CLS, and specific fixes for each failing element.
  • Ahrefs or SEMrush (paid, optional): Adds backlink data, competitor analysis, and keyword tracking that GSC can't provide.
  • Google's Mobile-Friendly Test (free): Confirms whether Googlebot can properly render your pages on mobile.

Step 1: Check robots.txt

Open yourdomain.com.au/robots.txt in a browser. This file controls what Googlebot can and can't crawl.

Two things to look for:

  • Disallow: / — If you see this, Googlebot is blocked from the entire site. This is the most common and most catastrophic technical SEO error. Often left on accidentally from a development environment.
  • Blocked key sections: Disallowing /services/, /blog/, or other important paths means Google can't crawl those pages at all, regardless of how well they're written.

Correct robots.txt for a standard Melbourne business site:

Correct robots.txt format — User-agent: * | Allow: / | Disallow: /admin/ | Disallow: /api/ | Sitemap: https://yourdomain.com.au/sitemap.xml. The Sitemap line tells every crawler exactly where to find your pages. Include it.

Step 2: Check and Submit Your Sitemap

Your sitemap is a file that lists every URL on your site you want Google to index.

Visit yourdomain.com.au/sitemap.xml. You should see a list of URLs. If the page doesn't load, you don't have a sitemap. Generate one in your CMS immediately.

  • In Google Search Console, go to Indexing > Sitemaps
  • Enter your sitemap URL and click Submit
  • Check for errors. A successful submission shows the number of URLs discovered
  • If your sitemap includes 404 pages or redirects, clean it up. A sitemap with broken URLs wastes crawl budget

For a Next.js site: sitemap is generated from app/sitemap.ts. For WordPress: Yoast or RankMath generates it automatically. Check that all service, location, industry, and blog pages are included.

Step 3: Check Google Search Console Coverage

This is where most indexing problems are visible.

Go to Search Console > Indexing > Pages. You'll see four categories:

  • Indexed: Pages Google has stored and can serve in search results. These are healthy.
  • Not indexed: Pages Google knows about but hasn't added to its index. This is your problem list.
  • Excluded by noindex tag: Pages with an explicit instruction not to index. Intentional for admin pages. A problem if it's on service or blog pages.
  • Crawled, currently not indexed: Google visited the page but decided it wasn't worth indexing. Almost always a content quality issue. The fix is content improvement, not a technical setting.
  • Discovered, not yet crawled: Google knows the page exists but hasn't visited it. Usually a crawl budget issue on new or low-authority domains.

For each category, click through to see the specific URLs. Export the list. Priority: fix 'Excluded by noindex' first (technical), then address 'Crawled not indexed' pages (content), then request indexing on 'Discovered not yet crawled' pages after improving them.

Only 17%Of the top 10 million websites implement any schema markup — a significant competitive advantage for those that doSource: Source: Digital Applied, 2025

Step 4: Run a Crawl with Screaming Frog

Screaming Frog crawls your site and reports on every URL it finds. Set it to crawl your domain, wait for it to finish, then work through these tabs:

  • Response Codes: Sort by 4xx errors. Every 404 page needs either a 301 redirect to the relevant live page, or removal from internal links and sitemap.
  • Page Titles: Filter by 'Missing', 'Duplicate', and 'Over 60 Characters'. Every page needs a unique title under 60 characters.
  • H1: Filter by 'Missing' and 'Duplicate'. Every page needs exactly one H1.
  • Directives: Sort by 'noindex'. Confirm noindex only appears on pages that should genuinely not be indexed.
  • Canonicals: Check for canonical conflicts. The canonical URL should always point to the preferred version of the page.
  • Redirect Chains: A redirect from A to B to C wastes crawl budget. Flatten all redirect chains to single 301 redirects.

Step 5: Check Core Web Vitals

Go to PageSpeed Insights (pagespeed.web.dev) and test your homepage and your most important service page. Run on mobile.

Core Web VitalTarget threshold
LCP (Largest Contentful Paint)Under 2.5 seconds — main content loads quickly
INP (Interaction to Next Paint)Under 200ms — page responds quickly to clicks
CLS (Cumulative Layout Shift)Under 0.1 — page doesn't jump around while loading

Pages that hit all three thresholds sit in the 'Good' CWV category. Google confirmed in 2025 Q4 updates that poor interaction latency now correlates strongly with ranking drops in competitive SERPs.

Common causes of failure in Melbourne small business sites:

  • Large, uncompressed hero images slowing LCP
  • Google Fonts blocking render and increasing LCP
  • Third-party scripts (chat widgets, analytics trackers) delaying INP
  • No explicit width and height on image elements causing CLS

Run PageSpeed Insights on the mobile setting. Google uses mobile-first indexing. The desktop score is informational. The mobile score is what matters for rankings.

Step 6: Test Mobile Usability

Visit search.google.com/test/mobile-friendly. Enter your URL. Google will confirm whether the mobile version of your page passes its usability test.

Common fails:

  • Text too small to read without zooming
  • Clickable elements (buttons, links) too close together on mobile
  • Content wider than the screen requiring horizontal scrolling
  • Viewport not configured in the page's HTML head

Step 7: Audit Schema Markup

Schema markup tells Google exactly what your content means. It's not a direct ranking factor, but it unlocks rich results and AI Overview citations.

Use Google's Rich Results Test (search.google.com/test/rich-results) on each page type to check for errors.

Priority schema types for Melbourne businesses:

  • LocalBusiness: Homepage and contact page. Includes your name, address, phone, hours, and service area.
  • Service: Each service page. Describes what you offer with name, description, and provider details.
  • FAQPage: Any page with a FAQ section. Increases AI Overview citation likelihood significantly.
  • BreadcrumbList: Every page. Shows the path in search results.
  • Person: About page. Attributes expertise to a named individual, supporting E-E-A-T signals.

Step 8: Check for Duplicate Content

Duplicate content is when multiple URLs serve the same (or near-identical) content.

Google indexes one version and ignores the rest. If it picks the wrong one, the right one won't rank.

  • www vs non-www: Both versions should redirect to one. Test by visiting www.yourdomain.com.au and yourdomain.com.au. Only one should resolve.
  • HTTP vs HTTPS: All HTTP pages should 301 redirect to HTTPS. Check that your SSL certificate is valid and not expiring.
  • Trailing slash inconsistency: /services/local-seo and /services/local-seo/ are technically different URLs. Pick one format and redirect the other.
  • Templated location pages: Location pages with the same content except the suburb name swapped are duplicate content. Each location page needs genuinely unique, suburb-specific content.

Audit Priority Order

Not everything needs to be fixed at once. Work through issues in this order:

  1. 1Crawl blockers first: robots.txt errors, noindex on key pages, sitemap issues. Nothing else matters if Google can't access your pages.
  2. 2404 errors and redirect chains: These waste crawl budget on every crawl cycle.
  3. 3Core Web Vitals: Particularly mobile page speed. Immediate ranking factor.
  4. 4Duplicate content and canonical conflicts: Causes Google to index the wrong version of pages.
  5. 5Schema markup: Once the above are fixed, implement schema across all page types.
  6. 6Content depth on 'Crawled not indexed' pages: Technical fixes won't help pages Google has already assessed as low quality. These need content improvements.

Want the audit done for you? Our SEO audit service runs through every step in this guide and delivers a prioritised fix list specific to your site.

Frequently Asked Questions

How long does a technical SEO audit take?

For a site under 100 pages, a thorough manual audit takes 4 to 8 hours. For sites with hundreds of pages, 8 to 20 hours. Automated tool reports are faster, but they surface 200+ minor issues without prioritising the 5 to 10 that actually matter.

How often should I run a technical SEO audit?

After any major site change (redesign, new CMS, domain migration, or large content additions). Otherwise, quarterly checks of Google Search Console coverage and PageSpeed Insights data catch most regressions before they become problems.

Can I fix technical SEO issues myself?

Many, yes. Checking robots.txt, submitting a sitemap, requesting indexing via URL Inspection, and fixing noindex tags are all accessible. Schema implementation, resolving canonical conflicts, and fixing Core Web Vitals typically require developer involvement.

Not sure where your site stands technically? Get a free technical SEO review.

Bhavleen Singh

Bhavleen Singh

SEO Specialist, Khalis Marketing

Bhavleen is an SEO specialist with 10+ years of experience helping businesses across retail, hospitality, medical, finance, and trades rank on Google. He founded Khalis Marketing to offer transparent, no-contract SEO that actually delivers results.

Ready to grow?

Want results like these for your business?

Get a free SEO audit and find out exactly what it would take to grow your organic traffic and leads.