How to use this checklist: Work through each section systematically. Check items that are already in place and flag any gaps for action. Priority items are marked with ★ — fix these first if you are short on time.

Crawlability (Items 1–10)

  1. Robots.txt exists and is valid. Verify at yourdomain.com/robots.txt. Ensure it does not accidentally block Googlebot from crawling important pages. See our Robots.txt Complete Guide for correct syntax.
  2. No critical pages are blocked in robots.txt. Run your robots.txt through Google Search Console's robots.txt tester to check rules.
  3. XML sitemap exists and is submitted to Google Search Console. See our XML Sitemap Guide for how to create and submit one.
  4. XML sitemap only contains indexable, canonical URLs. Do not include 404 pages, redirects, noindex pages, or non-canonical URLs in your sitemap.
  5. Sitemap is referenced in robots.txt. Add Sitemap: https://yourdomain.com/sitemap.xml to your robots.txt file.
  6. Crawl errors are monitored in Google Search Console. Check the Pages report regularly for 404 errors, server errors, and redirect chains.
  7. No important pages return 4xx or 5xx status codes. Every page that should be live must return a 200 status.
  8. Redirect chains are minimal. Chains longer than 2 hops waste crawl budget and dilute PageRank. Redirect directly from A to C rather than A → B → C.
  9. Internal links do not point to redirected URLs. Update internal links to point directly to the final destination URL.
  10. Pagination is handled correctly. Use self-referencing canonicals on paginated pages if content is unique, or consider consolidating paginated content.

Indexing and URL Structure (Items 11–20)

  1. All important pages are indexed. Use site:yourdomain.com in Google Search or the URL Inspection tool in Search Console to verify indexing.
  2. Canonical tags are implemented correctly. Every page should have a canonical tag pointing to the preferred version. See our guide on Canonical URLs.
  3. No duplicate content issues. Check for duplicate pages from www vs non-www, HTTP vs HTTPS, trailing slash vs no trailing slash, and query parameters.
  4. Preferred domain is set and consistently redirected. Pick one version (e.g., https://www.yourdomain.com) and redirect all others to it with a 301.
  5. URL structure is clean and descriptive. Use short, readable, keyword-rich URLs with hyphens. Avoid dynamic parameters in crawlable URLs where possible.
  6. No orphan pages exist. Every indexable page should be reachable via internal links from at least one other page on the site.
  7. Noindex tags are only on pages you intend to exclude. Audit for accidental noindex tags — a common post-launch issue after staging sites are pushed live.
  8. Hreflang tags are implemented correctly for multilingual sites. Each language/region variant must reference all other variants, including itself, in the hreflang annotation.
  9. Thin or low-quality pages are either improved or noindexed. Pages with very little unique content dilute site quality signals.
  10. URL depth is reasonable. Important pages should not be more than 3–4 clicks from the homepage. Deep pages get crawled and ranked less effectively.

Page Speed and Core Web Vitals (Items 21–30)

  1. LCP is under 2.5 seconds. Check in PageSpeed Insights or Google Search Console. The most common fix is optimising and prioritising the LCP image.
  2. INP is under 200 ms. High INP usually means long JavaScript tasks blocking the main thread. Profile with Chrome DevTools.
  3. CLS is under 0.1. Set explicit width and height on all images and reserve space for ads and dynamic content.
  4. TTFB is under 800 ms. Improve server response time with caching, faster hosting, or a CDN.
  5. Images are compressed and served in WebP or AVIF. Use a free image compressor to reduce file sizes before uploading.
  6. Images have explicit width and height attributes. Prevents layout shift while images load.
  7. LCP image has fetchpriority="high" and is not lazy loaded. This ensures the most important image loads as fast as possible.
  8. Render-blocking CSS and JS are eliminated or deferred. No synchronous scripts in the <head> that are not critical.
  9. Unused CSS and JS are removed. Use coverage tools in DevTools to identify dead code.
  10. Browser caching is set with long cache lifetimes for static assets. Cache-Control headers should set max-age of at least one year for versioned assets.

Mobile and Security (Items 31–38)

  1. Site is mobile-friendly. Test with Google's Mobile-Friendly Test. Google uses mobile-first indexing — your mobile experience is what gets ranked.
  2. Site is served over HTTPS. HTTPS is a confirmed ranking signal. All pages should redirect HTTP to HTTPS.
  3. SSL certificate is valid and not near expiry. Set up auto-renewal and monitoring to avoid unexpected certificate lapses.
  4. Mixed content warnings are resolved. All resources (images, scripts, CSS) on HTTPS pages must themselves be loaded over HTTPS.
  5. Viewport meta tag is present on every page. Required: <meta name="viewport" content="width=device-width, initial-scale=1">.
  6. Touch targets are large enough. Buttons and links on mobile should be at least 44×44 px to pass Google's mobile usability check.
  7. Font sizes are readable without zooming on mobile. Minimum 16 px for body text on mobile.
  8. No intrusive interstitials on mobile. Popups that cover the main content on mobile landing pages are penalised by Google's intrusive interstitials policy.

Structured Data (Items 39–44)

  1. JSON-LD structured data is implemented on key page types. Article, Product, FAQPage, BreadcrumbList, LocalBusiness — implement whichever types are relevant to your site.
  2. Structured data is validated with Google's Rich Results Test. Check for errors and warnings after any structured data changes.
  3. No structured data errors in Google Search Console. The Enhancements section flags structured data issues that prevent rich results.
  4. BreadcrumbList schema is implemented site-wide. Helps Google understand your site hierarchy and can display breadcrumbs in search results.
  5. FAQPage schema is implemented on FAQ content. Can generate rich results with expandable question/answer pairs in SERPs.
  6. Schema markup is not manipulative or misleading. Google's guidelines prohibit using schema to misrepresent page content.

On-Page Technical Factors (Items 45–50)

  1. Every page has a unique, keyword-optimised title tag. 50–60 characters, naturally includes the primary keyword.
  2. Every page has a unique meta description. 150–160 characters, compelling and click-worthy. Read our guide on writing effective meta descriptions.
  3. Only one H1 per page. The H1 should clearly describe the page topic and include the primary keyword.
  4. Heading hierarchy is logical (H1 → H2 → H3). Do not skip heading levels. Headings structure content for both users and crawlers.
  5. Internal linking is strategic and consistent. Link relevant pages together to distribute PageRank and help users navigate. See our Internal Linking Strategy guide.
  6. 404 page is helpful and links back to the site. A custom 404 page with navigation and a search box keeps users on your site when they hit a dead end.