Google processes approximately 8.5 billion search queries per day. Ensuring that a website’s pages are crawlable by Googlebot, indexable in Google’s index, and technically sound enough to rank competitively requires addressing a checklist of infrastructure, speed, and signal issues that are entirely separate from content quality. A well-written page that cannot be crawled is invisible. A crawlable page with poor Core Web Vitals scores loses ranking position to equivalent content with better performance. Technical SEO is the foundation on which content and link building produce their results.
The 30-point checklist below covers the most impactful technical SEO issues identified in site audits across a range of website types. Each item includes the specific tool or method for checking it and the most common fix.
Crawlability (Items 1-8)
- Robots.txt file: Verify the file is accessible at domain.com/robots.txt and does not accidentally block Googlebot from crawling important sections of the site. Common error: disallow rules added during development (Disallow: /) that were never removed for production. Check using Google Search Console’s robots.txt tester.
- XML sitemap: Verify the sitemap exists, is submitted to Google Search Console, is accessible at the URL listed in robots.txt, and contains only indexable URLs (no noindexed, redirected, or canonicalised-away URLs). Common error: sitemap includes pages with noindex meta tags, confusing Googlebot about which pages should be indexed.
- Internal link crawl depth: Run a site crawl using Screaming Frog or Sitebulb. No important page should be more than three clicks from the homepage in the internal link structure. Pages buried beyond four to five clicks receive crawl budget allocation issues on larger sites.
- Crawl traps: Check for pagination chains without rel=”nofollow” or canonical tags that lead to infinite crawlable page sets (e.g. session ID parameters, infinite filter combinations). These waste crawl budget on non-unique pages.
- Blocked resources: Verify that CSS, JavaScript, and image files used for page rendering are not blocked in robots.txt. If Googlebot cannot render the page as a user would see it, JavaScript-dependent content may not be indexed.
- Crawl budget waste: Review Google Search Console’s crawl stats report for pages consuming disproportionate crawl budget: internal search result pages, URL parameters generating duplicate content, and staging/test URLs that have become linked from the production site.
- Site architecture: Verify that the site’s category and subcategory structure produces logical crawl paths. Orphan pages (pages with no internal links pointing to them) are not discovered through crawl and rely entirely on sitemap discovery.
- Redirect chains: Check for redirect chains (A redirects to B redirects to C) using Screaming Frog. Each additional redirect hop loses link equity and adds latency. Resolve chains to single-hop direct redirects.
Indexability (Items 9-16)
- Noindex meta tags: Audit pages with noindex meta robots tags. Confirm each noindexed page is intentionally excluded from the index (login pages, thin content, test pages). Common error: noindex tags left on important pages after a site rebuild.
- Canonical tags: Verify canonical tags are correctly implemented (self-referencing canonicals on canonical pages, canonical tags pointing to the preferred URL on duplicate or near-duplicate pages). Common error: canonical pointing to a different domain or a redirect URL.
- Duplicate content: Use Screaming Frog’s content analysis or Siteliner to identify pages with duplicate or near-duplicate content. Common sources: www vs non-www variants, HTTP vs HTTPS versions, trailing slash vs no trailing slash URLs, and parameter-generated pages.
- HTTP to HTTPS redirect: Verify that all HTTP versions of pages redirect to HTTPS with a 301 redirect. Mixed content (HTTPS page loading HTTP resources) is a secondary issue identified in Chrome DevTools.
- Google Search Console coverage report: Review the Coverage report in Google Search Console for submitted but not indexed URLs. The reasons listed (Crawled but not currently indexed, Discovered but not crawled, Excluded) identify specific indexing problems requiring investigation.
- Hreflang implementation: For multilingual or multi-regional sites, verify hreflang tags are correctly implemented (matching x-default, correct ISO 639-1 language codes, reciprocal hreflang between page versions). Use hreflang testing tools or Screaming Frog’s hreflang report.
- Thin content: Identify pages with very low word count (under 200 words) that provide limited value to users. These pages dilute site-wide content quality signals. Consider consolidating, expanding, or noindexing thin pages.
- Pagination: Verify that paginated page sets do not create duplicate content issues. Since Google deprecated rel=”next” and rel=”prev” in 2019, the standard approach is a self-canonical on each paginated page, load more implementations, or logical pagination with unique content per page.
Site Speed and Core Web Vitals (Items 17-22)
- Largest Contentful Paint (LCP): LCP measures loading performance. The main content element should load within 2.5 seconds for a good score. Check using PageSpeed Insights (Google’s tool) or Chrome User Experience Report (CrUX). Common fixes: image lazy loading, image compression, serving images in WebP or AVIF format, preloading the LCP element.
- Interaction to Next Paint (INP): INP replaced First Input Delay as a Core Web Vitals metric in March 2024. It measures responsiveness across all page interactions. Good INP is below 200ms. Check in CrUX or lab testing with Chrome DevTools. Common fixes: reduce JavaScript execution time, break up long tasks, defer non-critical JavaScript.
- Cumulative Layout Shift (CLS): CLS measures visual stability. Good CLS is below 0.1. Common causes: images without defined dimensions, embeds without set height/width, dynamically injected content above the fold. Check using CrUX and Chrome DevTools Layout Shift debugging.
- Time to First Byte (TTFB): TTFB is the time from the user’s request to the first byte of response received. Good TTFB is below 800ms. Common fixes: server performance improvement, CDN implementation, caching configuration.
- Image optimisation: Check that images are served in next-gen formats (WebP, AVIF), correctly sized for the display context (no serving 2000px images in 400px containers), and compressed appropriately. Use PageSpeed Insights for specific image recommendations.
- Third-party script impact: Audit third-party scripts (analytics, chatbots, advertising, marketing automation) for their performance impact. Each third-party script adds connection overhead and execution time. Load non-critical third-party scripts asynchronously or defer them.
Structured Data and Technical Signals (Items 23-30)
- Structured data implementation: Verify structured data (Schema.org JSON-LD markup) is correctly implemented for relevant schema types (Article, FAQPage, Product, LocalBusiness, BreadcrumbList). Use Google’s Rich Results Test to validate. Common error: structured data present in the code but not matching the visible page content.
- Title tags: Verify all pages have unique, descriptive title tags within 50 to 60 characters. Check for missing titles, duplicate titles (particularly common on e-commerce product variants), and titles that do not reflect the actual page content.
- Meta descriptions: Verify all important pages have unique meta descriptions of 150 to 160 characters that accurately describe the page content. Meta descriptions do not directly affect ranking but influence click-through rate from search results.
- Heading structure: Verify each page has a single H1 tag that aligns with the page’s target keyword and topic. Check that heading hierarchy (H1, H2, H3) is logical and does not skip levels.
- Internal linking anchor text: Review internal link anchor text across the site. Descriptive anchor text (the specific topic of the destination page) communicates topical relevance to Googlebot better than generic anchors (“click here”, “read more”).
- 404 error pages: Identify 404 errors in Google Search Console’s Coverage report and in server logs. External links pointing to 404 pages waste link equity. Redirect to the most relevant existing page or the category page.
- Mobile usability: Check Google Search Console’s Mobile Usability report for issues: text too small to read, clickable elements too close together, viewport not set, content wider than screen. Google uses mobile-first indexing, making mobile usability issues ranking factors.
- Core Web Vitals in Search Console: Review the Core Web Vitals report in Google Search Console for real-user performance data aggregated from Chrome User Experience Report. The field data in CrUX is what Google uses for ranking purposes; lab data from PageSpeed Insights is a diagnostic tool, not the ranking signal directly.



