Free AI search audit: can AI engines
fetch, read and trust
your site?
A 0–100 AI readiness score in about ten seconds: whether your robots.txt lets the citation bots in, whether there’s an llms.txt, whether the text is readable without JavaScript, whether the schema tells engines who you are — and the exact fix for each thing that fails, emailed to you.
A GEO audit, an AEO checker, an AI readiness check — same job: the site-side reasons an AI answer can’t cite you. Checks the page you enter plus up to four more from your sitemap. One run per domain per day.
Ten checks. Only the ones that decide whether an AI engine can cite you.
The AI readiness score measures whether answer engines can fetch a site (robots rules, sitemap), read it (server-rendered text, snippet permissions, answer-first structure) and trust it (Organization and Article schema, llms.txt, freshness). Site checks run once and are worth 42 points; page checks run on every crawled page, are averaged, and are worth 54. Grades: A 90+, B 80+, C 70+, D 60+, F below.
Site checks — once per domain (42 points)
| Check | Passes when | Failing means | Points |
|---|---|---|---|
| AI citation bots allowed | robots.txt doesn't block GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended or Bingbot site-wide | A blocked bot can't fetch a single page, so that engine can never cite you | 20 |
| llms.txt served | /llms.txt returns 200 in the llmstxt.org format | No manifest for LLM tools to learn what the site is | 8 |
| Organization schema | Homepage carries Organization JSON-LD with name, url and sameAs | Engines can't resolve who the site is or connect it to profiles they trust | 10 |
| XML sitemap | /sitemap.xml (or the one robots.txt declares) lists at least one URL | Discovery depends on links alone | 4 |
Page checks — per crawled page, averaged (54 points)
| Check | Passes when | Failing means | Points |
|---|---|---|---|
| Snippet not suppressed | No noindex, nosnippet or max-snippet:0 in meta robots or X-Robots-Tag | The engine may read the page but can't quote it | 12 |
| Content readable without JavaScript | The main text is in the raw HTML (heuristic: 120+ readable words, no empty app shell) | Fetchers that don't run JS see an empty page | 14 |
| Article / Product schema | Article, BlogPosting or Product JSON-LD with headline or name, datePublished, author | Engines can't attribute or date the content | 10 |
| FAQ schema where Q&A exists | Pages with two or more question headings carry an FAQPage block | Answerable content isn't marked as answers | 8 |
| Answer-first structure | One h1, an opening paragraph of 60 words or fewer, at least two h2s | Engines extract poorly from wall-of-text pages | 6 |
| Updated within 12 months | dateModified in schema, article:modified_time, or sitemap lastmod within a year | The page reads as stale | 4 |
Need the markup for a fix? The free schema generator and FAQ schema generator write Organization, Article and FAQPage JSON-LD from a form.
Not yet in the free audit: a PageSpeed-based “fetchable fast” check (time to first byte and page weight), which is next. Two WordPress-plugin checks — AI-bot 404s and which AI crawlers actually reach the site — need server logs and can’t be seen from outside.
Ready is not the same as cited.
This audit finds the technical reasons a site can’t be cited. The AI citation audit shows whether it is: it runs your buyer prompts through ChatGPT, Perplexity, Gemini and Google AI Overviews and reports which engines cite you, which cite competitors, and what to change on the page that would win the citation.
Questions
What is an AI search audit?
A technical audit of whether AI answer engines — ChatGPT, Perplexity, Claude, Gemini and Google AI Overviews — can fetch your pages, read the text without running JavaScript, quote it, and identify who published it. It's separate from whether they actually cite you: this audit finds the reasons they couldn't; the citation audit shows whether they do.
Is this a GEO audit or an AEO checker?
Both names describe the same job. Generative engine optimization (GEO) and answer engine optimization (AEO) are about being the source an AI answer cites, and every check here is a precondition for that: crawler access, quotable text, machine-readable authorship, answer-shaped structure. It's the site-side half of GEO; the citation audit is the results half.
How is the AI readiness score calculated?
Four site checks worth 42 points run once per domain, and six page checks worth 54 points run on each crawled page and are averaged. The total is scaled to 100 and graded A (90+), B (80+), C (70+), D (60+) or F — the same model as the AuditAE WordPress plugin's AI Readiness Score. The point values are listed on this page.
What's in the emailed report?
Everything the on-screen result summarises: every failing check on every crawled page, why it matters, and the copy-paste fix — the robots.txt lines to add, the Organization or Article JSON-LD, an llms.txt drafted from your own pages. One email, no drip campaign.
Why only five pages?
The free audit crawls the page you enter plus up to four more from your sitemap or navigation. That's enough for a real verdict on the site and a taste of the page-level findings. A signed-up account can run the citation audit on the same domain; a larger crawl for signed-up users is next.
Does this replace Screaming Frog or a site audit?
No. Those tools report classic SEO issues across thousands of URLs. This runs only the checks that decide whether AI engines can fetch, read and trust a site, and gives you the fix for each one.
How does it detect client-side rendering?
Heuristically. It reads the raw HTML the server sends, as an AI fetcher would, and flags a page as likely client-rendered when it has under 120 words of readable text plus an empty app shell or heavy scripting. It doesn't run a browser, so it says "likely" rather than certain.
Is it really free?
Yes. No login, no credits, no card. The score and a pass/fail read-out show on screen; the full report with every fix is emailed. Anonymous visitors get one run per domain per day; a free account can re-run any time.