Skip to content

SEO audit checklist: every check you can run yourself, in the right order

By the Growli teamUpdated 8 min read

Short answer

An SEO audit checklist is an ordered list of checks that confirms search engines and AI assistants can reach, read and understand your site. Start with crawling and indexing (robots.txt, sitemap, noindex, canonicals, redirects, HTTPS), then AI crawler access, then on-page content, speed and mobile, structured data and finally your local listing.

The 10-minute check

  1. Step 1: Check that search engines are allowed in

    Open yourdomain.com/robots.txt. A line "Disallow: /" under "User-agent: *" blocks your whole site.

  2. Step 2: Check that your sitemap opens

    Open yourdomain.com/sitemap.xml (WordPress often uses sitemap_index.xml) and submit it in Google Search Console.

    Open Search Console
  3. Step 3: See which pages Google has indexed

    In Search Console, open "Pages" under Indexing and read the reasons pages are not indexed.

  4. Step 4: Check your mobile speed

    Run your homepage through PageSpeed Insights and start with the top suggestions.

    Open PageSpeed Insights
  5. Step 5: Run every check at once

    A free Growli audit runs these checks and more on your pages, with fixes for your platform.

    Run a free audit

Why does the order of an SEO audit matter?

An audit is only useful if you fix things in the order that affects results. A perfect title tag does nothing on a page Google is not allowed to crawl, and fast images do not help a page marked noindex.

So this checklist runs from the foundations up. Work through it top to bottom and stop to fix anything in the first group before you spend time on the rest. Every check uses free tools: Google Search Console, PageSpeed Insights, the Rich Results Test and your browser's view-source (right click a page and choose View page source).

  1. Crawl and index: can search engines reach and store your pages?
  2. AI search access: can AI assistants read your pages?
  3. On-page: does each page say clearly what it is about?
  4. Technical quality: is the site fast, mobile friendly and free of broken links?
  5. Structured data and share tags: can machines read your key facts?
  6. Local: is your business listing complete and consistent?

Check crawling and indexing first

Crawling is a bot fetching your page. Indexing is the search engine storing it so it can appear in results. Problems here block everything else, so give this group the highest priority.

  • robots.txt. Open yoursite.com/robots.txt. Good looks like: the file loads, and it does not contain Disallow: / for all bots or block folders that hold real pages, CSS or JavaScript.
  • XML sitemap. Good looks like: a sitemap that lists only live, indexable URLs (no redirects, no 404s), is referenced in robots.txt and is submitted in Search Console under Sitemaps.
  • noindex. Search view-source for "noindex" on pages you want found. A leftover noindex from a staging site can hide a whole site.
  • Canonicals. Each page should have a link rel="canonical" pointing to its own preferred URL, not to the homepage or a different page.
  • Redirects. Old URLs should use a single 301 redirect to the new page. Chains (A to B to C) and loops slow crawling and lose signals.
  • HTTPS. Every page should load over https with a valid certificate, and http should redirect to https.
  • One domain version. Pick www or non-www. The other version should 301 redirect to it, so you do not have two copies of every page.

In Search Console, the Pages report (under Indexing) shows which URLs are indexed and why others are not. The URL Inspection tool shows how Google sees one specific page, including the canonical Google picked.

A healthy robots.txt for a small business site is usually short. Here is a typical example:

robots.txt
User-agent: *
Disallow: /cart/
Disallow: /admin/

Sitemap: https://www.example.com/sitemap.xml

Do not use robots.txt to hide a page from Google. If a page is blocked from crawling, Google cannot see its noindex tag, so the URL can still show up in results. Use noindex and leave the page crawlable.

Google explains both rules in its robots.txt introduction and its guide to blocking indexing with noindex.

Make sure AI assistants can read your site

ChatGPT, Claude, Perplexity and similar tools send their own crawlers. If those are blocked, your pages are less likely to be read, cited or linked in AI answers. This is newer territory and the rules change often, so check the official documentation for each company.

  • AI crawlers in robots.txt. Look for rules naming bots such as GPTBot or OAI-SearchBot. OpenAI documents its crawlers separately: OAI-SearchBot is used for ChatGPT search, while GPTBot relates to model training. Good looks like: you have made a deliberate choice for each, not copied a block list. Our guide to robots.txt for AI crawlers covers the user agents in detail.
  • Firewall and CDN. A robots.txt that allows AI bots means nothing if your firewall blocks them. Services such as Cloudflare have settings that block AI crawlers, and their defaults have changed over time. Check your bot settings in your host or CDN dashboard.
  • llms.txt. An optional Markdown file at /llms.txt that summarises your site for language models. It is a community proposal, not an official standard, and support varies, so treat it as low priority. See the llms.txt guide.

Also check that your main content is in the HTML itself. Many crawlers do not run JavaScript, so text that only appears after scripts load may be invisible to them. In view-source, search for a sentence from the page: if it is not there, the content depends on JavaScript.

Review titles, descriptions, headings and content

Once pages can be crawled, check that each one explains itself. These checks need view-source or a crawler that lists every page.

  • Title tags. Every page has a unique title that starts with what the page is about. Google may shorten long titles to fit the screen. Our guide to title tags and meta descriptions covers how to write them.
  • Meta descriptions. Each important page has its own description summarising it. Google may show it as the snippet, or pick text from the page instead.
  • Headings. One clear H1 that matches the topic, then H2 and H3 headings in a logical outline.
  • Thin content. Pages with a few lines and nothing a visitor could not find elsewhere. Expand them, merge them into a stronger page, or remove them.
  • Duplicate content. Several pages with near identical text, such as location pages with only the city name swapped. Make each one genuinely different or consolidate with canonicals.

