AI Readability Checker — Can ChatGPT & Claude Read Your Site?
Pricing
from $40.00 / 1,000 site audits
AI Readability Checker — Can ChatGPT & Claude Read Your Site?
Audit a site the way AI crawlers see it: robots.txt rules per bot (GPTBot, ClaudeBot, PerplexityBot), real per-bot fetches, and how much text exists before JavaScript runs. Weighted from crawler logs, not blog advice. $0.05 per audit.
Pricing
from $40.00 / 1,000 site audits
Rating
0.0
(0)
Developer
Broke to Built
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 hours ago
Last modified
Categories
Share
AI Readability Checker (GEO Audit)
Can AI actually read your site? ChatGPT, Claude, Perplexity and Google's AI summaries can only cite what their crawlers can ingest. This actor audits any URL exactly the way those crawlers see it and returns measurements, not opinions.
What it checks
- robots.txt AI-crawler rules — GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, Bytespider: allowed, partial, blocked, or unmentioned.
- llms.txt / AI-native index — present or missing (the cheapest GEO win).
- Per-bot fetches — what each AI user-agent is actually served: status, bytes, block-shaped responses (403/429/captcha walls).
- Server-rendered text ratio — JS-walled pages are invisible to most AI fetchers.
- schema.org JSON-LD — structured data blocks and their types.
- Sitemap — reachable, and a sample of real pages measured for text ratio.
- Anti-AI headers — x-robots-tag noai directives.
Output
One dataset item with a 0–110 score, an A–D grade, per-check findings with plain-language details,
per-bot fetch results, and page samples. The summary field is a one-line verdict you can paste
anywhere.
Why this matters (GEO)
Generative Engine Optimization starts one level below content: readability. If GPTBot is blocked in robots.txt or your content only exists after a JS render, no amount of good writing gets you into AI answers. This audit finds those structural blockers in under a minute.
Example output
A real record, trimmed. Every finding carries its own weight, so you can see what is actually
costing you rather than a single opaque number:
{"url": "https://example.com/store","auditedAt": "2026-08-16T16:17:06.378Z","score": 65,"maxScore": 110,"findings": [{ "id": "robots-ai-access", "ok": true, "weight": 25, "detail": "no robots.txt (HTTP 404) — crawlers default to allowed" },{ "id": "bots-served", "ok": true, "weight": 25, "detail": "all 5 AI user-agents receive HTTP 200 content" },{ "id": "server-rendered", "ok": false, "weight": 33, "detail": "text ratio 2.1% (14861 text bytes in the raw HTML, before any JavaScript runs). BURIED: there is real text, but it is a small fraction of the markup." },{ "id": "robots-sitemap", "ok": false, "weight": 5, "detail": "no robots.txt, so no sitemap pointer" },{ "id": "llms-txt", "ok": false, "weight": 2, "detail": "llms.txt missing. Deliberately near-zero weight." }]}
Pricing
$0.05 per site audited. One charge per URL, whatever the score. A run that cannot fetch the site is reported with an error and is not charged.
That covers several fetches per audit — robots.txt, llms.txt, the page itself once per AI user-agent, and a sitemap sample — so the price is per audit, not per request.
FAQ
Is a missing llms.txt really only worth 2 points? Yes, and that is deliberate. Measured crawler
logs show the overwhelming majority of published llms.txt files are never requested. It is the most
marketed GEO fix and one of the least load-bearing. Server-rendered text (33) and robots access (25)
are where the score actually moves, so the weights say so out loud.
What does the score mean? It is out of 110, not 100 — the extra headroom is for checks that are
bonuses rather than requirements. Read the findings array, not just the total: two sites on 65 can
be failing for completely different reasons, and the weight on each finding tells you which repair
buys the most.
Does this render JavaScript? No, and that is the point. It fetches the way AI crawlers fetch, so if your text only exists after a client-side render, this reports it as buried — because that is what the crawler sees.
Which bots does it check? GPTBot, ClaudeBot, PerplexityBot, Google-Extended and CCBot, each with its real user-agent string, so a server that treats one differently from another is caught.
Can I audit a whole site? Pass several URLs in one run; each is scored separately and charged separately. The audit also samples pages from your sitemap to check whether the problem is one page or the whole template.
For AI agents
This Actor is built to be called by software, not just by people.
- Mount it directly as an MCP tool — no Store search, no ranking, just this one tool:
https://mcp.apify.com/?actors=eliai/ai-readability-checker - Or call it over HTTP and get the results in the same request:
POST https://api.apify.com/v2/acts/eliai~ai-readability-checker/run-sync-get-dataset-items - Pay with x402, without an Apify account. This Actor is whitelisted for agentic payments, so an agent holding USDC on Base can buy a prepaid token and spend it here. The minimum purchase is $1, the token balance is an absolute spending cap, and it expires 14 days after purchase.
- Costs are predictable before you call. Pricing is pay-per-event (see Pricing above), so an agent can budget a run in advance instead of discovering the bill afterwards.
- Send only the field you mean. If you pass the bulk field, it is used on its own; the single-value field is a fallback, never merged into your request. You are charged for the items you sent and nothing else.