Competitors & Share of Voice
Knowing you were mentioned in 40% of answers is half the picture. The other half is who filled the other 60%. Every graded answer therefore yields a competitor list, and those lists roll up into the competitor views on the panel.
Extraction
The same analysis pass that scores an answer also extracts every business, brand or service named in it that competes with you, together with a one-line reason it came up.
Two properties matter:
- It reads the answer, not a fixed competitor list you maintain. Brands you have never heard of show up the moment an assistant starts recommending them.
- The reason is stored per mention, so the panel can show why a rival appeared in that specific conversation rather than just that it did.
Entity resolution
Raw extraction produces surface forms, and the same company arrives under several of them:
KEEN Utility, Keen, Timberland PRO, timberland pro boots. Counting those separately would
split one competitor into four small ones and understate them all.
Names are therefore resolved to a canonical parent brand before anything is aggregated:
- Normalise to a lookup key Lowercase, strip punctuation, fold whitespace. "KEEN Utility" and "Keen utility" become the same key deterministically, with no model involved.
- Check the alias registry A shared registry maps known keys to canonical names. Most names hit here — free, instant, and stable across runs.
- Resolve the misses with a model Unknown keys are batched into one call that uses world knowledge to fold sub-brands and product lines into their parent brand.
- Write the result back Newly resolved aliases join the registry, so the next run resolves them for free.
Resolution happens once, on write. Every competitor row stores its canonical name, and every aggregate groups by that — so the leaderboard, the regional matrix and the exports can never disagree about who is who.
If resolution is unavailable, the cleaned surface form is used as the canonical name. It never blocks a run: a slightly fragmented competitor list is a much smaller problem than a failed analysis.
Counting: conversations, not mentions
Competitor counts are per conversation, deduplicated by canonical name:
Three exclusions apply:
- Discovery prompts only. A comparison prompt names a rival in the question, so counting it would measure your prompt library rather than the market.
- Your own brand is excluded from competitor rows — it has its own row, marked as yours.
- Probes whose analysis failed are excluded before any of this, since they have neither a mention judgement nor a competitor list. Leaving them in would dilute you and every competitor by the same factor.
The competitor views
Mention distribution
A share-of-voice pie over discovery answers: your brand versus each competitor. The panel states how many branded prompts were excluded, so the number is never silently narrowed.
Clicking a slice opens the conversations behind it — the prompt, the engine, and the passage that named that brand.
Visibility leaderboard
A table of your brand and every competitor, with a column per engine:
The bucket toggle switches between discovery and brand-named prompts. Discovery answers the question “who does the assistant reach for unprompted”; brand-named answers “who am I put next to when I’m already in the room”.
A competitor that is strong on one engine and absent from another is usually a retrieval story — they own a source that engine trusts. Cross-referencing with cited sources is the fastest way to find out which.
Competitor visibility by region
The same visibility percentage, split by market, using geo-adjustable engines only.
This is the view that separates global rivals from local ones. A competitor at 60% in one market and 0% in the others is a local player you may not have known about — and a market where a market-specific content or PR push is the realistic response.
Each region scorecard row also shows its top competitor: the brand named in the most discovery conversations in that market.
What to do with it
| Pattern | Usual reading |
|---|---|
| One competitor leads every engine | They own the sources engines retrieve from — look at their cited domains |
| A rival appears only on scenario prompts | They’ve written for specific use cases; you’ve written for the category |
| A rival appears only in one region | Local content, local press, or a local marketplace presence |
| You’re mentioned but rank below rivals | It’s a position problem, not a visibility problem — see AI Score |
See these numbers for your own brand The free plan probes every engine we support — no card required.
Start free