Technical guide · Audit checklist

The 50-point technical GEO audit

A 50-point technical checklist for sites under 500 pages, with an evidence grade on every category - crawlability, indexability, architecture, rendering, schema, Core Web Vitals and the AI-specific items most audits miss.

Ritik Namdev Ritik Namdev ·Published May 28, 2026 ·17 min read ·Last verified Sep 9, 2026
The short answer

Work the list below top to bottom; it is ordered by dependency, not by importance. Fifty checks across seven categories, sized for a site under about 500 pages. The rule that separates this from an ordinary SEO audit: the major AI crawlers do not render JavaScript, so every load-bearing fact has to exist in the server's first response. Each category carries an evidence grade, because the categories are not equally well supported.

What this page establishes
  • The categories are graded, not equal. A through D rest on documented crawl and index mechanics; category G rests on current crawler behaviour that can change without notice.
  • Rendering is the dividing line. Google renders JavaScript with a median delay of about 5 seconds (Onely testing); GPTBot, ClaudeBot and PerplexityBot are not documented as executing it, per operator crawler documentation. A controlled test is registered but has not been run.
  • Schema is on the list for rich results and entity clarity, not citations. The largest controlled test - Ahrefs, 1,885 pages adding schema against roughly 4,000 controls - found no meaningful citation uplift.
  • Only 48% of sites pass all three Core Web Vitals on mobile at the 75th percentile of real-user loads (HTTP Archive Web Almanac, 2025), and LCP at 62% is the binding constraint.
  • This checklist buys eligibility, not visibility. We know of no published controlled test of a full technical audit's effect on AI citation - see why you cannot prove the audit worked.

Running this checklist through an agent is reasonable for the diagnosis steps and risky for the fixes. The catalogue of agentic SEO failure modes rates which failures a passing build will not catch — robots.txt over-blocking and wrong canonicals being the two that do real damage.

A. Crawlability (points 1–8)

Fact If a crawler cannot reach a page, nothing else on this list matters. Every item here rests on documented behaviour in Google's and the AI operators' own crawler documentation, so this is the least speculative category on the page. Diagnose it by fetching /robots.txt and a sample URL from each template with curl; verify by watching the same paths appear in your server logs afterwards.

  1. robots.txt is valid and non-blocking - a stray Disallow: / can hide your entire site; test it in Search Console and Bing Webmaster Tools, and check it against the full list of Google crawlers and fetchers as well as the AI user agents.
  2. Critical CSS/JS is crawlable - Google renders with headless Chromium; blocking resources makes the rendered page look broken.
  3. XML sitemap submitted and clean - keep it current (≤50,000 URLs / 50MB); Bing has stated that sitemaps remain a primary discovery channel in AI-powered search.
  4. No orphan pages - every indexable URL needs at least one internal link, or it is effectively invisible.
  5. Server returns fast, stable 200s - 5xx errors and slow TTFB throttle crawl rate.
  6. Redirect chains and loops eliminated - use single-hop 301s; chains waste crawl budget and dilute signals.
  7. Status-code hygiene - removed pages return 404/410, not soft-404s that keep engines re-crawling dead URLs.
  8. Faceted / parameter URLs controlled - canonicalise or block infinite filter/sort/session-ID combinations.

Failure mode to watch: a CDN or bot-management rule blocks AI user agents above the application layer, so robots.txt looks permissive and the requests still never arrive. Only the logs reveal it. The AI bot user-agent registry lists the strings to match on, and Cloudflare's 2025 crawler census gives a sense of how much of your traffic these clients already are. Its companion crawl-to-click analysis is the sobering half: granting access and receiving referral traffic are not the same currency.

Search bots allowedOAI-SearchBot, PerplexityBot and Claude-SearchBot can reach the page
Raw HTML carries the factsNo script execution required to read the answer
No blanket DisallowOne line can remove the site from every AI answer
Logs verified by IPUser-agent strings are trivially spoofed

