Measure AI visibility

Measure AI visibility: one reading does not hold

Measuring AI visibility means counting how often an engine cites your site in its answers. The trap is that a single reading says almost nothing: our measurements show the sources change from one call to the next. Fast Growth Advisors publishes its method, its cost and its dated readings, with the link to run each search again.

How do you measure AI visibility?

In three steps, and none of them is optional. Put the questions your buyers actually type. Archive the full answer, not just whether you were cited. Keep the link that lets you run the search again.

Without those three, an AI visibility report cannot be verified, and an unverifiable figure is not a measurement.

An example, taken on ourselves. Query audit messaging site web B2B, French market, French language. Six readings between 1 and 2 September 2026. Google writes an answer to all six, and cites https://fast-growth.fr/audit-messaging/ every time. We rank first organically on that query. Run this search again →

Why does a single score mean nothing?

Because it adds up situations that are not fixed in the same place. An engine asked a question does one of three things, and merging them manufactures a false problem.

The three states Fast Growth Advisors keeps apart on every question measured, and never merges.
What the engine doesWhat we writeIs action needed?
It answers and cites your pageThe engine cites youNo. Worth protecting
It answers without citing your pageThe engine answers without citing youYes. This is the finding that matters
It does not answerThe engine does not answer that questionNo. Nothing to measure

Most tools merge the last two states, because they only read the text of the answer. They then report an invisibility nothing established, on questions where the engine simply wrote nothing.

Two questions where a single score would give us the same mark. Our measurements on fast-growth.fr, six readings per question, 1 and 2 September 2026.
QuestionStateCited inWhat it really is
audit messaging site web B2Bcited6 readings out of 6a position held
audit commercial startup B2Bcited4 readings out of 6a passage in the fringe

A tool measuring once writes “cited” in both cases. On the first question we hold a place, on the second we lose it one time in three. Those are not the same works to undertake, and an average score erases exactly the information that allows a decision.

We met that case while building our question set. On business password managers, two different phrasings produced no written answer at all. The category exists, the market is crowded, and the engine writes nothing. Nobody is invisible there: there is nothing to see.

How many times must the same question be measured?

More than once. We replayed the same question eleven times in a row, seconds apart, on two markets. The result is not the one we expected.

Eleven readings of the same question on each market, 1 and 2 September 2026. Our measurements on Google AI Overviews.
Market and questionMedian overlap of sourcesDomains present in all eleven
France, comparatif logiciel sirh pme62 %3 of 10
United Kingdom, best hr software for small business100 %8 of 8

Stability is not a property of the instrument, it is a property of the question. On the UK question the engine returns exactly the same eight domains on every call. On the French one, two domains appear only once out of eleven.

So there is a stable core and a rotating fringe. Sitting in the core is a position, appearing in the fringe is a passage. A tool that measures a single time cannot tell them apart, and will report a citation that does not hold.

What this measurement says, and what it does not. Two questions, one per market, on Google AI Overviews. It does not say France is unstable and the UK is stable. It says stability is measured question by question, and that we have not repeated the experiment on ChatGPT or Perplexity.

What must an AI visibility report contain to be verifiable?

Four elements, and their absence shows quickly once you know to look for them.

The same reading, rendered as the four elements. This is the format we deliver, on our own pages as much as on our clients’.
ElementValue in the reading
Questionaudit messaging site web B2B
Market and languageFrance, French
First and last reading1 September 2026 at 18:40, 2 September at 16:36
Number of readings6
Resultcited 6 times out of 6, URL fast-growth.fr/audit-messaging/
Verification linkprovided, the search reruns in one click
What an AI visibility report must carry to be checkable by whoever receives it.
ElementWhy it is indispensable
The question, word for wordA rephrased question cannot be replayed. The wording decides the result
The date and time of the readingAnswers change from one day to the next, sometimes from one minute to the next
The verification linkIt lets your team run the search again instead of taking our word for it
The number of readingsA single reading cannot tell a position from a passage

The cost makes that requirement affordable. With the provider we use, one question costs four thousandths of a dollar, so 0.20 dollar for fifty. We publish that figure because a measurement at that price has no reason to be replaced by an assumption.

The Google AI Overviews barometer, method and editions →

What are you measuring when the engine cannot see your page?

Nothing useful. Before counting citations, you need to know whether the engine reaches the page, whether the text is in the bytes it returns, and whether the extractor keeps it. The third layer is the one nobody looks at.

Our measurements on three B2B software vendor sites, fetched with the GPTBot user agent then run through the three reference extractors, show a considerable gap. In the worst case, trafilatura keeps 23 % of the served text and jusText 18 %.

And the three extractors disagree with each other: on the same page one keeps 23 %, another 40 %. Content can therefore reach one engine and vanish from another, with nothing changing on your side.

