← Back to blog

How to Track Brand Visibility Across ChatGPT, Perplexity, and Google AI Mode

Someone on your team asks ChatGPT which product to buy. Your brand appears first. A screenshot lands in Slack, everybody celebrates, and the result goes into a slide labelled “#1 in ChatGPT.”

Run the same prompt again and the order changes. Run it from another country and your brand disappears. Ask Perplexity and it recommends a different set of companies. The screenshot was real, but the conclusion was not.

AI search does not produce a fixed ranking page. It generates an answer from a prompt, an engine, available sources, location context, and a probabilistic model. Tracking it like ten blue links turns one observation into a claim it cannot support.

The right question is not “Where do we rank?” It is “Across a defined set of buyer questions, how often are we mentioned and cited, by which engines, under which conditions, and how is that changing?”

AI visibility is a sampling problem

Traditional rank tracking is already sensitive to language, location, device, and personalization. AI search adds another source of variation: generation itself.

Research by SparkToro and Gumshoe repeatedly submitted brand-recommendation prompts to ChatGPT, Claude, and Google's AI. For ChatGPT and Google AI, the researchers found less than a 1-in-100 chance that two responses contained the same brand list, and roughly a 1-in-1,000 chance that the lists appeared in the same order. The number of recommendations changed too.

Sources move as well as brands. In a study of 10,000 queries run three times on the same day, SE Ranking found that only 9.2% of exact URLs cited by Google AI Mode overlapped across all three tests. More than one in five queries had no common cited URL across the three runs.

Those numbers do not mean AI visibility is impossible to measure. They mean a single answer is a sample of one. The unit of analysis has to be a collection of controlled observations.

First, define what “visible” means

A brand can occur in an AI answer in several materially different ways:

  • Mentioned: the answer names the brand, with or without a link.
  • Recommended: the brand appears as one of the answer's proposed options.
  • Prominent: it appears early in a list or receives substantial discussion.
  • Cited: the brand's own domain is used as a supporting source.
  • Covered by a third party: a review, marketplace, publication, or community page about the brand is cited instead.

Do not collapse these into one score before storing the underlying events. An uncited recommendation shows that the model knows the brand. A citation to your documentation shows that your site entered the answer's source chain. A competitor mention supported by a review site reveals an external source you may need to understand. Those are different signals with different actions.

ChatGPT, Perplexity, and Google expose sources differently. OpenAI says ChatGPT Search can rewrite a prompt into one or more search queries and may use general location information when doing so. Perplexity describes its answers as syntheses of real-time web searches with citations to original sources. Google says AI Mode and AI Overviews may use query fan-out across subtopics and data sources—and may use different models and techniques from one another—so their responses and links can vary. Google Search Central

That makes the citation set part of the result, not decoration at the bottom of it.

Build prompts from buyer intent, not your keyword list

People use AI systems conversationally. A keyword list copied from a conventional rank tracker will miss much of the behavior you want to observe.

Start with the decisions customers actually ask for, then group prompts by intent:

IntentExample promptWhat it reveals
Category discovery“What are the best SERP APIs for a small SEO tool?”Unaided brand awareness
Comparison“Compare reliable alternatives to SerpApi for US and UK rank tracking”Competitive set and differentiation
Requirements“Which search API supports city-level Google localization and structured JSON?”Feature association
Problem solving“How can I collect Google results without maintaining proxies and parsers?”Whether the brand is connected to the problem it solves
Risk or trust“Which SERP APIs have transparent pricing and a free trial?”Commercial claims and reputation

Keep the brand name out of discovery prompts. “Is Acme a good option?” measures how the engine discusses Acme after being instructed to do so. It does not measure whether Acme would have surfaced unaided.

Use real phrasing from sales calls, support tickets, site search, forums, and customer interviews. Freeze a core panel of prompts for longitudinal comparison, but keep a smaller exploratory panel that can change as customer language changes. Otherwise the tracker becomes consistent at measuring questions nobody asks.