B. Indexability (points 9–15)

Fact Crawlable is not the same as indexable. These seven catch the silent index-killers, and each maps to a documented directive rather than an inference. Diagnose with a crawl plus a header check (curl -I) on one URL per template; verify in the Search Console and Bing Webmaster Tools index reports a week later.

  1. No accidental noindex - a stray meta tag or X-Robots-Tag header is the most common cause of pages vanishing from the index.
  2. Canonical tags self-referential and correct - consolidate duplicate and parameter versions onto one URL.
  3. HTTPS everywhere with a valid cert - a confirmed ranking signal and a trust prerequisite.
  4. One resolving hostname - enforce www-vs-non-www and trailing-slash consistency via 301 to avoid splitting signals.
  5. Meta robots directives audited - check for unintended nofollow, nosnippet or max-snippet limits that suppress snippets.
  6. Hreflang correct (if multilingual) - missing reciprocals cause the wrong language/region version to index.
  7. Thin / duplicate content consolidated - near-duplicates compete with each other and waste the crawl.

Failure mode to watch: nosnippet and aggressive max-snippet values are applied for one reason (stopping scraper previews) and quietly suppress the extractable passage an answer engine would have quoted.

C. Site architecture and internal linking (points 16–22)

Evidence Structure is how crawlers and models work out what your site is about. Depth and link-graph effects on discovery are well established in classic search; their effect on citation specifically is inferred, not measured. Diagnose with a full crawl and a click-depth report; verify by re-crawling and confirming no indexable URL sits more than three clicks from the homepage.

  1. Flat hierarchy (≤3 clicks to any page) - shallow depth ensures every page is reached and prioritised on a small site.
  2. Descriptive, static URL slugs - readable, keyword-bearing URLs help ranking and entity extraction.
  3. Descriptive internal anchor text - anchors are a primary relevance signal; "click here" wastes it.
  4. Breadcrumbs with BreadcrumbList schema - clarify hierarchy for users, search and answer engines.
  5. Contextual internal links between related pages - passes authority and helps map your topical clusters.
  6. Hub pages / HTML sitemap - topical anchors that improve discovery.
  7. Pagination handled cleanly - use crawlable <a href> links, not JS-only, so deep items are discoverable.

Failure mode to watch: a "related posts" module rendered client-side. The links exist for a human auditor and not for the crawler, so the site looks well linked and behaves like a set of orphans.

D. Rendering and JavaScript (points 23–29)

Evidence This is the category most SEO audits skip and most AI-visibility problems hide in. Whether the major AI crawlers execute JavaScript is checkable by fetching a page as each bot and diffing raw HTML against the rendered DOM. Operator documentation says they do not; the controlled test is registered and unrun. The claim that fixing it lifts citations is a mechanism argument, not a measured one. Diagnose by fetching the page with scripts disabled and logged out, then diffing that response against the rendered DOM. Verify by searching the raw HTML for your headline and three key facts.

  1. Core content in the initial HTML (SSR/SSG) - server-rendered or static HTML is the only content most AI crawlers can read.
  2. Client-side-rendered content verified - use URL Inspection's "view rendered HTML" to confirm JS content appears to Googlebot.
  3. Links use real <a href> tags - crawlers follow standard anchors, not onclick navigation.
  4. No content locked behind interaction - tabs/accordions requiring JS events may never be seen.
  5. Lazy-loaded content is crawlable - use native loading="lazy" and confirm content loads on scroll simulation.
  6. Reasonable JS payload - heavy bundles delay rendering and hurt INP.
  7. Graceful no-JS fallback for key facts - GPTBot, ClaudeBot and PerplexityBot read only raw HTML, so primary facts must live there.

