SegOps AIDocs

Competitor Intelligence

Track how your brand ranks against named competitors across AI search responses: win rate, per-query position comparison, and alerts when a rival's share of voice jumps or your rank drops.


How it works#

Competitor intelligence is computed from the same AI query results that power AI Visibility. Every time a tracked query runs, SegOps extracts the brands mentioned in each provider's answer and their 1-based positions. For each competitor it matches those brands by name (case-insensitive) against the competitor's name and aliases, then compares positions against your own brand. No extra queries are needed — adding a competitor enriches the analysis of results you are already collecting.


Adding a competitor#

Go to /ai-reach/competitors and click Add competitor (/ai-reach/competitors/new).

FieldRequiredNotes
Brand nameyesPrimary name to match in AI responses (e.g. Nike)
DomainnoReference only (e.g. nike.com)
Brand aliasesnoComma-separated alternate names (e.g. Nike Inc, Nike Group)

Aliases matter: AI answers refer to the same company many ways. The matcher uses the lowercased set of name plus every alias, so add legal names, abbreviations, and product-line names a model might use.

http
POST /api/ai-reach/competitors/
Content-Type: application/json

{ "name": "Nike", "domain": "nike.com",
  "brand_aliases": ["Nike Inc", "Nike Group"], "is_active": true }

Names are unique per workspace. Set is_active: false to stop tracking a competitor without deleting its history.


Win rate and the leaderboard#

The Win rate leaderboard ranks active competitors by how often you outrank them across all results. For each result where positions can be compared:

  • Win — you are mentioned and rank ahead of the competitor (or they are absent and you are present)
  • Loss — they rank ahead, or they are present and you are absent
  • Tie — both mentioned at the same position

win_rate = wins / (wins + losses + ties), sorted highest first. The leaderboard chips are colored: green at 50%+, amber at 30–50%, red below.

http
GET /api/ai-reach/win-rate/
json
{ "competitors": [
  { "id": 3, "name": "Nike", "domain": "nike.com",
    "wins": 42, "losses": 11, "ties": 3,
    "win_rate": 0.75, "total_compared": 56 }
] }

Per-query comparison#

The Per-query position comparison table shows your average position next to each competitor's average for every tracked query, so you can see exactly which questions you lose on.

http
GET /api/ai-reach/comparison/

Each query returns tenant_avg_position, total_results, and a competitors array with each rival's avg_position, mention_count, and per-query win_rate. Queries with no results are skipped.


Share-of-voice gap#

The AI Visibility dashboard reports your share of voice — your weighted slice of brand mentions across answers. Pair it with the win-rate leaderboard: a high SOV but low win rate against one competitor means you are mentioned often but ranked below them, which points at the specific queries in the comparison table to optimize.


Alerts#

Add alert rules from the Alert rules panel (Add alert/ai-reach/alerts/new) to get notified of competitor movements via a webhook.

TypeTriggers whenThreshold
sov_jumpA competitor's share of voice risesDelta, e.g. 0.1 = +10% SOV
rank_dropYour position falls below a limitWorst allowed position (integer)
new_competitorA new brand appears in answers
http
POST /api/ai-reach/alerts/
Content-Type: application/json

{ "competitor": 3, "alert_type": "sov_jump",
  "threshold": 0.1, "webhook_url": "https://example.com/hook", "is_active": true }

competitor may be omitted to watch any competitor. Rules show their last-triggered time on the competitors page and can be paused (is_active: false) without deletion.