Book a call

Technical SEO Checklist for Small Business Websites

A practical technical SEO checklist: crawling and indexing, Core Web Vitals on mobile data, site structure and AI crawler access. Most checks take minutes with free tools.

Technical SEO makes sure search engines and AI crawlers can reach your pages, understand them and index them, and that those pages load quickly on a phone. This checklist covers the checks that matter for a small business site, grouped into crawling and indexing, speed and Core Web Vitals on mobile data, structure, and AI crawler access. You can do almost all of it with free tools in an afternoon.

What tools do you need?

You need a handful of free tools and a real phone. Set these up before you start:

  • Google Search Console, for indexing status, Core Web Vitals and Google's AI performance reports.
  • Bing Webmaster Tools, because Bing's index feeds Bing search and Microsoft Copilot, and Google's tools tell you nothing about it.
  • PageSpeed Insights, for speed data from real Chrome users and lab tests.
  • Google's Rich Results Test and the Schema Markup Validator, for structured data.
  • An ordinary Android phone on MTN or Telecel mobile data, not office Wi-Fi. That's how many of your Ghanaian customers will see the site.

Crawling and indexing checklist

Crawling and indexing come first, because a page Google can't crawl or won't index can't rank or be cited anywhere. Work through each item:

  1. Verify the site in Google Search Console and Bing Webmaster Tools. Use a domain property in Search Console so it covers every version of the site.
  2. Use one version of the site. http, https, www and non-www should all redirect with a single 301 to one address.
  3. Serve everything over HTTPS with a valid certificate and no mixed-content warnings.
  4. Check /robots.txt. Make sure it doesn't contain Disallow: / for all user agents, a common leftover from a staging site, and that it doesn't block your CSS or JavaScript files.
  5. Don't use robots.txt to hide pages. Google's documentation says robots.txt isn't a way to keep a page out of Google: a blocked page can still appear if other sites link to it. Use a noindex meta tag instead, and leave the page crawlable so Google can see the tag.
  6. Hunt for accidental noindex. Check key pages with URL Inspection in Search Console. On WordPress, make sure "Discourage search engines from indexing this site" is unticked.
  7. Publish an XML sitemap, usually at /sitemap.xml, listing only live, indexable, canonical pages that return a 200 status. Submit it in both Search Console and Bing Webmaster Tools.
  8. Keep lastmod honest. Google's sitemap documentation says it ignores priority and changefreq, and uses lastmod only when it's consistently accurate.
  9. Set canonical tags. Each page should have a rel="canonical" pointing to its own preferred URL, so filtered, tracked or duplicate versions don't compete.
  10. Read the Page indexing report in Search Console. Investigate "Crawled, currently not indexed", "Duplicate without user-selected canonical" and "Soft 404" on pages you care about.
  11. Handle removed pages properly. Redirect a deleted page with a 301 to its closest replacement, or let it return a real 404. Avoid chains of redirects.
  12. Put important content in the HTML. Google indexes the mobile version of your site, so the mobile page must contain the same text, links and structured data as desktop. Don't hide key content in images or behind tabs that only load when clicked.
  13. Consider IndexNow to notify Bing the moment a page changes. Many hosting platforms and SEO plugins support it.

Speed and Core Web Vitals on mobile data

Core Web Vitals are Google's three measures of real-user experience: loading, responsiveness and visual stability. Google's Search Central documentation says good Core Web Vitals align with what its core ranking systems seek to reward. They won't rescue a weak page, but on slow, expensive mobile data, a heavy page loses customers whatever its ranking.

These are the current metrics and thresholds, as published on Google's web.dev. Interaction to Next Paint (INP) replaced First Input Delay as a Core Web Vital on 12 March 2024.

MetricWhat it measuresGoodPoor
Largest Contentful Paint (LCP)How quickly the main content appears2.5 seconds or lessOver 4 seconds
Interaction to Next Paint (INP)How quickly the page responds to taps and clicks200 milliseconds or lessOver 500 milliseconds
Cumulative Layout Shift (CLS)How much the layout jumps while loading0.1 or lessOver 0.25

Google measures each metric at the 75th percentile of page visits, split into mobile and desktop. A page passes only if it hits "good" on all three for at least 75% of visits.

Checklist:

  1. Check field data first. Open the Core Web Vitals report in Search Console, then run key pages through PageSpeed Insights and read the "real users" section for mobile.
  2. If there's no field data, your site doesn't have enough Chrome traffic to report. Use the lab results and your own phone test instead.
  3. Compress and resize images. Serve WebP or AVIF, sized for a phone screen. Oversized images, like a 4 MB banner photo, are a common cause of slow LCP.
  4. Don't lazy-load the main image. Lazy-load images further down the page, but let the first one load immediately.
  5. Set width and height on images, videos and embeds so the browser reserves space. This prevents a lot of layout shift.
  6. Cut third-party scripts. Chat widgets, several tracking pixels, sliders and pop-up tools all compete for the phone's processor and hurt INP. Keep only what you use.
  7. Limit fonts to one or two families and a few weights.
  8. Use caching and a CDN so repeat visits and visitors far from your server load faster.
  9. Test on a real phone on mobile data. Time how long the homepage takes to become usable, and how much data it uses.

Our guide to website speed on Ghanaian mobile data explains why this matters so much for local buyers.

Structure checklist