Control the dimensions around every run

Every observation needs enough context to be interpreted and repeated later. At minimum, store:

{
  "captured_at": "2026-08-21T14:00:00Z",
  "engine": "perplexity",
  "experience": "web_search",
  "model": "provider-default",
  "prompt_id": "category_discovery_01",
  "prompt_text": "What are the best SERP APIs for a small SEO tool?",
  "country": "US",
  "language": "en",
  "device": "desktop",
  "authenticated": false,
  "conversation_turn": 1,
  "run_number": 3,
  "answer_text": "...",
  "brands": ["..."],
  "citations": ["https://..."],
  "raw_response_id": "..."
}

The distinction between a fresh conversation and a follow-up matters: conversational history changes the input. Authentication matters because memory and account settings may influence an experience. Location matters because both search retrieval and local intent can change with geography. If any of these are left implicit, a change in the chart may be a configuration change rather than a visibility change.

This is the same reproducibility problem that appears in conventional local search. Our guide to Google search localization explains why an exit IP, country, language, and resolved location are separate variables rather than one “region” setting.

Repeat prompts, but do not manufacture fake precision

A practical starting design is:

  1. Select 20–50 prompts across the intent groups that matter commercially.
  2. Run each prompt five times per engine and market in fresh conversations.
  3. Spread runs across a defined window instead of firing every repetition in one burst.
  4. Repeat the same panel weekly or monthly with identical settings.
  5. Preserve the raw answer and sources so extraction can be audited later.

Five repetitions are enough to expose obvious instability; they are not a magic threshold. If the result will drive a large budget decision, collect more samples and report uncertainty. “Mentioned in 3 of 5 runs” is honest. “60% AI visibility” presented without the denominator, prompt set, or sampling window suggests more precision than the experiment earned.

Do not silently retry only the runs where your brand is absent. Retry rules should cover technical failures—timeouts, challenge pages, incomplete generations—not undesirable answers. Otherwise the collection pipeline itself biases the outcome.

Use metrics that survive changing lists

Position can still be recorded, but it should be conditional on appearing and aggregated across samples.

Mention rate

runs where the brand is mentioned / valid runs

This is the clearest top-line measure. Segment it by prompt group, engine, and market before calculating a global average.

Recommendation share of voice

brand recommendations / all brand recommendations observed

This reflects the competitive set. Define how aliases, parent companies, and products map to one brand before collection begins.

Citation rate

runs citing the brand's domain / valid runs

Track citations to your own domain separately from third-party pages that mention you. Domain-level and exact-URL citation rates answer different questions: whether your site is sourced at all, and which page earns the citation.

Average position when mentioned

sum of observed positions / runs where the brand appears in an ordered list

Do not assign an arbitrary position such as 11 to missing brands. Absence belongs in mention rate; prominence belongs in conditional position. Combining them hides why the metric changed.

Volatility

Compare the sets of brands or citation URLs between repeated runs using Jaccard similarity:

intersection of two sets / union of two sets

A score of 1 means the sets match; 0 means they share nothing. Reporting median similarity across repeated runs tells readers how stable the underlying answers were. A change from 40% to 50% mention rate means something different in a stable prompt category than in one where nearly every answer is unique.

Separate engine effects from market effects

Do not pool everything into one executive number first. Use a matrix:

ChatGPTPerplexityGoogle AI Mode
United StatesMention and citation ratesMention and citation ratesMention and citation rates
United KingdomMention and citation ratesMention and citation ratesMention and citation rates
GermanyMention and citation ratesMention and citation ratesMention and citation rates

This exposes actionable patterns. If your brand appears across engines in the US but nowhere in Germany, the gap is probably market-specific. If Perplexity cites you everywhere while ChatGPT never does, geography is not the leading explanation. If Google AI Mode cites pages that rank organically while another engine favors community discussions, the source strategy differs by engine.

