How to Calculate AI Visibility as an Appearance Rate Across Repeated Runs
To calculate AI visibility as an appearance rate, run each prompt several times in each engine and record whether your brand appears in each run. Divide the number of appearances by the number of runs. That is the prompt's appearance rate: named in 6 of 10 runs is 60%. Average the prompt rates to get an overall visibility percentage for a set of prompts, and always show how many runs sit behind it. Keep "mentioned", "recommended" and "cited" as separate measures, since they mean different things. Repeated runs matter because AI answers change from run to run. SparkToro found less than a 1 in 100 chance of the same brand list appearing twice for the same prompt, so a single check or a rank position tells you very little.
Why appearance rate instead of rank?
- Answers vary. The same prompt can name you in one run and not the next.
- Order is unstable. Position in a list changes even more than membership, so "rank 2" is rarely reproducible.
- Buyers see one run. What matters is the chance that the answer a buyer sees includes you, which is exactly what an appearance rate estimates.
How is the calculation done?
For each prompt and engine:
- Appearance rate = runs in which your brand is named ÷ total runs.
- Recommendation rate = runs in which you are the recommended or top choice ÷ total runs.
- Citation rate = runs in which your site is cited ÷ total runs.
Across prompts:
- Overall visibility = the average of prompt appearance rates. Averaging prompt rates, rather than pooling all runs, stops prompts with more runs from dominating.
- Weighted visibility = the sum of each prompt rate multiplied by its weight, divided by the total weight. Weights can reflect business value or estimated demand.
Report each engine separately before combining them.
How to calculate an AI visibility percentage from prompt results in a spreadsheet
Use one row per run:
| Column | Example |
|---|---|
| Date | Sep 1, 2026 |
| Engine | ChatGPT |
| Prompt ID | P07 |
| Prompt | Best payroll software for UK restaurants |
| Run | 3 |
| Mentioned | 1 |
| Recommended | 0 |
| Cited | 1 |
| Competitors named | Brand A; Brand B |
Then, on a summary sheet:
- Runs for a prompt and engine:
=COUNTIFS(C:C,"P07",B:B,"ChatGPT") - Appearance rate:
=AVERAGEIFS(F:F,C:C,"P07",B:B,"ChatGPT"), which works because "Mentioned" holds 1 or 0. - Overall visibility for an engine: the average of that engine's prompt appearance rates.
- Weighted visibility:
=SUMPRODUCT(rates,weights)/SUM(weights)over the prompt rates and their weights.
Add a column for the number of runs next to every rate, and a confidence interval if you want to show uncertainty. How to calculate intervals is covered in how to count brand mentions in AI responses with keyword regex and confidence intervals.
How to calculate ChatGPT visibility percentage with niche prompts
Niche prompts, such as "payroll software for UK restaurants with tronc", are often where a business wins or loses. They also produce small numbers, so the rates are noisy. Three adjustments help:
- Run niche prompts more often, for example ten runs instead of five, so a single run matters less.
- Group related niche prompts into a topic and report the topic's average rate alongside individual prompts.
- Automate through the API, not the app. OpenAI's terms prohibit automatically or programmatically extracting output from its services, so scripts should use the API with web search. API answers can differ from the ChatGPT app, so spot-check the app by hand.
Keep settings fixed: the same model, search setting, language and location for every run.
How should a business report AI visibility as mentioned or not mentioned?
For leadership and clients, simple categories often work better than percentages. A practical scheme, which you can adjust:
| Category | Appearance rate across runs |
|---|---|
| Consistently mentioned | 70% or more |
| Sometimes mentioned | 30% to 69% |
| Rarely mentioned | 1% to 29% |
| Not mentioned | 0% |
Show the category per prompt or topic, with the underlying rate and number of runs available on request. This keeps reports readable while preserving the fact that visibility is a probability, not a yes or no. Explaining why tracking over time matters is covered in why track AI visibility over time instead of relying on one snapshot.
How many runs are enough?
It depends on how precise you need to be. As a rough guide, with 10 runs per prompt, a 50% rate could plausibly be anywhere from about 24% to 76%. Across 20 prompts with 10 runs each, the overall rate is much more stable. For monthly tracking, five to ten runs per prompt per engine is a common compromise between cost and precision. Increase runs for the prompts that matter most.
Which extra columns are worth adding?
Beyond mentioned, recommended and cited, a few more fields make the sheet far more useful later:
- Role of the mention: top pick, listed option, alternative, or warning.
- Accuracy flag: whether prices, locations or features stated about you were correct.
- Cited URLs, so you can see which of your pages, and which third-party pages, support the answer.
- Model name and search setting, since results change when engines update models.
- Notes on anything unusual, such as a competitor you have never heard of.
How do you track appearance rates over time?
Plot each engine's overall rate and each topic's rate month by month, with the number of runs shown. Use a rolling three-month average for small topics to smooth out noise. Mark the dates of your own changes, such as new pages or review campaigns, and of known platform changes, on the same chart. Keep a few control prompts on topics you are not working on. If their rates move as much as your target prompts, the engine changed, not your visibility.
What mistakes should you avoid?
- Counting a mention in the question as a mention in the answer. Track branded prompts separately.
- Mixing engines or settings in one rate.
- Pooling all runs so that prompts with more runs dominate.
- Reporting rates without the number of runs.
- Treating "mentioned" as "recommended". A mention in a list of ten, or a warning, is not the same as being the suggested choice.
What might an illustrative calculation look like?
Consider an illustrative payroll software company tracking 15 prompts in ChatGPT, ten runs each. Its appearance rates range from 0% for "payroll for UK restaurants with tronc" to 90% for "best payroll software for small businesses". The average across prompts is 41%. Its recommendation rate is 12%, and its citation rate 18%. In the categorised report, 4 prompts show "consistently mentioned", 5 "sometimes", 3 "rarely" and 3 "not mentioned". The three unmentioned prompts are all niche hospitality questions, which become the focus for new content.
What do people ask about appearance rates?
Should position in the list count?
Only as a secondary measure, averaged over many runs. Appearance and recommendation matter more.
Can we compare our rate with competitors?
Yes. Calculate competitors' appearance rates from the same runs, which shows share of the available places.
How often should rates be recalculated?
Monthly for most programmes, using the same prompts and settings each time.
Is 40% visibility good?
It depends on the prompts. For broad category prompts in a crowded market, it can be strong; for your own niche, it may be low.
Published by The Kovmere Team · updated Sep 29, 2026 · More resources