Even for Google, JavaScript is a tax rather than a wall: Onely's testing found it takes roughly nine times longer to crawl JS-dependent content than plain HTML. Failure mode to watch: a prerendering layer bolted on in front of an SPA. It satisfies the raw-fetch test and can serve a cached copy that is weeks stale, which trades an invisibility problem for a freshness one.

The single highest-impact fix

If your site is a client-rendered SPA, moving to server-side rendering or static generation is the biggest change available here. View any page's source (Ctrl/Cmd+U): if your headline and key facts are not in the raw HTML, the AI engines cannot read them - and cannot cite them. Hypothesis We would expect this to matter more than any other item on the list. That is a mechanism we are describing, not a lift we have measured, and no first-party test of this specific rewrite exists on this site.

E. Structured data and schema (points 30–36)

Evidence Schema earns Google rich results and clarifies your entity. On the best available evidence it does not win AI citations. Ahrefs tracked 1,885 pages that added schema against roughly 4,000 controls and found no meaningful uplift, with AI Overview appearances dipping slightly; our reading of it, and the replication question it leaves open, is in the schema markup and AI citations study. Diagnose with the Rich Results Test and the Schema Markup Validator; verify in the Search Console enhancement reports. You can generate every type below with the free schema markup generator.

  1. Valid JSON-LD (no errors) - check with Google's Rich Results Test and the Schema Markup Validator.
  2. Organization + sameAs - establishes your brand as a recognised entity and links it to authoritative profiles.
  3. Article / BlogPosting with author + datePublished - signals freshness, authorship and E-E-A-T.
  4. Person schema for authors - ties content to a credentialed entity.
  5. FAQPage / QAPage where genuinely applicable - structures Q&A in an extractable format.
  6. Product / Offer / Review (e-commerce) - powers price, availability and rating rich results.
  7. BreadcrumbList + WebSite / WebPage - reinforces structure and enables sitelinks search box eligibility.

Failure mode to watch: markup that disagrees with the visible page - an author or a modified date present in JSON-LD and nowhere in the body. It validates cleanly and gives a machine two conflicting answers.

F. Performance and Core Web Vitals (points 37–43)

Evidence Speed is a ranking system on Google and a crawl-rate factor everywhere. No published evidence shows an AI retrieval system weighting page speed when it selects a source. The three Core Web Vitals are measured at the 75th percentile of real-user loads and documented in Google's own Search guidance. Diagnose with field data from PageSpeed Insights or CrUX, never lab data alone; verify 28 days after the fix ships, because the field dataset is a trailing window.

MetricMeasuresGoodNeeds workPoor
LCP (Largest Contentful Paint)Load speed≤ 2.5s2.5–4.0s> 4.0s
INP (Interaction to Next Paint)Responsiveness≤ 200ms200–500ms> 500ms
CLS (Cumulative Layout Shift)Visual stability< 0.10.1–0.25> 0.25
  1. LCP ≤ 2.5s - your largest above-the-fold element loads fast.
  2. INP ≤ 200ms - the metric that replaced FID in March 2024.
  3. CLS < 0.1 - nothing jumps around as the page loads.
  4. Optimised, correctly-sized images (WebP/AVIF) - images are the most common LCP element.
  5. Explicit width/height or aspect-ratio on media - prevents layout shift.
  6. Fast TTFB / caching / CDN - server response underlies both LCP and crawl rate.
  7. Mobile-first verified - Google indexes the mobile version; it must contain all content and pass CWV.
48%

of sites pass all three Core Web Vitals on mobile, at the 75th percentile of real-user loads.

HTTP Archive Web Almanac · 2025
~5s

median delay between Google crawling a page and rendering its JavaScript.

Onely

longer for Google to crawl JavaScript-dependent content than equivalent plain HTML.

Onely

Those figures come from the 2025 Web Almanac performance chapter, the only large-scale, openly published field dataset on this. Failure mode to watch: optimising a lab score. Lighthouse runs on a synthetic device and can improve while the field distribution that Google actually uses does not move at all.