Share of the text present in the served HTML that each extractor keeps. Fetched with the GPTBot user agent on 2 September 2026 by Fast Growth Advisors. The vendors are not named.
PageText servedtrafilaturajusTextResiliparse
HR software vendor A25,387 ch.59 %26 %95 %
HR software vendor B13,425 ch.23 %18 %40 %
Scheduling software vendor12,832 ch.49 %35 %91 %
A page on this site9,671 ch.92 %88 %89 %

What extractors keep, measured on three sites →
White paper, the recoverable message →

How do you know an AI crawler is really the one reading you?

By verifying it, because a declared user agent can be forged in one line. Across 1,129 requests presenting themselves as an AI assistant on our servers, our measurements identify 876 as impersonations. A dashboard that counts AI visits without checking the caller’s identity mostly measures noise.

Verification goes through the IP ranges published by the vendors, a double DNS resolution, or an agent signature.

Requests declaring themselves an AI crawler on our servers, seven days to 2 September 2026, checked against the IP ranges published by the vendors. Fast Growth Advisors measurement on its own logs.
Declared agentRequestsDistinct addressesWithin published rangesOutside
OAI-SearchBot4544882372
ChatGPT-User419179410
GPTBot3442528316
Perplexity-User31540315
PerplexityBot20250202

Out of 1,734 requests declaring an agent whose vendor publishes its addresses, 1,615 came from elsewhere, or 93 %. The addresses presenting themselves as Perplexity were Google Cloud machines and a hosting provider, while Perplexity publishes only eight addresses.

What this measurement says, and what it does not. It covers our two sites, over seven days, and only the agents whose vendor publishes ranges. A published list can be incomplete or lag behind reality, so “outside the ranges” does not prove an intent to deceive. It does prove that a counter of AI visits built on the declared agent mostly measures something else.

Do all AI crawlers look for the same thing?

No, and counting them together mixes two subjects with different consequences. Some collect training material, others build a search index, others read a page at the moment a user asks a question.

Role declared by each vendor, and volume observed on our servers over seven days to 2 September 2026. Roles are reported from public documentation, volumes are our measurements.
AgentDeclared roleRequests on our servers
GooglebotSearch index, also feeds AI Overviews1,369
Claude-UserRead triggered by a user455
OAI-SearchBotOpenAI search index454
ChatGPT-UserRead triggered by a user419
GPTBotCollection that may serve training344
Perplexity-UserRead triggered by a user315
ClaudeBotCollection that may serve training249
PerplexityBotSearch index, no training according to the vendor202
meta-externalagentMeta collection178
BytespiderByteDance collection162
ApplebotApple search index162
CCBotCommon Crawl public corpus49

The consequence lands straight in robots.txt. Blocking a training collector costs no citations. Blocking an index crawler or a user-triggered reader removes you from answers. Many sites block the second kind believing they are blocking the first.

What does a complete report look like?

Like this. Every line below is a real measurement on fast-growth.fr, taken between 1 and 2 September 2026, each by a different instrument.

AI visibility report for fast-growth.fr, assembled from four instruments: question probe, three-extractor bench, server logs, Search Console.
What is measuredResultInstrument
Questions from our market put to Google12, six readings eachQuestion probe
Questions where Google writes an answer12 out of 12Question probe
Questions where it cites us2, one in the core and one in the fringeQuestion probe
Source stability, median62 % overlap between two readingsProbe, eleven readings
Text kept by the extractors92 %, 88 % and 89 % depending on the extractorThree-extractor bench
Requests declaring an AI crawler, seven days4,358Server logs
Share outside published ranges, verifiable agents93 %Server logs
Search impressions, three months4,522 for 49 clicksSearch Console
Impressions in generative features219, or 4.8 % of the totalSearch Console
Visitors arriving from an AI answer0Server logs

Every line can be replayed, and none rests on an estimate. That is the only thing separating a report from an opinion.

What this report does not say. It gives no global score, and that is deliberate. The lines do not add up: a citation, a share of extracted text and a crawler visit do not offset one another. Nor does it cover ChatGPT or Perplexity in the same way, for lack of an equivalent instrument there.

White paper, counting bots →
876 impostors, what your AI traffic really hides →

FAQ

How do you measure AI visibility?

By putting your category questions to the engines, archiving the answers, and keeping the link that lets you run each search again. Without those three, a report cannot be verified. The measurement also has to be repeated: across eleven readings of the same question, our measurements show a 62 % median overlap of sources on the French market.

Why does a single AI visibility score mean nothing?

Because it adds up situations that are not fixed in the same place. An engine can cite you, answer without citing you, or not answer at all. The third case is not invisibility, it is an absence of measurement. A tool that merges the last two reports a problem nothing established.

How much does an AI visibility measurement cost?

Four thousandths of a dollar per question with the provider we use, so 0.20 dollar for fifty questions. We publish that cost because a measurement at that price has no reason to be replaced by an assumption.

What do the engines answer in your category?

The free diagnostic puts five questions from your category to ChatGPT, Perplexity and Google AI Overviews. Answers archived, verification link included, causes read on both the message and the pages.

How we measure AI visibility →