Skip to content
Docs · Methodology

How we measure AI visibility

Every metric in Elite Answers is computed from stored answers using the definitions below. Nothing is a black box.

Engines and data sources

We ask each engine the exact prompts you track, in the market and language you choose, and store every answer in full together with its citations. Live answers come from official APIs, either through DataForSEO's AI Optimization and SERP APIs or directly from the providers.

EngineLive source
ChatGPT
OpenAI
DataForSEO AI Optimization API → LLM Responses (web search on); or OpenAI Responses API with web search
Perplexity
Perplexity
DataForSEO LLM Responses; or Perplexity Sonar API
Gemini
Google
DataForSEO LLM Responses (web search on); or Gemini API with Google Search grounding
Claude
Anthropic
DataForSEO LLM Responses (web search on); or Anthropic Messages API with the web search tool
AI Overviews
Google Search
DataForSEO SERP API — the AI Overview block on Google's results page
AI Mode
Google Search
DataForSEO SERP API — Google AI Mode endpoint

API answers with web search are a close proxy for what consumers see in each app, but not an identical copy: consumer apps may personalise answers, use different model versions or show different sources. We label engines accordingly and recommend reading trends rather than single answers.

Sandbox mode

Accounts without live data credentials run in sandbox mode. Answers are generated by a deterministic simulator, clearly labelled Sandbox data throughout the product, and never mixed with live data. When live sources are connected, tracking starts a fresh baseline.

Metric definitions

For each prompt p and engine e, we take the latest answer inside the reporting window.

  • mentioned — 1 if any of the brand's names, aliases or domains appears in the answer (word-boundary, case-insensitive; text inside URLs does not count).
  • position — the 1-based order of the brand's first mention among all tracked brands mentioned in that answer; empty when not mentioned.
  • position weight — 1 → 1.0, 2 → 0.85, 3 → 0.7, 4–5 → 0.55, 6+ → 0.4.
  • cited — 1 if any citation's registrable domain belongs to the brand.

AnswerScore = mentioned × 100 × (0.7 × position weight + 0.3 × cited)

MetricDefinition
AI Visibility ScoreImportance-weighted mean of AnswerScore over every prompt × engine in the window (importance 1–3). Also computed per engine and per topic.
Mention rateAnswers that mention the brand ÷ all answers.
Share of voiceThe brand's mentioned-answer count ÷ the sum of mentioned-answer counts of every tracked brand (own and competitors) in the same answer set.
Average positionMean position over answers that mention the brand. Lower is better.
Citation shareCitations to the brand's domains ÷ all citations in the answer set.
Net sentiment% positive mentions − % negative mentions. Each mention is scored from −1 to 1 and labelled positive at ≥ 0.25 and negative at ≤ −0.25.

Dashboards show rolling seven-day windows computed daily. Deltas compare the current window with the window seven days earlier.

Sentiment and recommendation stance

When an LLM judge is configured, each mention is scored by a model that reads the answer and returns a sentiment between −1 and 1 and whether the answer recommends the brand. Without a judge, we use a transparent lexicon tuned for how engines describe products ("top choice", "steep learning curve", "expensive") with negation handling, and mark the result as estimated.

Sampling and limitations

  • Each scheduled scan takes one sample per prompt and engine. Engines are non-deterministic, so single answers can vary; trends over several runs are reliable.
  • Results depend on the market and language configured for each workspace.
  • Google AI Overviews do not appear for every query. When none is shown, the brand counts as not visible for that prompt.
  • Brand detection relies on names, aliases and domains you configure. Add aliases for abbreviations and product names to avoid misses.

The AEO audit

The audit fetches the homepage, robots.txt, the XML sitemap, llms.txt and a sample of internal pages, then runs 48 checks. Each check passes, warns or fails; category scores are weighted means of their checks, and the overall score weights categories as follows:

CategoryChecksWeight
AI crawler access1025%
Structured data1120%
Answerability925%
Authority & trust715%
Technical health1115%

Failing and warning checks become recommendations, ordered by impact, then severity, then weight.