By Matt Emgi · Updated November 2026
GEO metrics are the numbers that show how often AI engines name, cite and recommend your brand when buyers ask about your category. Most AI visibility numbers shown to boards can’t answer one question: out of what? To show what a defensible answer looks like, we ran a panel of 80 AI answers and calculated every metric from it.
The published definitions don’t agree, and the answers shift between runs. When we studied 150 SaaS companies across 120 buying keywords, 44% of the brands in Google’s top 10 were missing from ChatGPT for the same queries. If you report numbers like that to a board, you need to know whether a change is signal or noise. This guide gives each formula, our panel’s numbers and a method that holds up.
Key Takeaways
- Write the denominator next to every GEO metric. “Citation rate” and “share of voice” each have several competing definitions.
- ChatGPT’s top-five brands overlapped just 0.23 between runs of the same prompt; Perplexity’s overlapped 0.78. A single spot-check proves nothing.
- Report each engine separately: Peec AI appeared in 38% of ChatGPT answers but 65% of Perplexity answers.
- Ignore average position. Use mention rate across a clustered prompt panel.
- Budget about 100 answers per engine per period, drawn from 25 or more prompts.
What are GEO metrics?
GEO metrics measure how visible your brand is inside AI-generated answers: how often you’re named, how often your pages are cited, how you compare with a fixed set of competitors, and whether any of it becomes pipeline. In our panel, the most-named tool on ChatGPT appeared in 58% of answers. A share like that, not a rank, is the basic unit.
Think of it as an opinion poll rather than a league table. An AI engine gives a different answer almost every time you ask, so the honest number is a rate across many answers. That’s the core measurement difference between GEO and traditional SEO.
The metrics cover presence (mention rate, prompt coverage), competition (share of voice), sources (citation rate and source mix), and quality and outcome (position, sentiment, AI traffic and pipeline). They complement your existing SEO reporting by covering the part of the buying journey that rank tracking can’t see.
How did we test these metrics? Our 80-answer panel
We ran 8 buyer prompts about AI visibility tracking tools, 5 times each, on two AI engines with web search switched on. That produced 80 answers on 10 November 2026, for $1.37 in API fees ($1.13 for ChatGPT, $0.24 for Perplexity) through DataForSEO’s LLM responses API. Every number here comes from those answers unless a third-party source is linked.
The engines were OpenAI’s gpt-5.4-mini (a ChatGPT-family model, via API) and Perplexity’s sonar. I picked our own category because I know the players well enough to spot a wrong answer. “Position” means the order in which a brand is first named in the answer text.
These were the eight prompts:
- What are the best AI visibility tracking tools for a B2B SaaS company?
- Which tool should I use to track whether ChatGPT and Perplexity mention my brand?
- Best software to monitor brand mentions in AI search engines in 2026
- What’s the best AI search visibility platform for a marketing team on a budget under $500 a month?
- Recommend a tool to measure share of voice in ChatGPT answers
- Which generative engine optimization (GEO) tracking tools have an API?
- What tools do SEO agencies use to report on AI Overviews and ChatGPT visibility for clients?
- I run marketing at a 50-person SaaS company. How do I track our visibility in AI answers?
Some are classic “best X” prompts, some carry a constraint, and the last describes a situation. Real buyers type all of these, and the phrasing changed the results more than I expected.
- It is 80 real answers from two API models with live web search, scored with one fixed set of rules.
- It isn’t the consumer ChatGPT or Perplexity apps. Those add memory, personalisation and their own search behaviour.
- It isn’t a cross-category benchmark. It’s one category (AI visibility tools) on one day.
- It is big enough to show how the metrics behave, and too small to rank vendors. For our view on the vendors themselves, read our comparison of AI visibility tools for SaaS.
- Scoring: brands were detected by name match against a list of 41 tool names we checked for; 30 were named at least once. Variants counted, so HubSpot’s AEO tool counted as HubSpot.
Raw data: all 80 answers with brands named and sources cited are in this CSV.
Which GEO metrics should you track, and how is each calculated?
Track eight metrics and write the denominator beside every one. The guides ranking for this keyword disagree on basics: “citation rate” has three published meanings and AI share of voice has four denominators. The glossary below fixes one formula per metric, with a worked value from our 80-answer panel next to each.
| Metric | Formula (per engine, per period) | Worked example from our panel |
|---|---|---|
| Mention rate | Answers naming you ÷ all answers collected | Semrush on ChatGPT: 23 of 40 = 58% |
| AI share of voice | Your brand mentions ÷ all mentions of brands in your fixed set | Semrush on ChatGPT: 23 of 117 = 19.7% |
| Citation rate | Answers citing your domain ÷ all answers collected | semrush.com on ChatGPT: 16 of 40 = 40% |
| Citation source mix | Citations to each source or source type ÷ all citations | blog.hubspot.com on Perplexity: 65 of 400 citations = 16.3% |
| First-mention rate (position) | Answers where you’re named first ÷ all answers | Semrush on ChatGPT: 12 of 40 = 30% |
| Prompt coverage | Prompts where you appear in most runs ÷ prompts in the panel | Ahrefs on Perplexity: 5 of 8 prompts |
| Sentiment and accuracy | Mentions that are positive, or that describe you correctly ÷ all your mentions | Not scored here; see the memory test below |
| AI referral traffic | Sessions from AI sources in a GA4 custom channel group | Lives in your analytics, not the panel |
In our panel the share of voice denominator was every mention of the tools on our list: 117 across the 40 ChatGPT answers and 214 across the 40 Perplexity answers. In your own reporting, use your competitor set plus yourself.
Where do the published definitions clash?
“Citation rate” means a mention rate in Discovered Labs’ guide (queries where the brand appears over queries tested) and a share of all citations in TripleDart’s guide (citations to your domain over all citations). cloro uses a third version: citations over the number of times the engine retrieved your page.
Share of voice gets divided by all tracked-brand mentions (TripleDart, cloro), by queries tested (iPullRank’s AI Search Manual, which counts queries citing you), or by all brands’ citations (Discovered Labs). Ahrefs Brand Radar weights modelled impressions by search volume, and Ahrefs changed that calculation twice in 2026, so older history may not compare.
Arithmetic slips happen too. AirOps’ GEO metrics guide includes a share of voice example where 34 of 50 prompts is shown as 45%; 34 divided by 50 is 68%. Printing raw counts beside every percentage catches this kind of error before it reaches a board.
What is AI share of voice, and how do you calculate it?
AI share of voice is your brand’s mentions divided by all mentions of a fixed competitor set, across a fixed prompt panel. In our panel, Semrush took 19.7% of all tool mentions on ChatGPT. On Perplexity it was named in a larger share of answers (63%), yet took only 11.7% of mentions, because that engine lists more tools per answer.
ChatGPT named 2.9 tools per answer on average, while Perplexity named 5.4. When an engine lists more brands, each brand’s share shrinks even if buyers see it just as often. That’s why I lead with mention rate and treat share of voice as the competitive lens.
| Tool | ChatGPT mention rate | ChatGPT share of voice | Perplexity mention rate | Perplexity share of voice |
|---|---|---|---|---|
| Semrush | 58% | 19.7% | 63% | 11.7% |
| Profound | 45% | 15.4% | 55% | 10.3% |
| Peec AI | 38% | 12.8% | 65% | 12.1% |
| Otterly | 38% | 12.8% | 50% | 9.3% |
| Scrunch | 23% | 7.7% | 35% | 6.5% |
| Ahrefs | 20% | 6.8% | 63% | 11.7% |
40 answers per engine, EMGI panel, 10 November 2026. Further down the lists: Rankscale (13%) and AthenaHQ (10%) on ChatGPT; Promptwatch (25%), HubSpot (20%) and Conductor (18%) on Perplexity.
Two rules keep this metric honest. First, fix the competitor set for the year, because adding a rival mid-year lowers your share with no real change in visibility. Second, measure across clusters of prompts. As I said in my video on the metrics a SaaS CMO should track, “there isn’t really any point of looking at specific prompts in isolation.” A cluster of prompts covering one buying job gives you a measurement; a single prompt gives you an anecdote.
What’s the difference between mention rate and citation rate?
Mention rate counts answers that name your brand. Citation rate counts answers that link to your domain, and the two often diverge. In our panel, Perplexity cited blog.hubspot.com in 25 of 40 answers but named its HubSpot AEO tool in only 8 of those 25 (five prompts, five near-identical runs each). Being a source isn’t the same as being recommended.
Other studies show the same gap. BuzzStream’s study of 12,000 AI responses found only 23.1% of brand mentions came with a citation, falling to 7.2% on list-style prompts. Semrush and Kevin Indig reported that around 62% of citations carried no brand mention. Our HubSpot case points the same way: 17 of those 25 answers (68%) cited the blog without naming HubSpot, although they come from five prompts repeated rather than 25 independent answers.
The reverse also happened. ChatGPT cited semrush.com in 16 answers and named Semrush in every one. When an engine reads a page presenting your product, you tend to get named. When it reads general category advice on your blog, you can end up as the reference rather than the recommendation. Track both numbers, and note which URLs earn each.
What is citation source mix?
Citation source mix is the share of all citations going to each source or source type: your site, competitor sites, review platforms, editorial press, community sites and third-party roundups. None of the top-ranking guides define it, yet it’s the metric that tells you where to act. On ChatGPT, semrush.com took 57 of 277 citations (20.6%); on Perplexity, blog.hubspot.com took 65 of 400 (16.3%).
The two engines sourced their answers differently. Perplexity returned 10 cited URLs per answer, and the list was identical across all five runs for 7 of 8 prompts. ChatGPT’s sources changed every run. For “What are the best AI visibility tracking tools for a B2B SaaS company?”, its five runs drew on five different source sets, two of them dominated by semrush.com.
G2 (including its learn.g2.com blog) appeared in 6 ChatGPT answers, and Capterra turned up on both engines. ChatGPT also ran hidden searches such as “site:profound.com AI visibility platform official”, checking vendors on their own sites, which is query fan-out at work. No answer in the panel cited Reddit or YouTube, so measure your own category’s mix rather than borrowing someone else’s chart.
Why is average position a misleading GEO metric?
Average position rewards brands that rarely appear. On “Recommend a tool to measure share of voice in ChatGPT answers”, Perplexity named Cognizo first in all 5 runs, a perfect average position of 1.0. Yet Cognizo appeared in just 5 of 40 Perplexity answers (13%), all on that one prompt, and in none of the ChatGPT answers.
Semrush on Perplexity had an average position of 3.0 when named, which looks worse, but it appeared in 63% of answers. Sorting by position would put Cognizo at the top of the category. Perplexity’s first cited source on that prompt was cognizo.ai itself, so a single page matching a single phrasing produced the win, and that isn’t the same as owning the category.
Larger studies agree. SparkToro and Gumshoe collected 2,961 runs of 12 prompts from 600 volunteers across ChatGPT, Claude and Google AI. There was less than a 1 in 100 chance of getting the same brand list twice from ChatGPT or Google, and roughly 1 in 1,000 of getting the same order. Rand Fishkin’s verdict: visibility percentage across many prompts is reasonable, but ranking position isn’t.
“There is no position one in GEO.”
I’ve said that on my channel, and this panel bears it out. For prominence, use first-mention rate over all answers. On that basis, Semrush led ChatGPT at 30% (12 of 40), Ahrefs led Perplexity at 25% (10 of 40), and Cognizo falls to 13%. It’s part of why ranking was never really the goal.
How much do AI answers change from one run to the next?
Answers changed a lot on ChatGPT and far less on Perplexity. We measured the overlap of top-five brands between runs of the same prompt (Jaccard: 0 means nothing shared, 1 means identical). ChatGPT averaged 0.23. Perplexity averaged 0.78 (counting the prompt where it named nothing as zero overlap), and 0.89 on the seven prompts where it named anyone.
This is the share of voice prompt, run five times on each engine:
| Run | ChatGPT named | Perplexity named |
|---|---|---|
| 1 | Otterly, Peec AI | Cognizo, Ahrefs |
| 2 | Semrush | Cognizo, Ahrefs |
| 3 | Profound | Cognizo, Ahrefs |
| 4 | Semrush | Cognizo, Ahrefs |
| 5 | No tools named | Cognizo, Ahrefs |
ChatGPT gave four different answers across those five runs. Across all prompts, its first-named tool matched in 4 of 5 runs at best and usually in 2 or 3. Perplexity’s first-named tool matched in all five runs on 5 of the 7 prompts where it named anyone.
The sources explain the difference. On almost every prompt, Perplexity reused the same cited URLs run after run. ChatGPT retrieved different pages each time, and the brands it named tracked whatever it had just read. In run 1 above it cited otterly.ai and help.peec.ai, then named Otterly and Peec AI; in run 2 it cited semrush.com and named Semrush.
A single ChatGPT spot-check therefore tells you very little. Treat volatility as a metric in its own right, because without a known noise floor you can’t separate a real gain from a wobble.
Why should you never pool ChatGPT and Perplexity numbers?
You shouldn’t pool them because the engines disagree too much for an average to mean anything. Peec AI appeared in 38% of ChatGPT answers and 65% of Perplexity answers in our panel. Pool them and you get 51%, a number that describes neither engine a buyer actually used.
| Tool | ChatGPT (40 answers) | Perplexity (40 answers) | Pooled (80 answers) |
|---|---|---|---|
| Semrush | 58% | 63% | 60% |
| Peec AI | 38% | 65% | 51% |
| Profound | 45% | 55% | 50% |
| Otterly | 38% | 50% | 44% |
| Ahrefs | 20% | 63% | 41% |
Ahrefs shows the distortion most clearly: fifth when pooled, joint second on Perplexity and sixth on ChatGPT. The pooled figure also moves if you simply run one engine more often, with no change in reality. Pooling hides the thing your team can act on, which is the engine where you’re weak. Give Google its own line too, since AI Overviews pick SaaS brands in their own way.
What is LLM visibility, and why does memory differ from search?
LLM visibility is how a language model represents your brand, both from training data (memory) and from pages it retrieves live (search). When we sent “What are the best AI visibility tracking tools for a B2B SaaS company?” to gpt-4o-mini with web search off, it recommended GA4, Hotjar, Mixpanel and Amplitude, misreading the category. With search on, the panel answers named real category tools (a different, newer model, so treat this as an illustration, not a controlled comparison).
Newer categories can be thin in training data, so an engine answering from memory may miss the right brands entirely. When I tested ChatGPT by hand for a video, it answered from memory without searching most of the time. That was one session rather than a study, but it’s reason enough to check both modes.
Sentiment and accuracy belong here. Our panel didn’t score sentiment, so I won’t invent a number. If you track it, add an accuracy check: of the answers naming you, what share describe your category, buyer and pricing correctly? A neutral, accurate mention beats a glowing one that gets your product wrong. For the retrieval side, see how ChatGPT decides which software to recommend.
How does prompt phrasing change prompt coverage?
Prompt coverage is the share of your panel’s prompts where you appear in most runs, and phrasing can wipe it out. Asked “I run marketing at a 50-person SaaS company. How do I track our visibility in AI answers?”, Perplexity named zero tools in all 5 runs, and ChatGPT named none in 3 of 5.
Compare that with “Which tool should I use to track whether ChatGPT and Perplexity mention my brand?”, where Perplexity named Ahrefs and Semrush in every run. The situational prompt got a method instead of a shortlist, so every vendor got zero visibility.
| Tool and engine | Prompts with at least one mention | Prompts with a mention in 3+ of 5 runs |
|---|---|---|
| Semrush on ChatGPT | 8 of 8 | 3 of 8 |
| Peec AI on ChatGPT | 7 of 8 | 3 of 8 |
| Ahrefs on ChatGPT | 3 of 8 | 2 of 8 |
| Peec AI on Perplexity | 6 of 8 | 5 of 8 |
| Semrush on Perplexity | 5 of 8 | 5 of 8 |
| Ahrefs on Perplexity | 5 of 8 | 5 of 8 |
The engines behave very differently here. On ChatGPT, Semrush appeared on every prompt but held only three consistently. On Perplexity, Ahrefs and Semrush were all-or-nothing, appearing in all five runs of a prompt or in none, so Ahrefs’ 63% there really means “5 of 8 prompts”.
The practical lesson is to write at least three phrasings per buying job, including situational “I run X, how do I…” prompts. That’s how people talk to assistants, and it’s where whole categories can disappear from answers.
How many prompts and runs do you need for reliable GEO metrics?
You need more than most dashboards use. A 45% mention rate from 40 answers has a 95% Wilson interval of roughly plus or minus 15 points, and 100 answers narrows it to about plus or minus 10. So 40 answers per engine can’t detect a 10-point change. Budget for about 100 answers per engine per period, drawn from 25 or more prompts.
| Answers per engine | 95% range around a 45% mention rate | Roughly |
|---|---|---|
| 40 | 31% to 60% | ±15 points |
| 100 | 36% to 55% | ±10 points |
| 200 | 38% to 52% | ±7 points |
These ranges assume independent answers. Repeat runs of one prompt are not independent, so on a steady engine like Perplexity the real range is wider than the table shows. Add prompts, not repeats.
Comparing two months is harder still, because both readings carry noise. By my rough maths, at 100 answers per period a move needs about 14 points before I’d call it real; at 200, about 10. cloro’s guide makes a similar warning about small samples and month-on-month claims.
A few repeat runs still help on a volatile engine like ChatGPT, so a workable split is 25 to 30 prompts at about 4 runs each, giving 100 to 120 answers per engine. At our panel’s prices, 100 to 120 ChatGPT-family answers cost roughly $3 and the same on Perplexity under $1, so a full cycle is about $4 in API fees.
How do you measure AI visibility? A repeatable monthly method
Measure AI visibility with a frozen panel: the same prompts, competitors, engines and settings each cycle, run several times and reported per engine. A full cycle costs about $4 in API fees, so the constraint is discipline rather than money. This is the method I’d hand to any SaaS marketing lead who has to report the numbers.
- Cluster prompts by buying job. For example: category discovery (“best X for Y”), constraints (“under $500 a month”, “has an API”), comparisons, and situational questions (“I run marketing at…”). Use four to six clusters, 25 or more prompts in total, with varied phrasing.
- Freeze the panel. Label it v1 and never edit a prompt mid-period. New prompts go into v2, reported alongside v1 for one cycle.
- Fix the competitor set. Choose five to eight named rivals plus “other”. That’s your share of voice denominator, all year.
- Run each prompt more than once. Three to five runs on volatile engines; on steady ones, extra prompts help more than extra runs. Log model, search setting, date and location.
- Score with written rules. Define a mention (including name variants), position, and a citation of your domain.
- Report per engine, with counts. Show “18 of 40 (45%)”, never just “45%”.
- Baseline twice. Run the full panel twice, a week apart, before work starts. The gap between them is your noise floor.
- Re-run monthly, review quarterly. Monthly runs show the trend, and a quarterly review checks the panel still matches how buyers ask.
You can run this in Semrush’s AI Visibility Toolkit, Ahrefs Brand Radar, Profound, Peec AI, Otterly or straight through an API. Before you trust any tool’s numbers, ask which denominator it uses, how many runs it takes per prompt and whether it pools engines. For the full format, see what an AI visibility audit for SaaS covers.
How do you connect AI visibility to pipeline?
Use several signals together, because none is complete alone. In 2025 Ahrefs found that AI search sent 0.5% of its traffic but 12.1% of its signups, around 23 times organic’s conversion rate. That’s one site, but it shows why AI visits matter and why session counts alone undersell them.
Set up an AI channel group in GA4
Create a custom channel group with a source rule matching chatgpt\.com|perplexity\.ai|gemini\.google\.com|claude\.ai|copilot\.microsoft\.com, placed above Referral. Then accept its blind spots. AI Overviews clicks arrive from google.com and get filed as Organic Search, and ChatGPT visits without a referrer land in Direct. Your GA4 number is a floor, not a total.
Ask buyers directly
Add an open-text question to your demo form. I prefer “walk us through how you found us” to a dropdown, because people name the tool they used. Count answers mentioning ChatGPT, Perplexity or “AI”. Our client Constant Hire reported that 26% of its leads in August 2026 came from AI recommendations, against 27% from Google search.
Watch branded search and pipeline density
Some buyers who meet you in an AI answer will search your name next, so track branded impressions in Search Console alongside your panel. Then tie it together with a metric I use called pipeline density: pipeline per 1,000 organic visits. It stops you celebrating traffic that never books a demo. As a hypothetical, a site with 6,000 visits and 15 demos (2.5 per 1,000) beats one with 30,000 visits and 2 demos (0.07 per 1,000).
What should your GEO metrics report to the CEO include?
Your CEO report should fit on one page, split by engine, with counts beside every percentage. Ahrefs was named in 20% of ChatGPT answers and 63% of Perplexity answers in our panel, and a CEO needs to see both. Lead with mention rate and its range, then share of voice, citations and coverage, then the pipeline signals.
| Line | How to show it |
|---|---|
| Mention rate, per engine | 45% (18 of 40), with its 95% range |
| AI share of voice | Against your fixed competitor set, per engine |
| Citation rate | Answers citing your domain, plus your top cited URLs |
| Prompt coverage | Prompts held in most runs, by buying-job cluster |
| Noise floor | Gap between your two baseline runs |
| AI-referred sessions and self-reported AI leads | GA4 channel group plus demo-form answers |
| Branded search and pipeline density | Monthly trend |
Leave out average position, single screenshots and pooled scores, because they look precise while misleading. When the numbers need moving, the levers are in our guide to LLM SEO for SaaS companies.
Frequently asked questions
What are GEO metrics?
GEO metrics measure your brand’s visibility in AI-generated answers. The core set is mention rate, AI share of voice, citation rate, citation source mix, first-mention rate, prompt coverage, sentiment and AI referral traffic. In our panel, a tool named first on every run of one prompt appeared in only 13% of answers overall, which is why rates beat ranks.
How do you measure AI visibility?
Build a frozen panel of prompts clustered by buying job, fix a competitor set, run each prompt more than once per engine and count how often you’re named and cited. Report each engine separately. In our panel, the same tool was named in 20% of ChatGPT answers and 63% of Perplexity answers.
What is AI share of voice?
AI share of voice is your brand mentions divided by all mentions of a fixed competitor set across a prompt panel. It depends on how many brands an engine lists. In our panel, Semrush had 19.7% share on ChatGPT, which named 2.9 tools per answer, but 11.7% on Perplexity, which named 5.4.
How many prompts do I need to track AI visibility?
Aim for about 100 answers per engine per period, drawn from 25 or more prompts, with a few repeat runs on volatile engines. At 40 answers, a 45% mention rate carries a 95% range of 31% to 60%. At 100 answers it narrows to 36% to 55%, roughly plus or minus 10 points.
Can GA4 track traffic from ChatGPT and other AI tools?
GA4 can track part of it. A custom channel group matching chatgpt.com, perplexity.ai, gemini.google.com, claude.ai and copilot.microsoft.com catches referred visits. It misses AI Overviews clicks, which GA4 files as Organic Search, and ChatGPT visits without a referrer, which land in Direct. In 2025, Ahrefs found AI search drove 12.1% of its signups from 0.5% of its traffic.
What is a good AI visibility score?
There’s no universal benchmark, and published ranges rarely show the dataset behind them. Judge your score against your own baseline and your fixed competitor set, per engine. For reference, no tool in our panel was named in more than two-thirds of answers on either engine.
What should you do next?
A GEO metric needs a denominator, a run count and an engine label before it counts as a measurement. Freeze a clustered panel, fix your competitors, collect enough answers per engine to beat the noise, and tie the results to pipeline through GA4, self-reported attribution and branded search.
If you’d like a second pair of eyes on your starting point, our AI visibility audit builds that baseline per engine, with the method shown.