GEO-SCORE · OPEN AEO RUBRIC

Can AI cite
your website?

21 tiered checks, 100 points. One command, about 20 seconds. MIT-licensed and machine-readable — anyone can reproduce your score with the same method, including your competitors.

Score your own site right now, nothing to install:

curl -sL https://raw.githubusercontent.com/jianruntech/geo-score/main/cli/geo_score.py \
  | python3 - your-domain.com --brief

If you can run a command, run it. If you cannot — or you ran it and do not know what to change — let us run it and talk you through the result. No charge.

Standard library only, Python 3.8 or later. There is also a GitHub Action that can block a release on regression.

The five AIV pillars RUBRIC v1.1
The five AIV pillars Horizontal bar chart, x-axis is weight in points from 0 to 40. Crawlable 15, Understandable 22, Citable content 35, Brand credibility 18, Answer fit 10, total 100. Crawlable 15 Understandable 22 Citable content 35 Brand credibility 18 Answer fit 10 0510152025303540Weight (points)
Five pillars add up to 100. Citable content is worth 35, the largest share — because answer engines retrieve passages, not sites: they look for one passage that stands on its own and can be quoted directly.

Three gates: fail one and the rest is wasted

Three of the 21 checks are gates. Score zero on any of them and the normalized result is capped at 40 — not a deduction, a ceiling. When those three fail, nothing in the other eighteen ever reaches the engine.

Are crawlers allowed? robots.txt

Block AI retrieval crawlers by name in robots.txt and the content never enters the engine's index. Sometimes that is an editorial decision — publishers and medical sites choosing not to be cited is perfectly reasonable; the rubric records it as it is and does not call it a misconfiguration.

Can crawlers get in? Actual reachability

Probed with ten real retrieval user agents, one by one. Some sites return 200 to a browser and 403 to a crawler — the failure nobody notices, because from inside the company the site looks fine.

Is the body text in the HTML? Server-side rendering

When the body only exists after JavaScript has run, a crawler receives an empty shell. The content is there and the browser shows it, but the engine cannot read it. This group is almost certainly unintentional.

314 well-known sites measured: a quarter cannot be cited at all

The leaderboard is a fixed public list — 370 sites listed, 314 measured, at least 10 sites in each of 20 sectors; a sector median on fewer than that tells you nothing. The raw data is in the repository, and you can rerun it yourself.

The 80 uncitable sites out of 314, grouped by cause
CauseSitesNature
Blocked by name in robots.txt19Editorial decision — they chose not to be cited
Body only exists after JS runs45Almost certainly unintentional
Errors served to crawlers16200 to a browser, 403 to a crawler — invisible from inside

Median 56, range 12 to 98. The three groups add up to 80 sites, 25% of those measured — and that share has held at 24–25% across five independent samples, from 38 sites all the way to 314.

One more finding for companies going overseas: sites serving the Chinese market have a median of 40, the rest 59 — a 19-point gap. Across five samples the gap fell between 16 and 23. The difference is not content quality; it is whether the content can be read at all.

Five bands: a stage, not a verdict

External benchmarks show most commercial websites landing between 30 and 55. A score in the forties is normal, not an alarm — it means the site has not yet been built for AI retrieval, not that it is badly made.

Score ranges and meaning of the five AIV bands
BandScoreMeaning
Leading83–100Advantage established; focus shifts to maintaining and extending it
Solid foundation66–82Foundations complete; gaps concentrate in content depth and brand assets
Growing51–65The main items are in place; what is missing is system and consistency
Getting started31–50Clear gaps in the basics, most of which can be closed in a few person-days
Not started0–30Nothing built for AI retrieval yet; the most room to improve

Why this score can be trusted

