How do you track traffic and leads that come from AI assistants?
Standard analytics mostly cannot tell you. Some assistants pass a referrer and some do not, so identify the visits you can attribute, count them as a floor rather than a total, and never present an estimate as a measurement.
- Referring source
- The information a browser passes about where a visit came from. It is how analytics knows a visit arrived from somewhere rather than from nowhere, and where one is passed, it is the signal you have to work from, when there is one at all.
- Direct traffic
- Where analytics files a visit that arrived with no referring source. It is not a source. It is the absence of one, and a great deal of real, caused traffic ends up sitting in it.
- Floor
- A count you know is at least this large. The opposite of a total, and the only honest shape for this particular number.
- Zero-click answer
- An answer that resolves the question without anyone visiting anything. It leaves no trace in your analytics, which is not the same as it not having happened.
Why this is genuinely hard
An AI answer is composed for one person, in one moment. It may sit in that person's history, and they may be able to share a link to it, but there is no public results page you can go and read afterwards, and no guarantee the answer produced a visit at all. Four different things can happen after an assistant names a business, and only one of them leaves a clean trace.
- The person follows a link, and the visit arrives with a referring source you can recognize. This is the identifiable case.
- The person follows a link, and the visit arrives with nothing attached. It lands in direct traffic and looks like every other unattributed visit.
- The person reads the answer, does not click, and calls the business or types the name into maps later. Nothing connects that call to the answer.
- The person gets what they needed from the answer and goes no further. There is no event to count, and there never will be.
The gap between case one and the rest is why a total is not knowable. Cases two, three and four leave nothing in your analytics to count, so any figure that covers them has been filled in rather than counted. That is worth asking about whenever a number looks complete.
What is knowable
- Visits that arrive with a referring source you can recognize as an assistant. Those you can identify, label and count.
- What those visits did once they were on the site, exactly as with any other identified traffic.
- Whether a form submission came out of a session you had already identified. A phone call joins that list only if you run call tracking that ties the number to the session; without it, a call sits in the not-knowable column.
- The trend in that identified set over time, as long as nothing changed about how the visits are identified. The size understates the truth by an unknown amount, so a change measured the same way twice is worth more than the level.
That is a real list and it is worth having. It is just considerably shorter than the list a confident-looking traffic report implies.
What is not knowable
- Any visit that arrives without a referring source. Once it lands in direct traffic there is nothing to distinguish it from a bookmark.
- Anyone who read the answer and did not click. That group is invisible, and nothing in your own data lets you put a size on it.
- Anyone who read the answer, remembered the name, and called two weeks later from a different device.
- How many answers named the business at all, which is a separate measurement and has to be elicited on purpose rather than read out of analytics.
That last one is worth separating from the rest, because it is the item people most often expect analytics to cover. Nothing in your traffic data can tell you how often an assistant recommended a competitor instead, and that is usually the fact with the most money attached to it.
The honest method
- Identify what the referring source lets you identify, and accept that it is a subset.
- Label it and keep it separate from everything else, so nobody has to reconstruct the definition later.
- Report it as a floor, and use that word in the report rather than in a footnote nobody reads.
- Do not fill the gap with a model. An estimate printed beside a measurement gets read as a measurement, no matter what the caption says.
- Pair it with a measurement of the answers themselves, because that is the half analytics structurally cannot see.
The last step is the one that turns a partial number into a usable one. Counting identified visits tells you what arrived. Counting how often assistants name the business tells you what was on offer, and the second number is the one you can actually work on.
Why a complete-looking number should be distrusted
If a report hands you a clean figure for AI-driven traffic, ask one question: what did it do with the visits that arrived without a referring source? There are only two possible answers. It dropped them, in which case the number is a floor and should say so. Or it filled them in, in which case the number is modeled.
Both are defensible things to build. Only one of them is a count. A modeled number is not fraud; presenting one as a measurement is. And the difference shows up at the worst possible moment, which is the month a client asks you to reconcile it against their phone log.
What to tell a client, and when
Say the shape out loud before the first report rather than after a disappointing one. This list is a floor. Some months it will be short. It will never be a total, and a month where it drops may mean nothing at all.
A client told that in month one reads month four correctly. A client not told is the one who eventually asks why the number is smaller than the leads they think they got, and by then the conversation is about your credibility rather than about their marketing.
How Apex handles it
Apex labels the AI-referred leads it can identify and files them in the client record with the rest, so a renewal conversation has something in it besides a chart. Not every one can be identified, so the labeled list is a floor rather than a total, and some months it is short. We would rather undercount than guess.
The other half is the part analytics cannot reach at all: how often the assistants name the business in the first place. That is appearance rate, published as the AI Visibility Score, always with its counts. One number says what arrived. The other says what was possible, and you need both to know which one to work on.
Questions people ask
Can I just watch direct traffic and assume a rise is AI?
No. Direct is where analytics files anything that arrived without a referring source, which includes bookmarks, typed URLs, some app and messaging links, and plenty else. A rise there is consistent with AI referrals and consistent with a dozen other explanations, and a report that picks the flattering one is not measuring anything.
Do UTM parameters solve this?
Not on their own. Tracking parameters work on links you create, and you do not write the links inside an AI answer. Some assistants attach parameters of their own, and where they do you can read them, but you cannot count on one being there or on it staying the same. Keep using parameters for the campaigns you control, and treat anything an assistant attaches as a bonus rather than as the plan.
Is a floor worth reporting at all?
Yes, and it is worth more than an estimate. Every entry on a floor is a real lead the client can open and look at. An estimate is a number the client can only be asked to believe, and the first time it disagrees with something they know, it takes the rest of the report down with it.
If I cannot count the traffic, what can I count?
The answers. How often assistants name the business, out of how many checks were run, over a stated window, broken out by engine. That measurement is available, it is auditable, and it covers the zero-click case that traffic data will never reach.
Will this get easier as assistants mature?
Partly. The referring-source picture may improve, and identification improves with it. The zero-click case will not, because an answer that satisfies someone without a visit produces nothing to count by design. Plan the reporting around a permanent floor rather than an interim one.