Conventional SERP data belongs beside this matrix, not inside it. Compare organic rank, AI mention rate, and AI citation rate for the same intent and market. A page can rank well without being cited in an AI answer, or be cited even when it is not among the top organic results. Google itself notes that AI features use query fan-out and can surface a wider set of supporting pages than classic search. That gap is useful diagnostic information.

Treat extraction as a data-quality problem

AI answers do not share a stable schema. One engine may return an ordered Markdown list, another prose with inline links, and another separate source cards. Interfaces and response fields change. Brand names have aliases. Citations include redirects, tracking parameters, fragments, and syndicated copies.

Normalize without discarding evidence:

  • Store the raw answer and raw citation objects.
  • Resolve known brand aliases through a versioned mapping table.
  • Canonicalize citation URLs, but retain the original URL.
  • Distinguish a brand mention from a domain citation.
  • Attach extraction confidence and manually audit a sample.
  • Monitor brand count, citation count, answer length, and field fill rates for drift.

This is exactly the kind of pipeline that can keep returning successful responses while becoming quietly wrong. The monitoring principles in Your Scraper Isn't Blocked. It's Been Wrong for Three Weeks apply here: request success is not extraction correctness.

What the dashboard should—and should not—claim

A useful report says:

Across 30 frozen commercial-intent prompts, five runs per prompt, and US unauthenticated desktop sessions during August, PrismCrawl appeared in 42% of valid ChatGPT answers. It was cited in 18%. Mention rate was up 7 percentage points from July, while the confidence interval and answer volatility remained broadly unchanged.

A misleading report says:

PrismCrawl ranks #2 in ChatGPT.

The first statement defines its population and measurement. The second turns one generated list into a universal result.

Also keep visibility separate from outcomes. Mentions and citations are leading indicators, not revenue. Connect them to referral traffic, assisted conversions, branded search, and sales feedback where those signals are available. Google has begun testing dedicated generative-AI visibility reporting in Search Console, but the rollout is limited, and platform reporting still cannot answer how often competitors were recommended instead of you.

The durable advantage is the historical dataset

AI engines will change their models, retrieval systems, interfaces, and source policies. That makes today’s absolute score less durable than the observation history underneath it.

Save the prompt, conditions, raw answer, citations, extraction version, and timestamp. When a metric jumps, you can then ask whether your content changed, a competitor gained citations, customer language shifted, or an engine changed behavior. Without the raw observations, all four look like the same line moving on a dashboard.

PrismCrawl currently provides structured Google and Bing search results rather than ChatGPT or Perplexity answer collection. That conventional search layer is still essential: it gives an AI-visibility system the organic baseline needed to see where rankings and generated answers agree or diverge. The SEO rank tracker architecture covers scheduling and historical storage, while the API reference documents the normalized search response you can use for that side of the comparison.

The larger lesson is simple: your brand does not have one ChatGPT rank, one Perplexity rank, or even one Google AI Mode rank. It has a probability of appearing under defined conditions. Measure the distribution, preserve the evidence, and report the uncertainty. That turns AI visibility from a screenshot contest into data you can actually make decisions with.

Frequently asked questions

What is AI brand visibility?

AI brand visibility measures how often and how prominently a brand appears in answers from systems such as ChatGPT, Perplexity, and Google AI Mode. Useful measurements include mention rate, citation rate, share of voice, average position when mentioned, and answer volatility across repeated observations.

Can you track a brand's rank in ChatGPT?

You can record a brand's position within one answer, but it should not be treated as a stable rank. AI systems can return different brands, ordering, and citations for the same prompt. Position becomes useful only when aggregated across repeated runs, representative prompts, engines, locations, and time periods.

How many times should I repeat each AI visibility prompt?

There is no universal number. Five repetitions per prompt and engine is a practical starting point for directional monitoring, while higher-stakes studies should use more repetitions and report uncertainty. Keep the count, timing, location, account state, and model configuration consistent so periods remain comparable.