Reporting AI search to the people who fund it

The short answer: Report three things and declare a fourth. Report whether the engines can reach you, whether their answers name you and say something true, and what you shipped since the last meeting. Declare the attribution gap before anyone finds it, because the published crawl data shows these surfaces taking far more pages than they send visits back. A single visibility score with no denominator and no error bar will lose you the budget the first time it dips.
The person signing the invoice is not hostile to this work. They are being asked to fund a line item whose main evidence lives inside a chat window they cannot audit. Most reports make that worse by leading with a number nobody can recompute.
What a funder is actually asking
Strip the meeting down and there are three questions, in this order. Is it working. How much more will it cost. What happens if we stop.
A dashboard answers none of them. It answers a fourth question, which is what the number is today, and then invites the room to argue about whether the number is good. That argument is unwinnable, because the scale is invented and the comparison set is yours.
So build the report around the three real questions and let the metrics sit underneath them as evidence. The method behind the metrics is covered in How to measure AI visibility without fooling yourself; this post is about what survives contact with a finance review.
Declare the attribution gap on slide one
The fastest way to lose a budget review is to let somebody else discover, in the meeting, that the traffic numbers do not move. Say it first, with a number.
Cloudflare published a crawl-to-refer ratio for each AI company, measured across sites on its own network using Cloudflare Radar data from January to July 2025 and posted on 29 August 2025. That is one network's traffic, not the whole web, and your own ratio will differ. In July 2025, Anthropic's crawlers fetched about 38,066 pages for every visitor referred, OpenAI's about 1,091, Perplexity's about 195. Google, running a traditional search index alongside its AI features, sat at 5.4. Perplexity's ratio had risen from about 55 in January to about 195 in July, meaning its crawling grew faster than the traffic it returned.
Read that as a structural fact about the surface, not as a verdict on anyone's product. The answer is assembled from your pages and delivered without the visit. Referral sessions are therefore a weak proxy for value, and a report that leads with sessions is reporting a number that the mechanism suppresses.
There is a second gap inside Google's own tooling. Google's AI features documentation puts a site's appearances in AI Overviews, and in AI Mode, inside the overall search traffic it reports under the Web search type, and neither that page nor the Performance report help page describes a filter that pulls them back out. The counting rules add a wrinkle Google states outright: an AI Overview occupies a single position in search results, and all links in it are assigned that same position. Your average position can therefore move because a feature changed shape, not because anything on your site did. The same help page says Search Console excludes data from Search Labs experiments.
Tell the room this up front and you have reframed the meeting. You are no longer defending a flat traffic chart. You are explaining why the chart cannot be the evidence, and what is.
The four numbers that belong on the page
Keep it to four, each with the thing that makes it checkable.
Reach. The share of your priority pages that the engine fetchers can actually retrieve and parse. This is a server-side fact, not a survey. It moves when a firewall rule or a render change breaks something, and it is the only number on the page a sceptical engineer can verify in ten minutes.
Presence. The proportion of a frozen prompt set where an answer names you, quoted as a proportion with an interval, never as a bare score. Say the denominator out loud: in our own audits that is about forty-five prompts across five engines, run with retrieval on and with retrieval off. A move from 38 to 44 per cent inside a 14-point interval, to take an invented illustration rather than a measurement, is not a result, and saying so yourself is what buys you credibility when a real move arrives.
Accuracy. The share of mentions where the sentence attached to your name is correct. This is the metric we rarely see on a client's existing dashboard, and the one executives care about immediately, because a wrong price or a dead feature in an answer is a problem they can picture. It is also the fastest thing to fix.
Shipped. What changed since the last meeting, as a list, with dates. A retainer is funded on work, not on weather. If presence fell and you shipped seven fixes, you have an argument. If presence rose and you shipped nothing, you got lucky, and you should say that too.
Two metrics deserve a warning label. Share of voice is a ratio whose denominator you chose, and the limits of it are set out in Share of voice in AI answers, and its limits. Average position belongs in the appendix at most, because AI search is not a ranking game and a position number invites the room to manage the wrong thing.
The failure modes that end funding
Three patterns reliably kill a programme, and all three are reporting failures rather than delivery failures.
The first is the silently edited prompt set. Somebody drops the four prompts where a rival always wins, the percentage climbs, and the chart looks like progress. When it is discovered, and it usually is, every previous number becomes suspect. Version the set in git and show the diff in the appendix.
The second is claiming a model update. Engines change underneath you, and visibility can move several points in a week with nothing shipped on either side. Claiming the upside means owning the downside, so the honest move is to annotate the date and attribute nothing. A report that does this twice earns the right to be believed on the third.
The third is reporting only the part you rent. Mentions sourced from a forum thread or a directory listing can vanish when that source changes its policy, and the report never flinches because the metric does not distinguish. Split the number by where the corroboration lives, the way rented and owned visibility describes, and a fragile position stops looking like a durable one.
A check to run before the meeting
Do this the day before, not the morning of. Pull a week of server logs and separate the AI fetchers by purpose rather than by company.
OpenAI documents four distinct user agents; three of them carry the traffic that matters here: OAI-SearchBot for surfacing sites in ChatGPT's search features, GPTBot for training crawls, and ChatGPT-User for fetches triggered by a person in a conversation. OpenAI publishes a separate IP range file for each, so you can verify those three agent strings instead of trusting them. Other operators document their agents on their own terms, so check each one's published list rather than assuming the same split holds. Count hits per agent, then count referral sessions from the same engines in the same week.
What you learn is which half of the machine is engaging with you. Heavy search-bot traffic with no conversational fetches means you are indexed and not being pulled into answers. Conversational fetches with a flat presence number means you are being read and not credited. Those are different problems with different fixes, and both are more useful on a slide than a score. The sample audit report shows how this evidence gets attached to a finding so it can be argued with rather than believed.
Honest limits
This post sets out a reporting shape. It does not establish that the shape raises the odds of a renewal, and we have run no controlled comparison against reports built any other way.
There is no clean path we can trace from a mention in an answer to revenue. In the client logs we can read, visits arriving from these surfaces often carry no referrer that names the engine, and a read that produced no visit leaves no trace on our side at all, so absence in the log is not evidence that nobody read the page. Branded search volume and direct arrivals are the least bad proxies we have found, and both are contaminated by everything else a client does.
Durability is unknown. We have watched fixes hold for months and watched others reverse after a model update, which is a scatter of observations from client work rather than a tracked cohort with a fixed re-test schedule, so we cannot give anyone a half-life. The crawl-to-refer figures above are one network's measurement of seven months in 2025, and they are already old enough that your own logs are the better evidence.
FAQ
What single number should go at the top of the report? Presence on a frozen prompt set, quoted as a proportion with its interval and its denominator visible. If the room insists on one number, give them that one and put the interval in the same sentence so it cannot be screenshotted without the caveat.
How often should this be reported? Monthly suits most programmes. Weekly reporting on a noisy surface mostly reports noise, and it trains the room to react to movement that has no cause worth discussing.
What do I say when traffic has not moved? That traffic is the wrong evidence for this surface, and show Cloudflare's crawl-to-refer figures for January to July 2025 to explain why. Then move to presence, accuracy and shipped work, which are the things the spend actually bought.
Should the report include competitor names? Name them in the gap analysis, where a missing comparison page or a missing third-party mention is the finding. Keep them out of the headline metric, because a share-of-voice chart built on a competitor set you chose is an argument about the set, not about the work.
Sources
- Cloudflare, from Googlebot to GPTBot, who is crawling your site in 2025, published 29 August 2025, crawl-to-refer ratios measured January to July 2025: blog.cloudflare.com/crawlers-click-ai-bots-training/
- Google Search Central, AI features and your website: developers.google.com/search/docs/appearance/ai-features
- Google Search Console Help, Performance report metrics and how AI Overviews and AI Mode are counted: support.google.com/webmasters/answer/7042828
- OpenAI, bots and crawler user agents, including the published IP range files: developers.openai.com/api/docs/bots