In the Performance report, pages with many impressions but few clicks often have a weak title or description.

Core Web Vitals are Google's three measures of page experience. Google's Web Vitals overview sets the "good" thresholds, measured at the 75th percentile of real visits:

  • Largest Contentful Paint (LCP, loading): 2.5 seconds or less.
  • Interaction to Next Paint (INP, responsiveness): 200 milliseconds or less.
  • Cumulative Layout Shift (CLS, visual stability): 0.1 or less.

Run your key pages through PageSpeed Insights. The top section shows real user data when Google has enough of it, and the lab section below lists specific fixes. Search Console also has a Core Web Vitals report that groups slow URLs.

  • Mobile. Google indexes the mobile version of your site, so the phone view must have the same content as desktop. Check each template on a real phone.
  • Images. Use compressed modern formats such as WebP, set width and height to avoid layout shift, and give meaningful images descriptive alt text.
  • Broken links. Internal links that return 404 waste crawling and frustrate visitors. Fix the link or redirect the old URL to the closest live page.

Check structured data and share tags

Structured data is code (usually JSON-LD) that states facts such as your business name, products, prices or reviews in a format machines can read. It can make pages eligible for rich results in Google. Paste a URL into the Rich Results Test to see which types Google detects and whether there are errors.

Share tags control the preview when someone posts your link on social media or in a chat app. In view-source, look for these tags in the head of each page:

HTML head
<meta property="og:title" content="Emergency plumber in Leeds">
<meta property="og:description" content="24/7 call-outs, fixed prices.">
<meta property="og:image" content="https://www.example.com/share.jpg">
<meta name="twitter:card" content="summary_large_image">

Good looks like: valid structured data that matches what is visible on the page, and an og:image on every page you expect people to share. See schema markup for AI search for which types to add.

Finish with your local listing

If you serve customers in a specific area, your Google Business Profile often matters as much as your website. Good looks like: the profile is verified, the business category is accurate, opening hours are current, and the name, address and phone number match your website exactly. Keep photos and services up to date.

The full SEO audit checklist at a glance

  • Priority
    1
    Check
    robots.txt
    What good looks like
    Loads, blocks only private areas
    Free tool
    Browser
  • Priority
    1
    Check
    noindex
    What good looks like
    Absent on pages you want found
    Free tool
    view-source, URL Inspection
  • Priority
    1
    Check
    Sitemap
    What good looks like
    Only live, indexable URLs, submitted
    Free tool
    Search Console
  • Priority
    1
    Check
    Canonicals
    What good looks like
    Each page points to its own URL
    Free tool
    view-source, URL Inspection
  • Priority
    1
    Check
    Redirects, HTTPS, one domain
    What good looks like
    Single 301s, https only, one version
    Free tool
    Browser, Search Console
  • Priority
    2
    Check
    AI crawlers and firewall
    What good looks like
    Deliberate allow or block, no silent blocks
    Free tool
    robots.txt, CDN dashboard
  • Priority
    2
    Check
    JavaScript-only content
    What good looks like
    Main text present in raw HTML
    Free tool
    view-source
  • Priority
    3
    Check
    Titles and descriptions
    What good looks like
    Unique, specific, topic first
    Free tool
    view-source, Performance report
  • Priority
    3
    Check
    Headings and content
    What good looks like
    One H1, no thin or duplicate pages
    Free tool
    view-source
  • Priority
    4
    Check
    Core Web Vitals
    What good looks like
    LCP 2.5 s, INP 200 ms, CLS 0.1 or better
    Free tool
    PageSpeed Insights
  • Priority
    4
    Check
    Mobile, images, links
    What good looks like
    Same content on mobile, compressed images, no 404s
    Free tool
    Phone, PageSpeed Insights
  • Priority
    5
    Check
    Structured data and share tags
    What good looks like
    Valid, matches visible content
    Free tool
    Rich Results Test
  • Priority
    5
    Check
    Google Business Profile
    What good looks like
    Verified, consistent details
    Free tool
    Google Business Profile
  • Priority
    6
    Check
    llms.txt
    What good looks like
    Optional summary file
    Free tool
    Browser

Running every check by hand on a site with hundreds of pages takes time. Growli automates most of them: it reads your site the way Google and AI crawlers do, runs 50 checks including AI crawler access and firewall blocks, and rates each issue High, Medium or Low with step-by-step fixes for WordPress, Shopify, Wix and others. You can run a free Growli audit without an account.

Frequently asked questions

How often should I run an SEO audit?

A full audit once or twice a year suits most small sites, plus a quick check after any redesign, migration or platform change. Those events are when noindex tags, broken redirects and blocked folders usually slip in. Check Search Console's indexing report monthly so you notice drops early.

Can I do an SEO audit myself without paid tools?

Yes. Search Console, PageSpeed Insights, the Rich Results Test and view-source cover almost everything on this checklist. Automated tools mainly save time on larger sites by checking every page at once.

What is the most common problem an SEO audit finds?

There is no reliable public figure for this, but the most damaging problems are usually simple: a leftover noindex tag, a robots.txt that blocks the whole site, or a missing redirect after moving to a new domain. That is why crawling and indexing come first.

Will fixing everything on the checklist get me to the top of Google?

No checklist can promise rankings. Fixing these issues removes barriers so search engines can find and understand your pages, but rankings also depend on how useful your content is compared with other sites and on links and reputation built over time.