Technical SEO Checklist: The Ultimate Guide for 2026
What Is a Technical SEO Checklist?
A technical SEO checklist is a structured list of checks that confirms search engines can crawl, render, and index your site, and that pages load fast, work on mobile, and are secure. Each item names what to test, how to test it, and what a passing result looks like.
Googlebot first crawls a URL, then renders it, then decides whether to index it. A failure at any step can keep a page out of search results, so a good checklist follows that order.
|
Check |
How to test |
Pass condition |
|
Googlebot can reach a key page |
Run a live test on the URL in Google Search Console's URL Inspection tool |
The URL is crawlable and indexable, and the rendered page shows your main content |
What's Included in a Technical SEO Audit Checklist for 2026?
A technical SEO audit checklist for 2026 covers eight areas: crawlability, indexability, rendering, site architecture, Core Web Vitals, mobile and security, structured data, and AI search access. Start with the high-priority rows, because crawl and index failures block everything below them.
|
Category |
What it checks |
Primary tool |
Priority |
|
Crawlability |
robots.txt, sitemaps, status codes, redirects |
Google Search Console, site crawler |
High |
|
Indexability |
Index status, canonicals, noindex, duplicates |
Search Console |
High |
|
Rendering |
Main content visible without heavy JavaScript |
URL Inspection |
High for JS-heavy sites |
|
Architecture and linking |
Click depth, orphan pages, anchor text |
Site crawler |
Medium |
|
Core Web Vitals |
LCP, INP, CLS |
PageSpeed Insights |
Medium |
|
Mobile and security |
Mobile parity, HTTPS, mixed content |
Search Console |
Medium |
|
Structured data |
Valid markup that matches visible content |
Rich Results Test |
Medium |
|
AI search access |
Crawler access rules |
robots.txt, server logs |
Medium |
What changed in 2026 (and what didn't)
-
FAQ rich results ended. Google stopped showing FAQ rich results on May 7, 2026, though FAQPage remains valid markup that can stay on the page. Search Engine Journal
-
Google's AI guidance arrived. Google's May 2026 guide says AI Overviews and AI Mode are rooted in its core ranking and quality systems. It also says llms.txt files and other special markup are not needed for Google Search. Search Engine Journal Google
- Core Web Vitals targets are held. The published good thresholds are still 2.5 seconds for LCP, 200 milliseconds for INP,NP and 0.1 for CLS. rgb
1. Set Up Your Audit: Tools and Baseline
Set up your tools and save a baseline before changing anything, so you can prove what improved.
Free stack: Google Search Console, Bing Webmaster Tools, PageSpeed Insights (which shows CrUX field data), and the free version of Screaming Frog, which caps the number of URLs it crawls.
Paid stack: Sitebulb or a licensed Screaming Frog for large sites.
Baseline checklist
-
Verify the site in both webmaster tools.
-
Export indexed and non-indexed page counts.
-
Note Core Web Vitals status for mobile and desktop.
- Run one full crawl and save the file.
2. Crawlability Checklist
Crawlability means Googlebot can reach your important URLs without errors, blocks,s or long redirect trails. Work through these checks in order.
- robots.txt loads. Pass: it returns a 200 status, has no blanket Disallow: /, and doesn't block the CSS or JavaScript needed for rendering.
- XML sitemap is clean. Pass: it is submitted in Search Console and lists only indexable, canonical URLs that return 200, within 50,000 URLs and 50 MB uncompressed per file.
- Status codes are correct. Pass: key pages return 200, removed pages return 404 or 410, and none return 5xx errors.
- Redirects are short. Pass: permanent moves use a single 301 hop, with no chains or loops.
- Googlebot Smartphone sees your content. Pass: a crawl using that user agent finds the same main content and links as desktop.
- Log files show healthy crawling (larger sites). Pass: most bot requests hit indexable pages, not parameters or redirects.
3. Indexability Checklist
Indexability means the pages you want in search results are indexed, and the ones you don't want are not. Open the Page indexing report in Google Search Console and match each status to a fix.
Status → likely cause → fix
-
Excluded by "noindex" tag: a meta robots tag or X-Robots-Tag header blocks indexing. Remove it from pages meant to rank. Use the header for non-HTML files such as PDFs.
-
Duplicate without user-selected canonical: Google found near-identical URLs and chose one itself. Add a self-referencing canonical to each page and point variants (http/https, www, trailing slash, parameters) to the preferred URL.
-
Crawled – currently not indexed: Google fetched the page but didn't index it, often because the content is thin or duplicated. Improve or consolidate the page.
-
Discovered – currently not indexed: Google knows the URL but hasn't crawled it yet. Add internal links and check that the page is in your sitemap.
Soft 404: the page returns 200 but reads like an error. Return a real 404 or 410, or restore useful content.
Also check
- Robots directives, canonicals, and sitemap entries don't contradict each other.
- Faceted navigation filters don't create endless indexable URLs. Canonicalize or block low-value combinations.
4. Site Architecture and Internal Linking Checklist
Good architecture lets crawlers and readers reach every important page through clear links. Check these criteria.
-
Orphan pages: none. Pass: every indexable page has at least one internal link. Compare a crawl against your sitemap to find them.
-
Click depth: key pages sit close to the homepage. The "three-click rule" is a useful guideline, not a Google requirement, so judge by importance, not a fixed number.
-
Broken and redirected links: none in navigation or body content. Update links to point to final URLs.
-
Anchor text: descriptive and specific, not "click here".
-
Breadcrumbs: visible on deeper pages, showing the path from the homepage.
- URLs: short, readable, lowercase, hyphenated, and stable. Avoid changing them without redirects.
5. JavaScript Rendering Checklist
JavaScript rendering is fine for Google when your main content and links appear in the rendered page, but relying on client-side code adds risk and delay. Test it with these steps.
- Compare raw and rendered HTML. View the page source, then inspect the rendered DOM in your browser. Pass: headings, body copy, and links that matter appear in the rendered version, and ideally in the raw HTML too.
- Run a live test in URL Inspection. Open the rendered HTML and take a screenshot of the URL. Pass: your main content shows, not a blank shell or loading spinner.
- Check links are real links. Pass: navigation uses <a href> elements, not click handlers alone, so crawlers can follow them.
- Check resources aren't blocked. Pass: robots.txt doesn't block the JavaScript or CSS the page needs to render.
- Test error pages. Single-page apps often show a "not found" message but return a 200 status. Pass: missing pages return a true 404 status, not a soft 404.
- Check lazy loading. Pass: content below the fold loads when scrolled into view, not only after a click.
Server-side rendering (SSR) or pre-rendering usually gives crawlers complete HTML fastest. Client-side rendering (CSR) can work, but costs more crawl effort and depends on scripts running correctly
6. Core Web Vitals and Page Speed Checklist
Core Web Vitals pass when at least 75% of real visits meet the "good" threshold on all three metrics. Judge performance by field data from real users (CrUX), which PageSpeed Insights and Search Console show. Lab tools like Lighthouse help you debug but aren't the score.
|
Metric |
Measures |
Good |
Poor |
|
LCP (Largest Contentful Paint) |
Loading |
2.5 s or less |
Over 4 s |
|
INP (Interaction to Next Paint) |
Responsiveness |
200 ms or less |
Over 500 ms |
|
CLS (Cumulative Layout Shift) |
Visual stability |
0.1 or less |
Over 0.25 |
Fixes by metric
-
LCP: compress the main image, give it fetchpriority="high", don't lazy-load it, and cut server response time (TTFB) with caching and a CDN. If your audience spans India and the US, check that the CDN has edge locations in both regions.
-
INP: break up long JavaScript tasks, defer non-critical scripts, and keep event handlers light.
- CLS: set width and height on images and embeds, and reserve space for ads and banners.
Keep expectations realistic. Google's own staff have described Core Web Vitals as a small ranking factor in most cases, so treat these fixes as a user-experience investment, not a ranking shortcut.
7. Mobile and Security Checklist
Google indexes the mobile version of your pages, so mobile must carry the same content as desktop, and every page should load securely over HTTPS.
Mobile
-
Content parity: the mobile page has the same main content, links, structured data, and meta tags as desktop.
-
Viewport: a viewport meta tag is present so the layout scales to the screen.
-
Usability: text is readable, and tap targets are spaced apart. Avoid full-screen pop-ups that block content.
Security
-
HTTPS everywhere: a valid certificate is installed, and every http:// URL redirects to https:// in one 301 hop.
-
No mixed content: images, scripts, and stylesheets all load over HTTPS.
-
Search Console: the Security issues report shows no warnings.
8. Structured Data Checklist
Structured data helps search engines understand a page, but it must describe what visitors can actually see. Use JSON-LD, and add only the types that fit.
Which schema to use
-
Article (or BlogPosting): on every blog post, with headline, author, publisher, published date, and modified date.
-
Person: for a named author, with a short bio and profile links.
-
Organization: once, site-wide, with name, logo, and official profiles.
-
BreadcrumbList: only if a breadcrumb trail is visible on the page.
Validate
-
Test each template in the Rich Results Test and the Schema Markup Validator.
-
Check that markup values match the visible text, such as titles, dates, and authors.
-
Recheck after template or plugin updates.
9. AI Search Access Checklist (AI Overviews, ChatGPT, Perplexity)
Google says AI Overviews and AI Mode draw on its normal Search index, so a page Googlebot can crawl and index needs no special AI markup. Other AI tools use their own crawlers, so check each one
|
Bot or token |
Operator |
Purpose |
If you block it |
|
OAI-SearchBot |
OpenAI |
ChatGPT search |
Your site isn't shown in ChatGPT search answers, though it can still appear as a link |
|
GPTBot |
OpenAI |
Model training |
Content isn't used for training; search settings are separate |
|
PerplexityBot |
Perplexity |
Search indexing |
Your pages may not appear in Perplexity search results |
|
Google-Extended |
|
Gemini training and grounding (a robots.txt token, not a crawler) |
No effect on Google Search inclusion or ranking |
Checks
-
Allow the search bots you want. Pass: robots.txt doesn't block OAI-SearchBot or PerplexityBot. Decide on training bots like GPTBot separately, because each setting is independent. Both vendors say changes can take about 24 hours to apply.
-
Check your firewall. Pass: your CDN or WAF doesn't block these bots. OpenAI and Perplexity publish IP ranges you can allow.
-
Monitor Google. Pass: you review the Generative AI performance report in Search Console.
- Optional: IndexNow. It notifies Bing, Yandex, Naver, Seznam, and Yep when URLs change. Google doesn't support it.
Technical SEO Checklist for Agencies
Agencies get more value from this checklist by running it as a repeatable process, not a one-off. Structure it in three phases.
-
Onboarding: run the full checklist once on a new client, then set the baseline metrics from H2-3.
-
Recurring: re-run crawlability, indexability, and Core Web Vitals monthly; run the full checklist quarterly.
-
Reactive: re-check after a migration, redesign, or a traffic drop.
Severity scoring. Rate each finding High, Medium, or Low: High blocks crawling, indexing, or availability; Medium hurts rankings or user experience without blocking access; Low is a minor best-practice gap. Fix High issues first.
Developer ticket template
- Issue:
- Pages affected (sample URLs or count):
- Severity: High / Medium / Low
- How to reproduce:
- Expected fix: