GEOAI visibility

How to Measure AI Visibility (and What an AI Visibility Score Is)

Measure AI visibility as the share of AI answers that name your brand, per engine, over a fixed set of buyer questions. Formulas and our own tracker data.

Andrey Dereviankin

COO · AI Search & Data Architecture

Published 14 min read
A row of twelve identical AI answer cards under a measuring ruler, with one card's text line in orange where the brand is named.

You measure AI visibility by asking ChatGPT, Perplexity and Google AI Overviews the same fixed set of buyer questions on a schedule and counting how many answers name your brand, engine by engine. An AI visibility score is any single number built from those counts, usually on a 0–100 scale. No standard formula exists, so a score means something only once you know its questions, engines, time window and denominator.

The tracker we run at ai.verticality.co does not produce one score. Its headline is the mention rate over non-branded questions, reported separately for each engine. Below are the definitions from that tracker’s code, how to build the question set, why one run is never enough, a worked example on our own brand, and a spreadsheet method for teams without a tool.

What is an AI visibility score?

An AI visibility score is a summary number for how often AI assistants include a brand in their answers. Vendors build it from some mix of mentions (the answer names you), citations (the answer links to your site), prominence (where you appear), sentiment and share of voice against competitors, then scale the result to 0–100. Each vendor picks its own inputs and weights, so a 40 from one tool and a 40 from another are not the same measurement.

Ask four questions before you trust any score:

  1. Which questions? If prompts that already contain your brand name are counted, the score rises simply because you asked about yourself.
  2. Which engines? A figure averaged across ChatGPT, Perplexity and Google hides the engine where you are absent.
  3. How many runs? One run per question is a sample of one.
  4. What is the denominator? All answers, all questions, or only the queries where the engine showed an answer at all.

Why does our tracker report rates instead of one score?

The Verticality AI Visibility Tracker reports every metric per engine and never blends engines into one number; the rule is written into its specification. Our own data shows why. Over the 30 days to 3 October 2026, ChatGPT named verticality.co in 5.0% of answers to non-branded questions, Perplexity in 1.8% and Google AI Overviews in 0.09%. The average of the three, 2.3%, describes none of the engines and says nothing about where to work next. Each engine finds and picks sources differently; our LLM SEO page covers that model by model.

Bar chart of verticality.co's mention rate per engine: 5.0% on ChatGPT, 1.8% on Perplexity and 0.09% on Google AI Overviews; a dashed line marks their 2.3% average, which matches none of them.

Averaged together, our three engines read 2.3%, a number that describes none of them.

Weights have the same problem. A composite score must decide how many mention points one citation is worth, and any choice is arbitrary. Sentiment labels (positive, neutral, negative, mixed) have no interval scale, so the tracker shows them as counts and never averages them. If a board wants a single figure, give it the non-branded mention rate for each engine, side by side, with the window and the number of questions.

Which metrics does an AI visibility tracker measure?

These are the metrics our tracker computes, with the formulas from its code. An eligible answer is one from a fully collected day, scanned by the current version of the brand detector.

MetricFormulaScope
Mention rate (headline)answers that name the brand ÷ eligible answersNon-branded questions, per engine
Share of voiceyour (answer, brand) pairs ÷ the same pairs for you plus a hand-picked competitor setNon-branded questions, per engine
Citation rateanswers whose source list links to your domain ÷ eligible answersPer engine, never mixed with mentions
Citation shareyour citing answers against the same competitor setShown only when every brand in the set has a verified domain
Citation ownershipcitations to your domains, to competitors’ domains and to third-party sites, as shares of all citationsAll engines
Brand accuracy and sentimentwhat answers to questions that name you say; sentiment as counts of four labelsBranded questions only
Position in the answerthe brand’s order of first appearance among the brands namedStored, not reported

Mention rate

The mention rate is the share of eligible answers that name your brand, computed only over non-branded questions such as “best Reddit marketing agency for SaaS”. Branded questions (“Is Verticality any good?”) have their own block, comparative questions that name a competitor have a third, and the three are never added together. For Google AI Overviews, a query where Google showed no AI Overview still counts as an answer that did not mention you. Dropping those queries would shrink the denominator and inflate the rate on exactly the topics where Google shows the fewest AI Overviews.

Diagram of the mention rate: answers that name the brand divided by eligible answers, where a Google query with no AI Overview counts as no mention, and partial days, branded questions and comparative questions are left out.

The denominator decides the rate. On Google, a query with no AI Overview stays in as a no; partial days, branded questions and comparative questions stay out.

Share of voice

Share of voice divides your mentions by the mentions of you plus a fixed list of competitors you chose, not by every brand the AI has ever named. Our tracker caps that list at 20 competitors, and a brand joins it only when someone adds it by hand. A list that grows automatically picks up every agency or tool an answer names in passing, and your share then falls against brands you never agreed to be measured against.

Citation rate and citation share

