We just shipped a free, no-signup AI SEO checker that scores any URL across 39 checks for answer-engine optimization (AEO) and generative-engine optimization (GEO). Here's what it actually tests and why we built it.
The problem with existing SEO tools for AI search
Most SEO auditors check title length, keyword density, and Core Web Vitals. That's fine for Google's traditional ranking pipeline. But AI search engines (ChatGPT, Perplexity, Claude, Gemini) extract answers differently. They care about:
- Whether your robots.txt blocks their crawlers
- Whether your opening paragraph resolves the query in under 60 words
- Whether your JSON-LD schema type matches what the page actually says
- Whether your content renders in raw HTML (not behind JavaScript)
None of that shows up in Screaming Frog or Ahrefs.
What the 39 checks cover
The checker runs five categories, each weighted by signal strength:
Crawlability (6 checks, weights 3-5)
Checks whether GPTBot, OAI-SearchBot, ClaudeBot, Claude-SearchBot, PerplexityBot, and Amazonbot can reach your pages. A robots.txt that blocks Googlebot is usually fine; one that accidentally blocks GPTBot via a wildcard disallow is invisible to ChatGPT's index.
Also checks robots.txt accessibility (returns 200, not 401/500), sitemap presence, and canonical URL consistency.
Structured Data (7 checks, weights 2-4)
Validates JSON-LD presence, schema type alignment (does @type: Article match what you actually published?), required properties per schema type, OpenGraph and Twitter cards, and author attribution with Wikidata or LinkedIn links.
The author attribution check matters: several citation studies show AI systems favor content where the author has a verifiable external identity.
On-Page Content (11 checks, weights 1-4)
The most nuanced category. Key checks:
| Check | What triggers it |
|---|---|
| Question-style heading ratio | Less than 30% of H2-H4s are question-form |
| Reading level | Flesch-Kincaid grade above 12 |
| Answer density | Opening paragraph doesn't resolve the query |
| Internal link depth | Thin internal link structure |
| Image alt text | Images missing alt attributes |
The question-heading threshold comes from a study showing 72% of ChatGPT-cited pages use question-style headings. The tool flags pages below the 30% ratio.
AI Readability (8 checks, weights 2-5)
Checks answer density in the opening paragraph (first paragraph should contain the core answer in under 60 words), render mode (page must have 200+ visible words in raw HTML to be parseable by non-executing crawlers), llms.txt presence, entity recognition, authorship signals, and outbound links to authoritative sources.
The render detection is important: a page that loads its content via React client-side rendering is effectively invisible to AI crawlers that don't execute JavaScript.
Technical Health (7 checks, weights 1-3)
HTTPS, mixed content, mobile viewport meta tag, payload compression, image dimension attributes, HSTS headers, and basic security headers. These are table-stakes checks that most sites pass, but the tool catches edge cases.
Scoring
Each check has a weight (1-5). The tool calculates category scores and an overall weighted letter grade:
- A: 90+
- B: 75-89
- C: 60-74
- D: 40-59
- F: below 40
How it works technically
- User pastes a URL
- A server-side proxy fetches the HTML, robots.txt, sitemap, and llms.txt in a single request (bypasses CORS restrictions; nothing is stored)
- All 39 checks run client-side in the browser
- Results render immediately with evidence strings and remediation guidance per check
No login. No data stored. One URL per run.
Why free and no-signup
We want this to be the first tool developers and content teams reach for when they're wondering why their content isn't appearing in AI answers. The friction of a signup form is the wrong trade-off here. The @automatelab/ai-seo-mcp package is the commercial path for teams that need bulk audits inside Claude Code or Cursor workflows.
Try it
https://automatelab.tech/blog/al-products/free-ai-seo-checker-aeo-geo/
The tool is at the link above. If you find a check that's giving a false positive or a signal that should be weighted differently, open an issue or drop a comment.
Part of the AutomateLab AI automation stack. Also see @automatelab/ai-seo-mcp for Claude Code batch audits.

Top comments (0)