Measurement
Nine companies were quoted as sources and recommended zero times. A link is not a vote.
By Arnav Mukherjee, founder of TofuBofu · August 20, 2026
On 18 August we shipped the largest measurement change this product has ever made. Until that day our ChatGPT probe answered from training weights with no web search, which meant a customer could do everything our report told them to do, publish all of it, and never move on the engine most of their buyers actually use. We rewrote it to search, and to refuse the answer entirely when the search did not run.
Retrieval brought a side effect nobody had planned for. A searching engine puts links inside the answer text, and no engine on our roster had ever done that before. Which meant that from that day, a customer's own domain could appear as a string inside an answer that recommended two of their competitors. Our check for whether the brand was named ran against the raw answer text. It would have found the domain, matched it, and recorded a mention.
We would have shipped a feature that turned every citation into a recommendation, in the same release that made citations possible. That is worth saying plainly, because the entire category is quietly making the same trade in the other direction: counting things that look like presence, and selling the count as a verdict.
A citation is evidence the engine read you. A recommendation is evidence it chose you.
Those are two different events, and two different stages of the machine produce them. Retrieval decides which pages get pulled into the context window. Generation decides which company gets named as the answer. A page can win the first and lose the second every single time, because useful evidence about a category and the right vendor to hire are not the same claim.
If you have ever written a genuinely good explainer on your own category, you have probably built the perfect instrument for losing this way. It answers the question well. The engine lifts it, uses it to explain what to look for in a vendor, and then recommends whichever firms the rest of the internet talks about. You supplied the criteria. Someone else met them.
A B2B marketer put the operational version of this on r/aeo this week, watching citation volume climb all year while ChatGPT referrals fell about 75 percent since mid-June. Their own second theory named it exactly: being named but not chosen. A practitioner in the replies went further, and this is the sentence that should worry every vendor in the category: "Being present in the source list while a competitor is named in the prose is exactly what your theory 2 looks like, and no tool I've tested reports that distinction; they count mentions."
Somebody measured the gap and published the data
The best evidence I have found is not from a vendor blog. It is an open dataset on Zenodo, CC BY 4.0, with the paper, the CSVs and the classification rules published alongside it. Broadcastwell ran ten buyer questions each for 85 B2B software companies across 60 categories, one engine with live web search, and recorded for every answer whether the company was named and whether its domain was cited. Volume II of that work has a section titled, without hedging, "Being cited is not being recommended".
Naming and citation correlate loosely and no more than that: Pearson r = 0.512, Spearman rho = 0.577. Then the numbers that matter. 29.4 percent of the companies were cited more often than they were named. Among those, the average company was named 2.2 times and cited 4.4 times. And nine companies were named zero times in ten answers while their own domain was quoted as a source, one of them in five answers out of ten.
The paper's own reading of those nine is better than anything I would write over it: "The engine reads their pages, trusts them enough to quote as evidence, and then recommends someone else." Its practical conclusion is the part to act on. "Being quotable and being recommendable are separate properties, and a content strategy aimed only at the first will not deliver the second."
Take the limits with it, because the authors state them and so should anyone citing them. One engine, one run per question, no variance measured. The sample was deliberately challenger-skewed, so the visibility rates describe plausible non-leaders rather than B2B software in general. And Broadcastwell sells services in the category it measures, which it states in its own Volume III record, along with the note that it excluded itself from the sample and from every ranking. None of that touches the finding, because the finding is a relationship between two columns of the same sheet, not a market rate.
A second, independent read of the same asymmetry landed on 19 August. Stacker analysed 456 stories it had distributed, monitored across six AI platforms with 30 prompts per story, and found brands were cited in 13.6 percent of responses against 3.8 percent that named the brand. Citations ran more than three times as common as name mentions, and citation-only responses grew 33 percent in the four weeks after distribution while mention-only responses stayed flat. Read that with the obvious bias in view: Stacker sells the distribution it is measuring, and the stories in the sample are its own. What survives the bias is the direction, which matches the Zenodo data from a completely different method.
Three things in one answer, and a counter reads them all as the same thing
Abstractions are cheap here, so look at the shape of an actual answer. Everything below is illustrative, with a placeholder company, but each line is the form of something we have seen come back from a live engine.
The link. Your domain is in the answer, so your brand name is in the answer, because a domain contains the name. Any checker running a substring or word-boundary match on the raw text records a mention. Nothing about that answer told a buyer to hire you.
The denial. This one is not hypothetical for us. On a live scan an engine answered a buying question with a sentence of the form, I do not have reliable information about that company, and the company name sat inside it. That is the opposite of a mention in every sense a buyer would recognise, and it matches a name check perfectly.
And the mirror image, which is the one nobody thinks about. The same problem runs across your competitor set. If a rival's URL sits in the citation list of an answer that never recommends them, and your tool counts competitor mentions off the raw text, you will be told you lost a question to a company the engine never actually put forward. Your share of voice moves for a reason that did not happen.
Read the answer, not the count
A free scan shows the full verbatim answer behind every result on six engines, plus the source domains cited on the questions where you are absent. You can check every reading by hand.
Run your free scanWhat we changed, and why the rule is asymmetric
Four changes, and they are worth spelling out because a claim about measurement integrity is worthless without the mechanism attached.
On the engine that retrieves, we blank every URL before we check a single name. Every markdown link target and every bare URL becomes spaces of the same length, so offsets survive and an excerpt taken from the masked copy still lines up with the original answer we store and show you. The name check then runs on prose only. A citation of your own domain can no longer satisfy the test that verifies you were named on ChatGPT, and a rival's URL can no longer count as that rival being recommended there. The masked copy feeds the competitor filter too, for exactly that reason. The rescue check described next masks on every engine. The verification check does not, and the section below names the two engines that leaves exposed.
We throw out denials, and we made the positive check stricter than the negative one. We run two checks in opposite directions. One can force a claimed mention down to absent. The other can rescue a mention the analysis model missed, and because promoting a result is the dangerous direction, that one is tighter: it looks back 140 characters before every name it finds and drops the hit if that window contains a denial. We also record a rescued cell as a brief mention, never as a prominent one, because we know the name sits in the prose and we do not know the engine recommended it. Those are different facts and the code refuses to merge them.
On that same engine we pull citations out deterministically, into their own field. No model guesses at those. We read them straight off the text in document order, because the order an engine cites its sources in is information. We drop search wrappers rather than record them, since a link the model composed to a search results page has no publisher behind it and storing it would credit a search engine with citing itself. On the other five engines that field is still the analysis model's reading of the answer, which is a weaker fact and one more reason not to blend six engines into one number. Perplexity's answer text arrives with its source annotations discarded rather than appended, so that engine's answers stay the same shape as everyone else's.
The product shows the two states apart. The report lists the domains an engine cited on the questions where you were absent, competitor context first, because those are the places to go and earn a listing. That is a different card from the one telling you which questions named you. If they were one number, neither would be actionable.
Which side of the line each of the six engines sits on
The confusion is only possible on engines whose answer text carries links. That is not all of them, which is why a single blended visibility number across six engines is averaging things that are not even the same measurement.
ChatGPT is the one that changed. Since 18 August 2026 our probe forces a web search and refuses to record an answer if the search did not run, so its text now carries inline citation links. It is the only engine where we mask URLs before verifying a name. Its published rate in our corpus, naming the scanned brand on 1.7 percent of buying questions across a set of firms that is not a random sample, measures the retired probe that answered from memory. We left that number exactly where it was, because no post-cutover corpus exists yet and inventing one would be worse than being out of date. On one customer the same questions went from naming them zero times out of ten to three times out of ten once we forced the search, which is a direction and not a rate.
Perplexity retrieves first and answers second, and it leads our corpus, naming the scanned brand on 7.4 percent of buying questions across 46 reports on a set of firms that is not a random sample because nearly every one of them ran a scan already suspecting it was missing. Its citations never reach the name check, because both of our Perplexity paths return the answer text with annotations removed. That is deliberate. Handing one engine richer inline links than the other five would make its numbers incomparable with theirs.
Claude and Gemini get no search tool from us, so their answers carry no links at all and there is nothing to confuse. That makes their mentions clean and, on Claude, it makes them worth less than they look. In our fifteen-region managed IT study, only 2 of the 129 firms Claude named could be corroborated as real, against 101 of 257 for Perplexity. A mention from an engine answering out of memory is a weaker fact than a mention from an engine that went and looked, which is the whole reason we track engines separately. Gemini's 0.4 percent across that same buying corpus, which again is not a random sample, is a floor rather than a clean reading, depressed by our own truncation and by a guard that used to work in one direction only.
Google AI Mode and Bing Copilot are search surfaces, they return answers as markdown that can carry links, and we have not masked them yet. I would rather publish that than let it sit quietly in a code comment. The reason is not oversight: shifting a second engine's measurement inside the same release as the ChatGPT cutover would make both re-baselines uninterpretable, so it waits its turn as its own change with its own dated shift marker. Until it ships, treat those two engines as the pair where our own instrument has the loosest read, and note that Stacker's platform table has AI Mode citing at a median of 12 sources per response against ChatGPT's 5, which tells you which direction the exposure runs.
Every time we move one of those rules we stamp the date and relabel the history rather than recomputing it, and we tell any customer whose trend line steps on one of those dates that the step may be ours. A vendor who silently improves their matcher and lets your chart move is showing you their engineering, not your market.
Four things to demand, from any vendor including us
1. The full verbatim answer behind every result. Not a snippet, not a score. If you cannot read the answer, you cannot tell whether your name sat in the prose, in a link, or inside a sentence saying nobody has heard of you. You can only check the claims in this post because somebody kept the raw text.
2. Citations and recommendations as two fields, never one count. Ask which one the headline number is. If the answer is a blend, the number cannot tell you whether to publish more content or go earn third-party evidence, and those are opposite prescriptions with opposite costs.
3. What the tool does with a link to your own domain. This is the sharpest question you can ask a vendor in 2026 and most will not have an answer, because the problem only became possible on the biggest engine a few days ago. There is no shame in the answer being not yet. There is a great deal of shame in the answer being we have not thought about it while the dashboard reports a mention rate.
4. Per-engine results with the engine's own retrieval behaviour attached. A mention on an engine that searched the live web and a mention on an engine reciting what it absorbed in training are not comparable evidence, and averaging them buries the only fact you can act on.
None of this makes citations worthless. They are the strongest available proof that an engine can reach your pages, parse them and trust them, which is the floor everything else is built on, and the nine companies in that dataset have already cleared it. What they have not done is give an engine any reason to pick them, and no amount of further explaining will supply one. The buyer never sees the source list. They see one sentence naming somebody, and the whole game is whether that name is yours.
Frequently asked questions
What is the difference between an AI citation and an AI recommendation?
A citation is the engine using your page as evidence. A recommendation is the engine putting your company forward as the thing to buy. Two different stages of the machine produce them and they do not move together. The open dataset behind the 2026 State of GEO measured the correlation between how often a company was named and how often its domain was cited at Pearson r = 0.512, and found 29.4 percent of companies were cited more often than they were named. Nine of the 85 companies were named zero times while their own domain was quoted as a source.
Does being cited by AI mean I am recommended?
No, and the gap is large enough to plan around. In the 85-company dataset, nine firms had their own pages quoted as evidence in answers that recommended somebody else, one of them in five answers out of ten. The engine read those pages, trusted them enough to build an answer on, and then named a rival as the pick. That is a content library working as a source and failing as a signal of who to hire, which is a different problem with a different fix from simply not being found.
Can a link to my own site make a visibility tool think I was named?
Yes, and this became a live risk in August 2026. Once an engine starts returning inline links inside the answer text, your domain appears as a string in that text, so any checker matching your brand name against the raw answer will match the link and record a mention. We hit exactly this when we forced our ChatGPT probe to search the web on 18 August 2026. The fix is to blank out every URL and markdown link target before running the name check, so the engine finding your page can never satisfy the test for the engine naming your company.
Can an AI answer mention my brand and still count against me?
Yes. The clearest case is a denial. On a live scan an engine answered a buying question with a sentence of the form, I do not have reliable information about that company. The company name sits inside that sentence, so a string match reports a mention when the engine has just told the buyer it does not know you. Our matcher looks back 140 characters before every name it finds and discards the hit when that window contains a denial, which is why the check is deliberately stricter than the one that rules a mention out.
Which AI engines put citation links inside the answer text?
Of the six we query, ChatGPT does since we forced retrieval on 18 August 2026, and the two search surfaces, Google AI Mode and Bing Copilot, return answers as markdown that can carry links. Perplexity retrieves but both of our paths return the answer text with its source annotations discarded, so no URL reaches the name check. Claude and Gemini are queried without a search tool, so their answers carry no links to confuse anything. Any tool reporting one blended number across all six is averaging engines whose answers are not even the same shape.
How do I check whether my AI visibility tool separates citations from recommendations?
Open one answer where the tool says you were mentioned and read it yourself. Three questions settle it. Does your company name appear in the prose or only inside a link? Is the sentence containing your name a recommendation or a denial? And which company does the answer actually tell the buyer to pick? If the tool cannot show you the full verbatim answer behind a result, it cannot answer any of those, and you are being asked to trust a count you have no way to audit.
If I am cited but not recommended, what should I fix?
Not content volume. Being quotable and being recommendable are separate properties, and a firm in this position has already proved it can produce the first. What is missing is the material an engine needs to justify a choice: comparison pages that name the rival it picks instead of you, third-party evidence that somebody other than you vouches for the work, and specifics an answer can lift, such as who you serve, where, and what the outcome was. Publishing more explainers strengthens the property you already have.
Sources and further reading
- Broadcastwell, The 2026 State of Generative Engine Optimization, Volume II, Zenodo DOI 10.5281/zenodo.21586091. 85 B2B software companies, 60 categories, ten buyer questions each, one engine with live web search, July 2026, CC BY 4.0. Section 4 is titled Being cited is not being recommended and is the source of every named-versus-cited figure here. The paper states its own limits: one engine, one run, challenger-skewed sample.
- Stacker, When AI Links to You But Doesn't Say Your Name, 19 August 2026. 456 distributed stories, six platforms, 30 prompts per story, May to July 2026. Source of the 13.6 percent versus 3.8 percent split and the per-platform citation medians. Stacker sells the distribution it measured and the stories in the sample are its own, which is the bias stated in the body above.
- r/aeo: citation counts going up while referral traffic goes down. The named-but-not-chosen framing and the practitioner observation that no tracker reports the distinction, quoted as a community observation rather than as data.
- The same author's Volume III cross-engine dataset, 4 August 2026. Across 142 questions all three engines answered, 63.3 percent of distinct vendor mentions came from exactly one engine and 17.5 percent from all three, which is the case against reading any single-engine result as a market fact.
- Our own fifteen-region and five-metro studies, including the per-engine corroboration rates and the firms an engine recommended that we could not prove exist.