G. AI-crawler and GEO specifics (points 44–50)

Hypothesis This is the layer ordinary audits do not have, and the layer with the least evidence behind it. Every item here is phrased as an eligibility check rather than a lever, because each rests on current crawler behaviour, which is software and can change without notice. Diagnose from raw server logs filtered by user agent and verified by IP; verify by confirming the bots you intended to admit actually arrive, and that they fetch the URLs you care about.

  1. AI crawlers explicitly configured in robots.txt - decide access for OAI-SearchBot, PerplexityBot, Claude-SearchBot and the rest; blocking the search bots removes you from those engines' answers.
  2. IndexNow enabled - notifies Bing (and so ChatGPT and Copilot) of new URLs; Bing typically crawls within 1–3 days, and has published its own account of the speed-up.
  3. Answer-first, extractable content - lead with concise, self-contained answers and clear headings so a model can lift and cite a passage.
  4. Factual, citable formatting - stats, dates, lists and tables with sources are more quotable than prose.
  5. Strong entity / authority signals - author schema, sameAs and visible bylines.
  6. llms.txt considered (optional, low-cost) - an emerging convention Google has called purely speculative; treat it as experimental, and see the first-party log test before spending time on it.
  7. Content freshness with clear timestamps - visible "updated" dates and genuine refreshes are associated with both ranking and AI retrieval; no controlled test isolates the effect.

Failure mode to watch: a rolling "updated today" timestamp with no substantive edit behind it. For the numbers rather than the assertions, the GEO tactic evidence scoreboard grades each tactic on this list by how much support it actually has, and where AI SEO statistics come from traces the widely-repeated figures back to origin.

What order to fix them in

The order to run it in
  1. 01 Fetch raw Request the page with JavaScript disabled, logged out
  2. 02 Check blockers robots.txt, noindex, canonicals, status codes
  3. 03 Diff rendered vs raw Anything only in the DOM is invisible to AI crawlers
  4. 04 Validate markup JSON-LD errors, breadcrumbs, author and dates
  5. 05 Measure field data LCP, INP and CLS at the 75th percentile
  6. 06 Read the logs Which bots actually arrived, and how often

Fix them in dependency order, because early failures make later work pointless. A page an engine cannot crawl cannot be indexed; a page it cannot render cannot be read; a page it cannot read cannot be cited no matter how perfect its schema.

  1. The blockers (A and B, points 1–15). A single Disallow: / or stray noindex zeroes out everything downstream.
  2. Rendering (D, points 23–29). The highest-leverage GEO fix and the one most audits skip.
  3. Architecture and the GEO layer (C and G). Internal linking, IndexNow, answer-first structure, freshness.
  4. The enhancements (E and F). Schema and Core Web Vitals are multipliers on a foundation that already works, not substitutes for one.

On a sub-500-page site the sequence is a focused day or two, then a light quarterly re-check for regressions. The usual ones: a redesign that reintroduces client-side rendering, a plugin that adds a rogue noindex, a CMS update that breaks schema.

Why a GEO audit differs from an SEO audit

Three things change when the audience is not only Googlebot.

  • Rendering becomes the dividing line. Google renders JavaScript with a ~5-second median delay. GPTBot, ClaudeBot and PerplexityBot do not execute it at all.
  • The unit of success shifts from ranking to citation, which rewards answer-first structure and discrete extractable facts.
  • Entity and authority signals carry more weight. On correlational evidence, sameAs, author markup and off-site brand mentions track AI source selection more closely than they track classic ranking.

Google's own guidance on optimising for AI experiences makes a compatible point in gentler language: there is no separate AI checklist, only a page a machine can read. If the vocabulary is unfamiliar, the AI search glossary defines every term used here, and what AI SEO means sets out the umbrella this work sits under.

Which items do not transfer between engines

A single checklist implies a single reader. There is not one.

