AI-agent readiness for Astro
Astro sites arrive with an advantage no other stack gets for free: the default output is static HTML with the JavaScript stripped out, so the content checks tend to pass on day one. The gap is elsewhere. Content collections know exactly what pages exist and in what order, and almost nobody uses that knowledge to emit llms.txt, a feed, or an index an agent can read. The data is already structured — it is just never published in the shape a crawler wants.
What our own scans say about Astro
Not an estimate. These numbers come from public AIScan reports and change as we scan more.
Distinct public domains, counted once each at their most recent scan.
Mean of the latest public scan for every Astro domain we have graded.
- 77%23 of 30
- 53%16 of 30
- 58%15 of 26
- 43%13 of 30
- 69%11 of 16
Computed from public AIScan reports, refreshed as we scan. Private reports are never included.
How Astro sites fail, and what fixes it
Content collections that never become llms.txt
You already have a typed list of every page with a title and description. An endpoint at src/pages/llms.txt.ts can map over it in a dozen lines, which means the file is correct forever instead of correct on the day it was written.
No feed on a site whose whole point is publishing
Astro's content APIs make RSS trivial, and a feed is how assistants notice you published something without re-crawling the site. Missing feeds are the most common Astro deduction we record.
Markdown that exists but is not served
Your posts are Markdown on disk and HTML on the wire. Serving the source at a .md twin, or honouring an Accept: text/markdown request, hands an agent the clean version and costs it far fewer tokens.
Default robots.txt, no AI position
Static output means robots.txt is a file you have to remember to write. Most projects either omit it entirely or copy a generic allow-all with no AI bot rules and no Content Signals.
Step-by-step fixes: /docs/platforms · /docs/checks/content · /docs/checks/discoverability · /llms-txt-generator
Businesses running on Astro
One person, a strong archive, and no map to it.
Forty minutes of excellent audio, and nine words of text on the page.
Your docs are the product, and a coding agent is now their heaviest reader.
Questions Astro owners ask
Astro already outputs clean HTML. What is left to fix?
Should I generate llms.txt from content collections?
What is the Markdown twin check actually asking for?
Does an island of client-side JavaScript hurt me?
Do these same fixes apply to Hugo, Eleventy or Jekyll?
Scan your Astro site and see where you actually stand
Free, no account, about twenty seconds. The report names every failing check by ID, shows the evidence we found, and gives the fix for your platform — plus a hand-off prompt you can paste straight into Claude Code or Cursor.
npx aiscan-cli yoursite.comPrefer to read first? Browse every check we run or the guide library.