A citation is a URL in the engine’s own source list: ChatGPT’s sources, the references under an AI Overview, Perplexity’s annotations. The tracker credits a citation to you when the cited host is your domain or one of its subdomains. Mentions and citations are separate events. In our ChatGPT data, 138 answers named and linked verticality.co, 18 named us without a link and 6 linked us without naming us. In Perplexity, 33 answers cited one of our pages without naming Verticality at all.

Verticality's AI visibility tracker showing a Perplexity answer from 29 September 2026 to 'How much does a Reddit marketing agency cost per month?' that lists verticality.co as source 2, marked Owned, while the answer text never names Verticality.

Perplexity, 29 September 2026: our Reddit agency page is source [2], and the line it backs says “Some agencies”. That is a citation without a mention.

Position and sentiment

Many dashboards show an average position for a brand inside AI answers. Our tracker records the order in which brands first appear but does not report it, because that order changes too much between runs of the same question to be a stable number. Sentiment is read only in answers to branded questions that name the client, and it is shown as the count of positive, neutral, negative and mixed answers per engine.

What counts as a mention?

The tracker matches each answer’s text against a dictionary of the brand’s name and aliases; a language model never decides whether a brand was mentioned. By default, matching ignores letter case, typographic quotes and dashes, and a leading “The”. Two rules stop false hits. A link whose visible text is a bare domain, such as a source chip reading “verticality.co”, is removed before matching, because a source chip is a citation, not a mention. A brand whose name is also an ordinary word counts only when it is capitalised and something marks it as a name: it sits mid-sentence, it is bold or a link, it stands as a label before or after a colon, or the same answer cites the brand’s domain.

How do you build a prompt set for AI visibility?

A prompt set is the fixed list of questions you ask every engine on every run. Start with the questions buyers ask before they know your name, then add a smaller number that name competitors or you. Our tracker’s question generator keeps at least 65% of a tracked set non-branded and at most 15% branded, with comparative questions making up the rest, spread over 6 to 10 topic clusters. A question that names your brand is filed as branded automatically, and a non-branded question that names a tracked competitor becomes comparative, so the headline rate never includes a question that hands the AI your name.

Mix short category questions (“best GEO agency”) with longer questions that describe a buyer’s situation, because people type both into assistants. Keep the set fixed. When you change it, compare only the questions present in both versions, or a jump in the rate may come from new questions rather than new visibility. Our own set has 130 questions, 111 non-branded and 19 comparative, about Reddit marketing and AI search services. It has no branded questions yet, so our brand-accuracy block reads “not measured” rather than zero.

Why do AI answers change between runs, and how many runs do you need?

AI assistants generate each answer fresh, so the same question asked twice can name different brands. A 2026 paper by Julius Schulte, Malte Bleeker and Philipp Kaufmann argues that visibility in AI search should be described as a distribution across repeated measurements, not as a single observation (Don’t Measure Once, arXiv, April 2026). Our data shows the size of the effect: on the same 111 non-branded questions, ChatGPT named Verticality in 2 answers on 17 September 2026 and in 10 answers on 26 September.

Dot chart of how many of the same 111 non-branded questions ChatGPT answered naming Verticality each day, by week, from 7 September to 3 October 2026: anywhere from 2 to 10 a day, drifting higher in the last two weeks.

Each dot is one day of the same 111 questions on ChatGPT: 2 answers named us on 17 September and 10 on 26 September.

Three rules keep the numbers honest:

  • Pool many runs. The tracker asks every question once a day on each engine and pools 30 days, so each engine’s rate rests on about 3,100 answers. A one-off audit runs the full question set three times on the same day.
  • Drop broken days. A day when an engine answered only part of the set is excluded, not counted as zeros. In our window ChatGPT lost one day (129 of 130 questions collected), and one day had no run on any engine.
  • Mark measurement changes. Every edit to the brand dictionary or the competitor list creates a new detector version, shown on the trend chart. A step on a marked day is a change in how visibility is measured, not in visibility.

Worked example: what does our own tracker show for verticality.co?

These are verticality.co’s numbers in ai.verticality.co for 4 September to 3 October 2026: 111 non-branded and 19 comparative questions, asked every day on three engines.

EngineMention rate, non-brandedShare of voiceAnswers citing verticality.co
ChatGPT5.0% (156 of 3,108)5.7%4.6% (144 of 3,108)
Perplexity1.8% (57 of 3,219)1.7%2.8% (90 of 3,219)
Google AI Overviews0.09% (3 of 3,219)0.1%0.12% (4 of 3,219)

Read the table one engine at a time. ChatGPT names us in about 1 non-branded answer in 20, and 7 of the 19 competitors in our share-of-voice set are named more often. Google AI Overviews almost never names us, although Google showed an AI Overview for 3,165 of the 3,219 queries, so the gap there is real and not missing data.

The trend tells the rest. From 3 to 6 September every engine named us in 0 of 111 answers; the first ChatGPT mentions came on 7 September, four days after we turned off Cloudflare’s AI-crawler block on our site. ChatGPT’s weekly rate then rose from 4.5% in the week of 7 September to 7.4% in the week of 28 September. Of the 131,069 citations across all answers in the window, 0.29% point to verticality.co and 89.5% to third-party sites, which is why most of our work happens off our own site.

Grid of 1,000 dots standing for 131,069 citations in AI answers from 4 September to 3 October 2026: 3 orange dots for verticality.co (0.29%) against 895 for third-party sites (89.5%), with the rest going to competitors' sites.

Of 131,069 citations in a month of AI answers, 0.29% pointed to our site and 89.5% to third-party pages.

How do you measure AI visibility without a tool?

A spreadsheet is enough for a small brand. Pick 20 non-branded questions, ask each one in ChatGPT, in Perplexity and in Google (where you record the AI Overview), and repeat the round on three different days. That gives 60 answers per engine. Log one row per answer:

ColumnWhat to record
Questionthe exact wording, unchanged between rounds
Typenon-branded, comparative or branded
EngineChatGPT, Perplexity or Google AI Overview
Datethe day of the round
Namedyes or no: does the answer name your brand
Linkedyes or no: does the source list link to your domain
Brands namedevery competitor in the answer, in order
Sourcesthe cited domains

For each engine, the mention rate is the rows marked Named ÷ all rows for that engine, and the citation rate is the rows marked Linked ÷ all rows. Share of voice is your mentions ÷ mentions of you plus the five to ten competitors you actually lose deals to. A Google query with no AI Overview stays in the sheet as a row with Named = no. Ask every question in a new chat with no earlier conversation in it.

Expect noise. With 60 answers per engine, each answer moves the rate by about 1.7 percentage points, so a difference of one or two answers between months is not a trend. Repeat the round monthly with the same 20 questions, and add new questions as a separate batch with its own rate.

Infographic of a manual AI visibility baseline: 20 questions asked on ChatGPT, Perplexity and Google AI Overviews on 3 days gives 180 answers, 60 per engine, so each answer moves an engine's rate by about 1.7 points.

At 60 answers per engine, one answer moves the rate by 1.7 points, so a change of one or two answers is noise.

What is a good AI visibility score?

No universal benchmark exists, because the rate depends on the questions you pick: a narrow set about your exact niche produces a higher rate than a broad category set. The useful comparison is your competitors on the same questions and engines. Our tracker’s audit report places the client’s rate next to the most-named competitor’s rate over the same denominator. In our own ChatGPT data, the most-named agency in our set appears in 11.7% of non-branded answers against our 5.0%, so the gap to close on that engine is about 7 percentage points.

Visibility is not traffic. A rising mention rate does not prove more visits or sales, so measure clicks from AI assistants separately in your analytics and treat the mention rate as the leading indicator.

Can Verticality measure AI visibility for my brand?

Yes. For a quick first read, the free AI visibility checker asks 40+ buyer questions in ChatGPT and Google AI Overviews and emails your mention rate per engine within 24 hours. Every GEO program we run opens with a free two-week AI visibility audit that you keep even if you stop there: 50–200 questions your buyers ask, your mention rate on ChatGPT, Google AI Overviews and Perplexity, the brands named in your place and the sources the engines cite. The baseline is ready by day 10, and every monthly report compares against it. The program costs $2,500–$7,500 a month, month-to-month. See how the GEO program works →

Frequently asked questions

What is an AI visibility score?

An AI visibility score is a single number, usually on a 0–100 scale, that summarises how often AI assistants such as ChatGPT, Perplexity and Google AI Overviews include a brand in their answers. Each vendor combines mentions, citations, prominence, sentiment and share of voice with its own weights, so scores from different tools are not comparable. Verticality's tracker reports a separate mention rate for each engine instead of one score.

Is there a standard formula for measuring AI visibility?

No industry standard exists. The common building block is the mention rate: answers that name the brand divided by all answers to a fixed set of questions. Verticality's tracker computes it per engine over non-branded questions only, and counts a Google query that showed no AI Overview as an answer without a mention.

How many prompts do you need to measure AI visibility?

For a first manual baseline, 20 non-branded questions asked on three engines on three separate days gives 180 answers, 60 per engine; each answer then moves an engine's rate by about 1.7 percentage points. Verticality's tracker asks 130 questions every day and pools 30 days, which is about 3,100 answers per engine.

Should branded prompts count toward AI visibility?

Not in the headline number. A question that contains your brand name invites the AI to mention you and inflates the rate. Verticality's tracker reports branded questions in a separate brand-accuracy block and computes mention rate and share of voice over non-branded questions only.

What is the difference between an AI mention and an AI citation?

A mention is your brand name in the answer text. A citation is a link to your site in the engine's list of sources. The two happen independently: in Verticality's own Perplexity data for September 2026, 33 answers cited a verticality.co page without naming the brand. Track them as two separate rates.

Want your brand named in AI answers?

Our free AI visibility audit asks ChatGPT, Perplexity and Google AI Overviews the questions your buyers ask, shows who gets named instead of you and which sources they cite, and ends with a ranked work plan.

Get a free AI visibility audit

Not ready for a call? Run the free AI visibility checker: 40+ buyer questions in ChatGPT and Google AI Overviews, report by email within 24 hours.