Open-source · MIT · Zero dependencies
GEO Auditor
Score how ready a page is to be retrieved, understood, and cited by AI answer engines — ChatGPT, Perplexity, Google AI Overviews, Gemini. Paste your page's HTML below for an instant in-browser audit, or run the open-source Python CLI on any live URL.
Audit a page now
Paste the full HTML of a page (View Source → select all → copy). Everything runs locally in your browser — nothing is uploaded.
out of 100 — higher = more AI-citation-ready
Or audit any live URL from your terminal
The full auditor is an open-source Python CLI. It also probes
/llms.txt and works on URLs (no copy-paste). Zero
dependencies — it only needs Python 3.9+.
git clone https://github.com/citelab119/citelab-geo-auditor.git
cd citelab-geo-auditor
python3 -m citelab_geo.cli https://yoursite.com/your-article
# gate a build on a minimum score (CI):
python3 -m citelab_geo.cli https://yoursite.com/page --min-score 80 What it checks (and why)
Each check is weighted by how much it influences AI retrieval and citation. The score is the share of weighted checks a page passes.
| Signal | Weight |
|---|---|
| schema.org JSON-LD present | 12 |
| FAQPage / HowTo schema | 10 |
| Answer-first opening | 10 |
| Title tag (10–70 chars) | 8 |
| Meta description (50–160) | 8 |
| Exactly one H1 | 8 |
| Article / BlogPosting schema | 8 |
| Fact density (≥1 stat / 200 words) | 8 |
| Outbound citations (≥2) | 8 |
| llms.txt at site root | 8 |
| H2 subheadings (≥2) | 6 |
| Internal links (≥3) | 6 |
| Canonical URL | 4 |
| Open Graph (title + image) | 4 |
| Substantial content (≥300 words) | 4 |
A high score means a page is well structured for citation. It does not guarantee rankings or that any engine will cite you — that depends on many factors beyond a single page.
Free newsletter
Get new CiteLab tools first
Practical SEO, GEO, and AI-search tools and guides — no spam, no fake screenshots.
No spam. No fake income screenshots. Practical notes you can use.