ItemWhy it does not transfer
JavaScript renderingGoogle renders. Several AI crawlers do not. The same page has two different contents depending on the reader.
Structured dataGoogle uses it for rich results. Live-fetch tests suggest some AI systems ignore it. Same markup, different value.
Sitemaps and IndexNowThese speak to search indexes. An engine fetching live may never consult either.
Core Web VitalsA ranking input for one audience. Largely irrelevant to a bot that fetches HTML and leaves.
Internal linkingHelps discovery everywhere. Helps ranking only where a link graph is used.

This is why the order above puts rendering above schema: the items that transfer everywhere come first.

What the rendering fix looks like on one page

Category D is abstract until you see the same page in two states. Both versions below render identically in a browser. Only one of them exists for a client that does not run JavaScript.

StateWhat a non-rendering fetch receivesConsequence
Before. Article body and the related-posts module assembled client-side from an API response.A shell: navigation, footer, and an empty container. The headline and the three key facts are absent from the raw HTML, and the internal links do not exist as <a href>.Nothing to extract and nothing to follow. The site looks well linked to a human auditor and behaves like a set of orphans — the failure mode named in category C.
After. Same page server-rendered or statically generated, related posts emitted as plain anchors.Headline, the three key facts, and every internal link present in the initial HTML, with scripts disabled and logged out.The page is a retrieval candidate rather than a shell, and the discovery path to its neighbours survives. This is exactly the diff the category-D diagnosis produces.

Evidence The readability difference is checkable by fetching the page yourself. That fixing it raises citations remains a mechanism argument, and this page does not upgrade it.

Eight ways an audit gives a wrong answer

Most bad audits are not careless. They are run in the wrong conditions.

  1. Auditing in a browser. Your browser runs JavaScript. Half this checklist is about clients that do not.
  2. Auditing while logged in. Sessions change what a server sends.
  3. Auditing one page. A clean homepage says nothing about your article template.
  4. Trusting a crawler tool's defaults. Many execute JavaScript by default, hiding the exact failure you are looking for.
  5. Ignoring subdomains. Each host has its own robots file.
  6. Testing from one location. Some stacks vary responses by region.
  7. Auditing staging. Staging often carries blocking rules production does not, and sometimes the reverse.
  8. Skipping the log check. The checklist describes what a bot could do; logs show what it did.

Only the last one is evidence. The other seven describe conditions under which a passing audit means nothing.

The tool stack to run it with

