Open methodology

Our audit rubric, in full.

No black box. Every check below is reproducible by hand against the same fetched bytes. We score 100 points across 10 categories; the implementation lives at src/Services/AuditEngine.php in our private repo.

What we fetch

For every audit we issue four GET requests with our SSRF-safe fetcher (`UrlFetcher`), each capped at 12s and 2MB:

  • The submitted URL (your homepage or whichever URL you provided).
  • /robots.txt at the same origin.
  • /sitemap.xml at the same origin.
  • /llms.txt at the same origin.

Our user agent is LLMSubmitterBot/1.0 (+https://llmsubmitter.com/bot). We don't execute JavaScript - same as how every AI-search crawler operates.

The 10 categories

Category Pts Check
A · llms.txt 15 Presence (10) + valid H1 (+2) + summary blockquote (+2) + one or more markdown link items (+1).
B · Crawler access 15 For each of GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-User, Claude-SearchBot, PerplexityBot, Perplexity-User, Google-Extended, CCBot we deduct 1.5pts if the bot is explicitly blocked (Disallow: /). A specific User-agent block beats a wildcard.
C · Schema (JSON-LD) 15 Any application/ld+json found (+5) · Organization OR WebSite OR LocalBusiness type (+3) · Article OR BlogPosting OR NewsArticle OR FAQPage OR Product OR HowTo type (+4) · @graph cross-reference present (+3).
D · Semantic HTML 10 Exactly one h1 (+3) · clean heading hierarchy with no level skipped by more than 1 (+3) · header / main / article / nav / section / footer presence (4 max, scaled).
E · Meta tags 10 <title> length 50-70 chars (+3) · meta description length 120-180 chars (+3) · og:title + og:description + og:image all present (+4 if all three).
F · Content depth 15 FAQ section detected via heading text or section id="faq" (+5) · 3 or more h2/h3 (+4) · 2 or more ul/ol (+3) · 300+ words in body (+3).
G · Sitemap 5 sitemap.xml exists (+3) · listed via Sitemap: directive in robots.txt (+2).
H · HTTPS 5 Final URL after redirects begins with https:// (5/0).
I · Mobile 5 <meta name="viewport" content="width=…"> present (5/0).
J · Performance 5 Image alt-text coverage ≥80% (+3) · page weight under 500KB (+2).

Grade bands

  • 90-100 Excellent - site is positioned strongly for AI citations.
  • 70-89 Good - most signals present; small gaps remain.
  • 50-69 Needs work - meaningful gaps that the Fix tools will close.
  • 0-49 Poor - the site is largely invisible to AI search; the Fix pillar is the highest-leverage starting point.

What we don't claim

A 100/100 score does not guarantee citations. Citation choice happens inside each AI model in real time and depends on the prompt, the user's context, the model's training cut-off, and many factors outside any audit's reach. What a high score does is remove every technical reason not to cite you.

Versioning

When we change weights or add a category, we bump the rubric version and announce it in the blog. Old audits are scored under the rubric version they ran against. Current rubric: v1.0.