Visibility
Competitors
How competitors are discovered, what tracking one changes, and what the comparison shows.

How a competitor is discovered
Every collected answer is checked for brand names, the same mention
extraction that decides whether an answer named you (see Key
terms for mention versus citation). A name that
does not yet match one of your tracked brands surfaces on this page, under
"Brands appearing in your answers": grouped by name, with how many answers
named it, how many times, and when it was first seen in the trailing 30
days (api/routers/untracked_brands.py#list_untracked_brands,
api/routers/untracked_brands.py#_query_untracked). That list is ranked by
how often a name comes up and kept to the top 100; a brand mentioned less
often than that cutoff can still be out there without showing up here. An
"Add as competitor" button on each row prefills the add form with that
name.
Nothing on that list is tracked yet. An untracked brand's mentions are excluded from every metric that counts brand mentions, including the ones described below, until you add it as a competitor.
Tracked versus untracked
Adding a competitor (api/routers/competitors.py#add_competitor) records
its domain against your project. The next time mention extraction runs, a
matching brand entity is created for it
(api/services/brand_mentions.py#sync_brand_entities_for_project), so an
answer naming that brand resolves to a tracked entity instead of landing
back on the untracked list. From then on its citations, its domain
visibility, and its mentions all count against you by name, not only by
domain.
Tracked is not the same as active. Pausing a competitor keeps its card and
its visibility history, but drops it out of the share-of-voice chart and
the head-to-head comparison below, and out of the roster handed to future
mention extraction: an answer naming a paused competitor after that point
is recorded unresolved rather than credited to it, the same as a brand you
never tracked at all. It drops out of the total those shares divide by as
well, not only out of the picture: the set of domains the bar chart sums
over is built from active competitor rows alone
(api/routers/pages.py#competitors_page), so pausing one takes its
citations out of the denominator instead of leaving them folded into it.
Tracking a competitor also uses one of your plan's competitor slots; see
Pricing for what each plan includes
(api/services/limits.py#check_competitor_limit).
What the head-to-head view compares
The Head-to-Head tab compares you against every active tracked competitor,
prompt by prompt: up to 20 of your active prompts, unsorted and with no
guarantee the same 20 come back on a later load, each showing how often
you were cited versus how often each competitor was, including a prompt
where neither of you appeared at all (api/routers/pages.py#_head_to_head).
A competitor's own detail page has a narrower version, "Prompts that cite
you both": just the two of you, kept to the prompts where at least one of
you was actually cited, sorted so the biggest gaps surface first, and kept
to the 20 rows with the largest gap (api/routers/pages.py#_shared_prompts).
The two views answer different questions: the tab is a scoreboard across
your whole field, shared prompts is where you and one rival actually
collide.
The detail page also breaks the comparison down per engine, listing only the engines where at least one of you has been cited so far, and charts the last 14 days of both visibility scores side by side, whether or not anything was measured on a given day.
Share of voice
Two different numbers on this page are both called share of voice. The
hero figure and the bar chart beneath it size a bar for you and every
active tracked competitor by how many times that domain was cited. "By
brand mentioned", the list underneath it, is the same brand-mention
analysis behind the product's single share-of-voice figure
(api/services/brand_metrics.py#brand_share_of_voice,
api/services/brand_metrics.py#share_of_voice_by_entity), broken out one
row per tracked brand instead of one number for you; a brand with no
mentions in the window is simply absent from that list, not shown at
zero. The two figures still divide by different populations, so a single
answer can move one and not the other, but they now agree about what an
inactive competitor means: neither counts one, whether it was paused or
removed. See
Domain-citation share of voice
for what the bar chart's numbers count, and
Share of voice
for what "By brand mentioned" counts, including all four pause and remove
cases.
If nothing shows up yet
A competitor's visibility, citations, and top pages all fill in from the same daily runs that populate the rest of the product. See Troubleshooting: No citations yet for what an empty comparison does and does not mean before you conclude a competitor was never cited.
Related
- Citations: how a citation is attributed to a domain, yours or a competitor's
- Key terms: what separates a mention from a citation
- Metrics defined: the mention-based share of voice formula, and domain-citation share of voice for the other figure on this screen
- Troubleshooting: No citations yet: what to check before expecting a comparison to appear
Last verified 2026-08-11