Your AI visibility score, explained: exactly how the 0–100 is calculated
A score you can't audit is a vibe. Here's the full arithmetic behind your PingMyBrand score — every weight, every threshold, every honesty filter — straight from the code that computes it.
On this page
Every scan we run ends in one number: a score from 0 to 100. Plenty of tools hand you a number like that and expect you to trust it. We think a score you can't audit is a vibe, not a measurement — so this post lays out the exact arithmetic behind ours: every weight, every threshold, every filter, straight from the code that computes it. When you see a 23 or a 61 on your report, you should be able to trace precisely where it came from.
What gets measured
A scan puts 25 real buyer questions — the situational, high-intent questions people actually type, not vanity prompts — to four engines: ChatGPT, Claude, Gemini, and Perplexity. That's up to 100 question-and-answer pairs per scan. Each answer gets parsed for three facts:
- Were you named? Your brand name or your domain appears in the answer — and the mention is genuine (more on that filter below).
- Where were you ranked? When the answer is a ranked or bulleted shortlist and you appear cleanly in it, within the first eight entries, we record your position. A passing mention in prose has no honest rank, so we record none — we never fabricate a position.
- Were you cited? The answer includes your actual domain — the engine didn't just say your name, it pointed the buyer at your site.
The filters that run before any math
Three honesty rules shape what's allowed to count. Each one exists because skipping it would inflate the number, and an inflated number helps nobody:
Branded questions are excluded from the score. A few of the 25 questions — typically three — deliberately name your brand ("Is X legit?", "X vs competitors"). Those answers contain your name by construction, because the buyer put it there. Counting them would measure nothing except the engine's ability to echo a prompt, so they're excluded from the headline score and from share-of-voice. We still show them separately, because what the engine says when asked about you directly — stale pricing, a product you sunset — is its own problem worth seeing.
Disclaimers don't count as mentions. "I don't have reliable information about X" technically contains your brand name. It is the engine disowning knowledge of you, not recommending you. Answers like that are filtered out before scoring, along with cutoff-hedged confabulation ("as of my last update, I believe X might be…").
No invented ranks. If you're mentioned but not cleanly listed, your position is simply null. It contributes nothing rather than something made up.
The formula, per engine
For each engine, across the unprompted questions only:
score = 100 × (0.6 × mention rate + 0.25 × position component + 0.15 × citation rate)
Why those three, at those weights:
- Mention rate — 60% of the score. The fraction of unprompted questions where the engine genuinely named you. It carries the most weight because it is the game: an AI answer is a short shortlist, and there is no page two. Named or absent is most of what matters.
- Position component — 25%. Rank 1 in a shortlist earns full credit, rank 2 earns two-thirds, rank 3 earns one-third, rank 4 or later earns zero. The formula is (4 − your average rank) ÷ 3, floored at zero — averaged over the answers where you had an honest rank at all. Shortlists get read top-down; the model's one-line reason next to the first name does most of the persuading.
- Citation rate — 15%. The fraction of answers that included your actual domain. It's the strongest form of visibility — the engine handed the buyer your address — but it's rarer and partly engine-dependent (Perplexity cites constantly; others less so), so it gets the smallest weight.
One number from four engines
Your headline score is the plain average of the four engine scores. Deliberately unweighted: your buyers aren't all in one chat window, and we'd rather show you a Gemini blind spot at full size than smooth it away. The report also gives you each engine's score separately, because "62 overall" hides a very different story than "89 on Perplexity, 12 on Gemini."
One more number the report speaks in: "named in X of Y buyer questions." A question counts as won when at least one of the four engines named you, and lost when you're absent from every engine's answer — the same rule everywhere in the product, so the counts always reconcile.
What the number means in practice
- 0 means no unprompted mention survived the filters, on any engine. This is the most common score for small and mid-size brands — including, when we first scanned ourselves, us.
- 60 is the ceiling for mentions alone: named in every unprompted answer on every engine, but never ranked in the top three and never cited.
- 100 requires being named in every answer, holding an average rank of 1 wherever you're ranked, and having your domain cited every single time — on all four engines. It's deliberately out of reach for almost everyone, because the surface it measures is winner-take-most.
- For context between those poles: when we scanned 18 well-known SaaS brands for our State of AI Visibility study, the average score was about 42 out of 100 — household SaaS names, half-visible.
The honest limits
Model answers vary run to run, so a single scan is a sample, not gospel — we've written about why one manual check misleads, and the same wobble applies, reduced, to a 100-answer scan. Treat small single-scan movements with suspicion; treat the trend across repeated scans as the signal. That's exactly why the paid plans re-scan weekly and alert you on shifts, instead of selling you one snapshot.
Moving each component
The score decomposes, so the work does too. Mention rate moves with third-party evidence — the reviews, comparisons, and listicles engines actually trust. Position moves with being in the shortlist-shaped content models lift answers from. Citation moves with a machine-legible site: llms.txt, the right JSON-LD, plain quotable pages. The GEO content checklist turns all of it into seven verifiable items.
But arithmetic needs an input. Run the free scan: 25 real buyer questions across ChatGPT, Claude, Gemini, and Perplexity, every answer shown question by question — whether you're named, who's named instead, the exact sentence returned — and the 0–100 computed exactly as described above. No signup, about a minute. Then you're not trusting our number; you're checking it.