How the score is built
The AI Visibility Score is a number from 0 to 100. It is not a black box and it is never guessed. It's a weighted blend of four signals we measure directly from what ChatGPT, Perplexity, Google AI Overviews actually say when asked 5 real buyer-intent questions about your niche.
Cited at all
30 pts maxAre you cited by at least one AI engine across the five buyer-intent prompts — the line between existing and not existing to a robot.
Engine coverage
30 pts maxWhat fraction of the reachable engines (ChatGPT, Perplexity, Google AI Overviews) cite you, counting only engines we actually got data from.
Prominence (share of voice)
25 pts maxYour share of voice — when an answer cites you, how many other brands it names alongside you (you alone = full credit; you plus nine rivals = a sliver).
Sentiment
15 pts maxWhen an engine mentions you, whether it speaks positively, neutrally, or negatively about you.
The formula
Each signal is normalised to a value between 0 and 1, multiplied by its weight, and summed, then scaled to 100:
score = 100 × ( 0.3 × citedAtAll // are you cited anywhere? + 0.3 × engineCoverage // fraction of reachable engines citing you + 0.25 × prominence // your share of voice when cited + 0.15 × sentiment // tone toward you where mentioned )
Sentiment maps to: positive = 1, neutral = 0.6, negative = 0.2.
The rules we never break
- No fabricated metrics. If an engine can't be reached, it's marked unavailable and excluded from the denominators — we never invent a value to fill the gap.
- No data, no number. If every engine is down, the score is unavailable, not zero and not a guess.
- Coverage counts only what we reached. An outage on our side never lowers your score — coverage is measured against engines that actually returned data.
- Gaps come from real misses. The 3 gaps we show point at a specific engine, prompt, or competitor — never generic advice.
- Results are cached 24h per domain + niche, to keep this free and to keep the engines from being hammered.