Good structure helps search engines and AI tools understand what each page is about and how pages relate. It also helps them quote you accurately.

  1. One page per service, product category and location. "AC repair in Tema" deserves its own page, not a line on the homepage.
  2. Clean, readable URLs, such as /services/ac-repair-tema, not /page?id=482.
  3. A unique title tag and meta description on every page, describing that page in the words customers use.
  4. One H1 per page, then H2 and H3 headings in order. Phrase headings as questions where natural.
  5. Answer first. Open each page and section with a direct answer, then the detail. See how to write content that AI answers quote.
  6. Every important page within about three clicks of the homepage, with no orphan pages that nothing links to.
  7. Descriptive internal links. "See our AC servicing prices" beats "click here".
  8. Breadcrumbs on deeper pages, marked up with BreadcrumbList.
  9. Organization or LocalBusiness structured data on your homepage or about page, tested in the Rich Results Test. See schema markup for small businesses.
  10. Contact details as text, not inside an image, and identical to your Google Business Profile. See entity SEO.
  11. Descriptive alt text on meaningful images.
  12. A mobile layout that works: readable text without zooming, buttons big enough to tap, no pop-ups covering the content.

AI crawler access checklist

AI assistants can only cite pages their crawlers are allowed to fetch, so check that your robots.txt, firewall and Search Console settings aren't quietly blocking them. Most AI companies run separate crawlers for search and for model training, and you can treat them differently.

CrawlerCompanyWhat it's for
GooglebotGoogleGoogle Search, including AI Overviews and AI Mode
Google-ExtendedGoogleA robots.txt token controlling use for Gemini training and grounding. Google says it doesn't affect Search inclusion or ranking
BingbotMicrosoftBing search, which Copilot draws on
OAI-SearchBotOpenAIChatGPT search results
GPTBotOpenAITraining OpenAI's models
ChatGPT-UserOpenAIFetching a page when a user asks
Claude-SearchBotAnthropicClaude's search results
ClaudeBotAnthropicTraining Anthropic's models
Claude-UserAnthropicFetching a page when a user asks
PerplexityBotPerplexityPerplexity search results; Perplexity says it isn't used for training
Perplexity-UserPerplexityFetching a page when a user asks

Checklist:

  1. Allow the search crawlers. OpenAI's documentation says sites that block OAI-SearchBot won't appear in ChatGPT search answers. Anthropic says blocking Claude-SearchBot can reduce your visibility in Claude's search results.
  2. Decide on training crawlers separately. Blocking GPTBot, ClaudeBot or Google-Extended limits use of your content for training. It's a business decision, not a ranking one.
  3. Know which rules don't apply. OpenAI says robots.txt rules may not apply to ChatGPT-User, and Perplexity says Perplexity-User generally ignores them, because a person triggered the visit.
  4. Check your firewall and CDN. Cloudflare has blocked AI training crawlers by default on new domains since July 2025. Review its bot settings so search crawlers aren't caught by the same rule.
  5. Check Google's AI setting in Search Console. Google's AI optimisation guide says a site must be included in Search generative AI features in Search Console to appear in them. By 31 August 2026, Google had rolled this control out to all websites worldwide. Sites that opt out get no traffic or impressions from those features, so make sure nobody has switched yours off.
  6. Review snippet controls. Google's AI Overviews and AI Mode respect the same nosnippet, data-nosnippet and max-snippet controls as normal results, and a page must be eligible for a snippet to appear in them. A sitewide nosnippet left over from an old setting keeps you out of Google's AI answers.
  7. Don't rely on JavaScript for main content. Google renders JavaScript, but you can't assume every crawler does. Make sure your key text is in the HTML the server sends.
  8. Add an llms.txt file if you like, but know its limits. Google's guide says Google Search ignores llms.txt. Some other tools may read it. See what llms.txt is.

As a working example, MediaWura's robots.txt explicitly allows named search and AI crawlers, including Googlebot, Google-Extended, Bingbot, Applebot, GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, PerplexityBot and Perplexity-User, and blocks only /api/, /studio and /thank-you. The site also publishes an llms.txt and llms-full.txt generated from its services and blog.

Monthly monitoring checklist

Technical SEO breaks quietly, usually after a redesign, a plugin update or a hosting change. Spend 20 minutes a month on these:

  1. Page indexing report in Search Console: any new errors or sudden drops?
  2. Core Web Vitals report: any URLs moved from "good" to "needs improvement"?
  3. Search Console's generative AI performance report, to see how often your pages appear in Google's AI features.
  4. Bing Webmaster Tools: crawl errors and indexed pages.
  5. Manual actions and security issues in Search Console.
  6. robots.txt and a few key pages' noindex status after every site change.
  7. A broken link check across the site.

For the wider picture, including content and AI visibility, see how to audit your website for SEO and AI search in one hour.

Common questions

How often should I run a technical SEO check?

Do the full checklist once, then the monthly monitoring list. Re-run the full list after any redesign, platform move or major plugin change.

Do Core Web Vitals really affect rankings?

Google says good Core Web Vitals align with what its ranking systems reward, but relevance and content quality matter more. Speed matters most for keeping visitors who are paying for data.

Should I block AI crawlers?

Block training crawlers if you object to training, but allow search crawlers if you want to be cited. Blocking OAI-SearchBot, Claude-SearchBot or PerplexityBot removes you from those assistants' search answers.

Does Google need a special file or markup for AI Overviews?

No. Google says a page must be indexed and eligible to show with a snippet, and that no special files or schema are needed.

My site is on Wix, Shopify or WordPress. Do I still need this?

Yes. These platforms handle some basics, but settings like noindex, robots.txt, image sizes, plugins and scripts are still yours to get right.

If you'd like us to run this checklist for you, or build a site that passes it from day one, see our website design service or book a free strategy call.

Read next