The first thing to doubt about a measuring tool is whether it measures accurately. So these three answers are in the repository, open to inspection.

  1. The thresholds were not made up. The calibration record explains how each band boundary was set, aligned with four public benchmarks, and includes one public admission — our pre-release prediction of the score distribution was wrong, the measurement overturned it, and both numbers are kept in the record.
  2. Reproducibility is measured, not claimed. The whole leaderboard was run twice and compared site by site: 96% of sites land within ±5, 45% are identical. So read any single site's score as ±5; the median is stable. What is not stable are the gate checks — five sites flipped between runs because their bot protection answered crawlers differently. Full data
  3. The bugs we caught ourselves are written down too. For example, 307/308 redirects were not followed on Python below 3.11, so a site's score depended on whose Python was running; and an English-first request header made some Chinese sites hand back their international edition. The second cannot be solved by changing headers, so the approach is record, do not hide: the result states which domain was actually measured.
  4. Our own leaderboard page is measured with the same rubric. Currently 87, band Leading. The score and the gaps are public — including the items still missing.

You found problems. Now what?

The rubric answers one question: can the engine cite you. Whether it will depends on competition and query intent, which no off-site audit can observe — so we promise neither rankings nor citation volume. The repository also deliberately gives no fix recommendations: the scoring is open; the fixing is our job.

  1. Free AIV snapshot. We run it, then do the part the rubric cannot: which gaps are real and which you can ignore, which stage to fix first, whether it is worth fixing. The score itself you can reproduce by running it yourself — that is what open source is for.
  2. AEO diagnostic · from US$880. AIV baseline report + gap to overseas competitors + 30-day action list. The report is proof of capability in itself — take it and fix things yourself if you prefer.
  3. Ongoing work across the whole chain + AIV dashboard. Month-over-month comparison, one score as the common language. The boundaries are in plain sight: no managed store operations, no revenue share, no promise to replace staff.

FAQ

Is this the same thing as SEO?

Not the same question. Classic SEO asks where you rank; answer engines do not rank — they retrieve passages, assemble an answer and attribute sources.

So the conditions for being cited have changed: the body text has to be in the HTML, the opening passage has to stand on its own, figures need a source, and the author has to be verifiable. SEO tools barely test any of this, because in ranking logic none of it matters.

Conclusion A site that does SEO well does not necessarily score high on AIV, and the reverse also holds. The leaderboard has plenty of both.

Does a low score mean my website is bad?

Usually not. The leaderboard median is only 56, and scores in the forties are normal. A low score usually means the site has never been built for AI retrieval, not that it is badly made — and the fixes for those two are completely different.

Sites capped at 40 by a gate especially need to see why: if the body only exists after JavaScript runs, your content is fine, the engine just cannot read it; if robots.txt blocks by name, that may have been your own decision.

Why does the repository give no fix recommendations?

Deliberately. What is open is the measurement — the rubric, the checks, the criteria, the raw data — so the score can be verified, reproduced and challenged.

How to fix, what to fix first, how many person-days, who does it: that is what we deliver. Keeping the two apart is what lets the rubric be used as a neutral standard by others, including our competitors.

Can I reproduce the leaderboard scores myself?

Yes — that is the design goal. The rubric is machine-readable and every tier states how many of 8 sampled pages pass, so two people measuring the same site get the same arithmetic. The raw data, the scoring script and the page generator are all in the repository.

Note A rerun drifts by ±5 naturally (sampled pages change, bot protection changes). When comparing two sites, do not treat a gap under 5 points as a conclusion.

My site is not on the leaderboard. Can it be added?

Yes. The repository has a dedicated submission entry that asks you to run the score yourself first and paste the result line. We are especially short of sites in thinly covered sectors and languages — non-English sites, regulated industries, platforms, media.

Reminder Scores are public, including low ones. That is stated in the submission template, and you may nominate sites that are not your own — every check runs only against public URLs.

The rubric is open source — why ask you for a free snapshot?

Because the rubric produces numbers, not judgment. The score you get from running it yourself is the same one we get — that is the whole point of open-sourcing it: every point we give you can be checked. The snapshot adds three things the rubric cannot do. One, reading the result: a rerun drifts by ±5 naturally, and gate checks flip with a site's bot-blocking policy, so someone has to tell real gaps from noise. Two, putting it back into your business: which of the nine stages to fix first — the rubric has no idea what you sell. Three, saying whether a fix is worth it and how much work it takes — the scoring is open, the fixing is our job. If you can run a command, run it. If you cannot, or you ran it and do not know what to do next, ask us. No charge.