Choosing AI Visibility KPIs You Can Defend
99Visibility Research · Updated October 21, 2026 · 7 min read
Short answer
Defensible AI visibility KPIs measure things you control or can observe directly. Track how many access gates each AI crawler passes, the error rate of facts AI answers state about you, how often each engine names you for a fixed set of buyer questions, and the impressions and citations Google and Bing report first-hand. Avoid AI rank and AI traffic share. No engine publishes position data, and referral tagging differs by engine.
Key takeaways
- Access gates passed is the most defensible KPI because the evidence is strongest at the access stage and you can fix every failure.
- Measure accuracy as a rate over answers returned, and track the single worst error separately so it is never averaged away.
- Report mention rate per engine, never as one blended number, because engines behave very differently for the same site.
- First-party impressions from Google Search Console and Bing Webmaster Tools are the only numbers the engines publish themselves.
- Drop AI rank and AI traffic share as KPIs: there is no position data to check a rank against, and referral tagging is uneven.
The four KPIs worth reporting
A defensible KPI sits at a stage you can either fix or observe directly. If you want the full pipeline first, see how AI search picks sources. These four hold up.
| KPI | What it counts | Stage | Who controls it |
|---|---|---|---|
| Access gates passed | Crawlers that can fetch your key pages with key facts in the raw HTML | Access | You and your CDN |
| Accuracy error rate | Returned answers that state a wrong fact about you | Generation | You control your facts; the model controls the answer |
| Per-engine mention rate | Share of a fixed question set where each engine names you | Retrieval and generation | Observed, not controlled |
| First-party impressions | Impressions and citations Google and Bing report for your site | Retrieval | Reported by the engine |
Access gates passed
OpenAI's crawler documentation says sites opted out of OAI-SearchBot "will not be shown in ChatGPT search answers", and that its GPTBot (training) setting is independent of OAI-SearchBot (search). OpenAI's help page on ChatGPT search adds a second condition: your host or CDN must allow traffic from OpenAI's published searchbot IP addresses. Vercel found that ChatGPT and Claude crawlers fetch JavaScript files but don't execute them, so content that appears only after JavaScript runs is invisible to them. Score this KPI as gates passed out of gates checked, per crawler.
Accuracy error rate
Count the answers that actually came back, then the share that contain at least one wrong fact about you. Established factuality metrics such as FActScore divide by a count of observations. A raw penalty sum with no denominator makes your score fall just because you asked more questions. Track the worst error on its own line too. A wrong price or a wrong acquirer should stay visible even in a large sample. Our definition of factual accuracy in AI answers covers what counts as wrong.
Per-engine mention rate
Use a fixed set of buyer questions. Record, per engine, the share of answers that name you. Note whether each answer showed sources, because that tells you whether it searched the web. Mentions and citations are different numbers, explained in citation rate vs citation share.
First-party impressions
As of October 2026, Google Search Console's generative AI report shows impressions for AI Overviews and AI Mode, with no clicks, CTR or position. Bing Webmaster Tools' AI Performance report shows citations and the grounding queries Copilot actually ran. Microsoft describes its Citation Share figure as observational, not a ranking or a scoreboard.
How to set up the four KPIs
Run these steps once to build a baseline. Then repeat them on the schedule below.
- Write a fixed question set. Use the questions a buyer actually asks. Say you run a dental clinic in Austin: "Which Austin dentists do same-day crowns?" is better than your brand name. Freeze the list.
- List the engines and their search crawlers. For example OAI-SearchBot (ChatGPT search), PerplexityBot, Claude-SearchBot, Googlebot, bingbot and Meta-WebIndexer. Keep training bots such as GPTBot on a separate line.
- Check every access gate per crawler. Confirm robots.txt allows it. Request your key pages as that crawler and record the status code. The AI Crawler Checker shows which crawlers your firewall turns away. Then confirm your price, product names and key facts are in the HTML before JavaScript runs.
- Write down your brand facts. Price, founding year, location, product names. Make sure your own pages state each one the same way everywhere.
- Run the question set on each engine. Stay logged out with memory off. Record whether you were named, which sources were shown, and any wrong fact. The free checker on this site gives a snapshot for up to three buyer questions.
- Pull first-party numbers. Export Google Search Console AI impressions and Bing Webmaster Tools citations and grounding queries for the same period.
- Report each KPI per engine, with the date. Note how many answers returned and how many showed sources.
Monthly KPI checklist
- robots.txt allows each search crawler you care about, checked bot by bot
- Each crawler gets a 200 response from your firewall or CDN, not a 403 or a challenge page
- Key facts appear in the raw HTML, not only after JavaScript runs
- No accidental noindex, nosnippet, max-snippet:0 or data-nosnippet on pages that should appear
- Brand facts are stated consistently across pricing, about and footer
- The same frozen question set was used as last month
- Answers were collected logged out, with memory off
- Accuracy error rate is calculated over answers returned, with the worst error listed separately
- Mention rate is reported per engine, not blended
- Google Search Console and Bing Webmaster Tools numbers are pulled for the same dates
- No slide shows an AI rank or an AI traffic share
What good and bad results look like
Good results
- Every search crawler passes every gate. Any failure has a named owner and a fix date.
- Accuracy errors are specific and traceable. For example, an engine quotes last year's price, and your old pricing page still says it.
- Mention rate differs by engine, and you can explain why. One engine might rely on an index that no longer holds your page.
- First-party impressions move in the same direction as your access fixes.
Bad results
- robots.txt allows OAI-SearchBot but the firewall returns 403. You are out of ChatGPT search with no warning anywhere.
- A blanket AI block meant for training bots also blocks search bots.
- The accuracy score drops after you add more questions. That's a formula with no denominator, not a real decline.
- The report leads with one blended score, so nobody can tell which engine moved.
A bad result on access is the best kind to find. It has a clear fix. A low mention rate with all gates passed is harder, and no tactic guarantees it changes.
How often to repeat the measurement
Run the full set monthly. Re-run the access checks after every deploy, CDN change or firewall rule change.
Access can break without you touching anything. From 2026-09-15, Cloudflare set Training and Agent crawlers to blocked by default on ad-displaying pages for new domains and existing free-tier customers. A monthly check catches changes like that.
Keep the question set frozen between runs. Changing the questions breaks the trend line. Expect mention rate to move even when you change nothing, because models update and engines decide per query whether to search. Published estimates of how often ChatGPT searches range from about 18% (Profound) to 80.5% (cloro), which shows how much that varies. Our page on what changes between AI visibility checks covers the usual causes.
Frequently asked questions
Should citation count be a KPI?
Use it as a supporting number, not a headline. OpenAI's documentation says the sources a model consults are often more numerous than the citations it shows, so citations undercount what the model read. Citation units also differ by engine: some cite text spans, others whole sources. Report citations per engine, ideally from Bing Webmaster Tools' own count, alongside mention rate.
Is adding schema markup a KPI worth tracking?
No. Google says structured data isn't required for generative AI search. Ahrefs' matched test of 1,885 pages found AI Overview citations fell 4.6% after schema was added, with no major lift on other platforms. Existing markup does no harm, so there's no need to remove it. It just isn't a lever for AI answers, so it shouldn't be a KPI.
What should I show leadership instead of AI traffic?
Show the four KPIs per engine: gates passed, accuracy error rate, mention rate and first-party impressions. Add ChatGPT referrals from your analytics as a floor for one engine. Be plain that Google's AI report shows impressions only, so nobody can tie AI Overviews to clicks from first-party data today. Leadership trusts a number more when you state its limits.
How many answers do I need before a rate means anything?
The evidence gives no fixed number. Small samples swing hard: one wrong fact in two returned answers looks like a collapse when it is really a partial run. Report the count of answers returned next to every rate. If one engine returned only a handful of answers, flag that rate as low confidence.
Can I promise a target mention rate?
You can set a target, but no one can guarantee it. You control access, rendering and the facts on your own pages. You don't control which pages an engine retrieves or what the model writes. Set firm targets on access and accuracy, and treat mention rate as an observed outcome you report honestly.
Sources
- Overview of OpenAI Crawlers
- Searching the web with ChatGPT
- The rise of the AI crawler - Vercel
- 2000 AI Blogs Experiment: Does Google Penalize AI Content?
- We Tracked 1,885 Pages Adding Schema. AI Citations Barely Moved.
- [2305.14251] FActScore: Fine-grained Atomic Evaluation of Factual Precision in Long Form Text Generation
This page is AI-assisted. It was written from a verified evidence base and checked against our editorial policy. Engine behaviour changes often; facts are as of October 21, 2026.