Most of the 50 points are covered by free, first-party tools.

  • Google Search Console - indexation status, coverage errors, URL Inspection with rendered-HTML view, Core Web Vitals field data. Your primary lens for A, B and F.
  • Bing Webmaster Tools - Bing indexation, IndexNow submission, and crawl data Search Console cannot give you. Essential for category G.
  • A crawler - Screaming Frog (free up to 500 URLs, exactly this guide's ceiling) or Sitebulb surfaces orphan pages, redirect chains, missing canonicals, broken status codes and duplicate titles in one pass. Covers most of A, B and C.
  • Rich Results Test and Schema Markup Validator - validates every JSON-LD block (category E).
  • PageSpeed Insights / CrUX - LCP, INP and CLS against the real-user thresholds (category F).
  • Your raw server logs - the only way to confirm which AI crawlers visit and how often. Filter by user agent, verify by IP; the technique is detailed in the AI crawler guide, and the Claude Code for SEO guide covers scripting the raw-fetch and diff steps.

None of them answers the question that matters most: whether an AI engine can read your content. That test is free and manual. Open a page, view source, and search for your headline and key facts. If they are in the raw HTML, the AI crawlers can see them. If they only appear in the rendered DOM, you have a rendering problem no other tool will flag as urgent.

Why you cannot prove the audit worked

Everything changes at once. An audit is a batch of fixes, and attributing a later improvement to any single one is not possible from the outside. The baseline moves. Engines update during your remediation window, so a change in your numbers may be theirs. Success is invisible. The best outcome is often nothing bad happening, and prevented failures leave no trace in any dashboard. Selection bias. Teams that run audits tend to be teams doing other things well, so any correlation with outcomes is heavily confounded.

Open question We know of no published controlled test of a full technical audit's effect on AI citation. That absence is worth stating plainly, given how confidently this kind of work is usually sold. If server rendering turned out to show no citation effect, the highest-priority item on this list would lose its justification - and that result would go into the null results registry rather than quietly disappear.

Open questions and what would change this page

Open question Does any AI system weight page speed at retrieval time? The mechanism is unclear and no public test exists. Evidence either way would move category F up or down.

Open question How fast do these systems notice a fixed page? Recrawl behaviour after remediation is barely documented; the crawl-to-citation latency study is the registered attempt to measure it.

Open question Does content hidden behind a click count as present? It is in the DOM but not visible, and nobody has published a test of how that is treated.

Three findings would force a rewrite of this page.

  • Evidence that a major AI crawler renders JavaScript. That would reorder the priorities above.
  • A replication of the schema study reaching a different conclusion. Category E would move from cautionary to supportive.
  • An operator documenting that it consults sitemaps or IndexNow at answer time. That would raise those items for AI purposes.

Last verified: September 2026

September 2026
  • Restructured so the checklist leads the page and the background follows it.
  • Added an evidence grade to every one of the seven categories, so a reader can tell which items rest on documented mechanics and which rest on current crawler behaviour.
  • Cut the stakeholder-reporting and "why it compounds" sections; neither carried evidence.
July 2026
  • Added the "what does not transfer between engines" table and the eight audit failure modes.

Next: generate the markup for category E with the free schema markup generator. Then read the GEO tactic evidence scoreboard to see which of the category-G items have evidence behind them and which do not. Everything on this site that needed testing gets tested in the studies.

§ References

Sources

web.dev - Defining the Core Web Vitals metrics thresholdsweb.dev/articles/defining-core-web-vitals-thresholds web.dev - INP becomes a Core Web Vital on March 12web.dev/blog/inp-cwv-march-12 Google Search Central - Core Web Vitals & Searchdevelopers.google.com/search/docs/appearance/core-web-vitals HTTP Archive - 2025 Web Almanac: Performancealmanac.httparchive.org/en/2025/performance Google Search Central - Large site owner's guide to crawl budgetdevelopers.google.com/search/docs/crawling-indexing/large-site-managing-crawl-budget Google Search Central - Build and submit a sitemapdevelopers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap Onely - Google's rendering delay is 5 secondswww.onely.com/blog/googles-rendering-delay-5-seconds Onely - Google needs 9× more time to crawl JS than HTMLwww.onely.com/blog/google-needs-9x-more-time-to-crawl-js-than-html Ahrefs - We tracked 1,885 pages adding schemaahrefs.com/blog/schema-ai-citations Cloudflare - From Googlebot to GPTBot: who's crawling in 2025blog.cloudflare.com/from-googlebot-to-gptbot-whos-crawling-your-site-in-2025 Semrush - AI Overviews study (prevalence)www.semrush.com/blog/semrush-ai-overviews-study Bing Webmaster Blog - Keeping content discoverable with sitemaps in AI searchblogs.bing.com/webmaster/July-2025/Keeping-Content-Discoverable-with-Sitemaps-in-AI-Powered-Search Momentic - List of top AI search crawlers + user agentsmomenticmarketing.com/blog/ai-search-crawlers-bots Search Engine Land - Crawl budget: what you need to know in 2025searchengineland.com/crawl-budget-what-you-need-to-know-in-2025-448961 Google Search Central - Overview of Google crawlers and fetchersdevelopers.google.com/search/docs/crawling-indexing/overview-google-crawlers Google Search Central - AI features and your websitedevelopers.google.com/search/docs/appearance/ai-features Google Search Central - Optimising for AI experiencesdevelopers.google.com/search/docs/fundamentals/ai-optimization-guide OpenAI - Bots and crawler documentationplatform.openai.com/docs/bots Anthropic - Does Anthropic crawl data from the web?support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler Perplexity - PerplexityBot and crawler documentationdocs.perplexity.ai/docs/resources/perplexity-crawlers Onely - What makes content LLM-friendlywww.onely.com/blog/llm-friendly-content Bing - IndexNow: getting startedwww.bing.com/indexnow/getstarted Bing Webmaster Blog - IndexNow drives smarter and faster content discoveryblogs.bing.com/webmaster/May-2025/IndexNow-Drives-Smarter-and-Faster-Content-Discovery Wikipedia - IndexNowen.wikipedia.org/wiki/IndexNow llmstxt.org - The llms.txt proposalllmstxt.org Search Engine Journal - Google says llms.txt is purely speculative for nowwww.searchenginejournal.com/google-says-llms-txt-is-purely-speculative-for-now/577576 Ahrefs - AI SEO statisticsahrefs.com/blog/ai-seo-statistics Cloudflare - Crawlers to clicks: AI bot crawl-to-referral ratiosblog.cloudflare.com/crawlers-click-ai-bots-training Wikipedia - Generative engine optimizationen.wikipedia.org/wiki/Generative_engine_optimization
FAQ

Frequently asked questions

How is a technical GEO audit different from a normal SEO audit?
A classic SEO audit optimises for Google's crawl-render-index-rank pipeline. A GEO audit adds a second audience - AI answer engines - most of which don't render JavaScript and choose citations rather than ranking blue links. That shifts priority toward raw-HTML content, extractable facts, and entity/authority signals.
What are the current Core Web Vitals thresholds?
LCP ≤ 2.5s, INP ≤ 200ms, CLS < 0.1, all measured at the 75th percentile of real-user loads. INP replaced FID on March 12, 2024.
Does adding schema markup increase AI citations?
The largest controlled study (Ahrefs, 1,885 pages vs 4,000 controls) found no meaningful uplift - AI Overviews actually dipped slightly. Schema still earns Google rich results and reinforces your entity, so implement it for those reasons, not as a citation lever.
My content loads via JavaScript - is that a problem?
For Google, usually not (it renders JS with a ~5-second median delay). For AI crawlers, yes - GPTBot, ClaudeBot and PerplexityBot don't execute JavaScript, so anything injected client-side is invisible to them. Use server-side rendering (SSR) or static generation (SSG).
Is llms.txt worth implementing?
It's a low-cost experiment at best. Google has said it won't support it and measured AI-crawler usage is negligible - see the llms.txt log test. Prioritise robots.txt, clean HTML and schema first.
How often should I re-run this audit?
Quarterly is enough for most sites under 500 pages. Re-run it immediately after any redesign, framework upgrade, CDN change or CMS migration. Those four events cause most of the regressions we would expect to find. Routine content publishing rarely breaks anything on this list.
If I fix all 50 points, will my citations go up?
We cannot promise that, and neither should anyone else. The audit removes reasons a system might fail to read you. It does not make your content worth quoting. Think of it as eligibility, not advantage. A site that fails these checks has a ceiling. A site that passes them still has to compete on substance.
Which single point matters most?
Whether your load-bearing content exists in the raw HTML response. Everything else on the list is an improvement to a page that can already be read. That one item decides whether the page can be read at all.
Ritik Namdev
Written by

Ritik Namdev

Growth · SEO · GEO

Growth marketer documenting a brand-new site's climb into Google and the AI engines - in public, with real numbers. Every tactic here is tested on real sites before it's published.

The Lab · Weekly

One experiment. Every week.

The field notes in your inbox - one thing I tested, the raw numbers behind it, and what it means for getting cited by AI.

Free forever. Unsubscribe anytime.