GEO-116·Issue 10·Technical Foundation·116 / 132
Tracking and Privacy: Measuring AI Traffic Without Cookies
Consent banners erase AI referrals from your reports. Five signals that survive, a five-step build, and a worked range your legal team can sign off.
Issue focusMeasurable: AI Visibility, Attribution, and Experiments
In October, a US DTC pet-feeder brand puts its German storefront behind a consent management platform. Sessions tagged “AI assistant” drop from three figures a day to single digits; Direct rises by roughly the same. The agency proposes a fix: fingerprint the device, stitch sessions across browsers, “same person, still measurable.” Legal asks which page states the legal basis. The meeting ends.
Cookieless does not mean unmeasurable. Change the unit from the person to the session, and five signals — edge logs, referrer domain, links you publish, order fields, one post-purchase question — still show which entry point sent a visit and what it was worth; fingerprinting only trades compliance risk for a costlier report.
The session is the unit; the person was never on offer
A cookie or client ID rests on three assumptions: same browser, same device, script executes. AI referrals discount all three.
A link inside an assistant often opens in an in-app browser with separate storage, and the buyer may read on a phone and order on a laptop — one person, two sessions that never meet. Before opt-in there is no writable identifier; under consent-mode signaling, denied sessions may exist only as modeled aggregates. Retrieval and preview requests never run JavaScript: the log holds a request, the analytics tool holds no session.
Stack the three and “no client ID” is read as “no source”; AI referrals fall into Direct by construction. That is a unit error, not a tagging bug — the thing you can count is one landing session.
Losses differ by entry point: an assistant link, an in-platform jump, and an agent preflight request look nothing alike in a log. Label them against the four AI search entry points before naming a channel.
Five signals that survive a consent banner
| Source | Answers | Cannot answer | Privacy rule |
|---|---|---|---|
| Edge or CDN log | Entry point, page, status | What the visitor bought | Truncate IP, short retention, named access |
| Referrer domain | Which domain sent the visit | Which answer or question | Store the domain only |
| Links you publish | Which article or campaign | Bare links inside an answer | Tag only URLs you own |
| Server-side order fields | Orders, refunds, channel credit | Any identity graph | Channel field only, no identity merge |
| Post-checkout question | How the buyer says they found you | A precise share | Aggregate, minimum sample, no export |
The referrer row is overrated: it names an AI domain, not the answer that sent the visit. That needs fixed-prompt sampling, covered in four layers of AI visibility.
The order row decides whether the table reconciles to money. Write the channel field server-side at order creation; the front-end patch is the request a denied consent blocks.
Five steps from a definition to a range
Steps one and two decide whether you have numbers; three to five, whether anyone should use them.
| Step | Do | Owner | Passes when |
|---|---|---|---|
| 1 Fix question and basis | Answer only “which entry point sent how many sessions and orders”; write purpose, retention, access | Growth, legal | One page, signed |
| 2 Change collection | Server-side, first-party domain, truncated IP, referrer domain only | Engineering | Channel field survives JavaScript off |
| 3 Build a channel dictionary | Fixed names (ai-assistant, ai-search, unknown) mapped to survey options | Data, growth | Two people label a batch identically |
| 4 Report a range | Point estimate beside an “unknown share”; widen the sampled self-report | Data | Best and worst case stated |
| 5 Review monthly | New entry points add entries, never rewrite history; re-test referrer quarterly | Growth | Same definition each month |
Step three is the one teams skip. Names invented per dashboard age badly: three months on, nobody knows whether ai-chatgpt and chatgpt-referral are the same, and renaming severs history.
Step two has a crude test: incognito window, consent rejected, external link in, then check the order for a channel field. None means collection still hangs off the client.
Example: 7,200 unknown sessions, reported as a range
Example — figures invented to show the arithmetic; no real site is described.
A month brings 12,000 landing sessions. Logs resolve a referrer for 4,800; 600 come from AI domains. The other 7,200 have neither referrer nor internal navigation, so the report files them under Direct. Stop here and the conclusion is “AI is 5%” — a floor, not an estimate.
Add one input: 400 post-checkout answers, 18% picking “an AI assistant or AI search answer.” Survey answers come from buyers, not all sessions, so no point estimate: widen 18% one notch each way, apply 10–20% to the 7,200 unknowns, and get 720–1,440. Add the 600 identifiable and AI sessions land at 1,320–2,040, or 11–17%; the report reads “11–17%, estimated; 5% identifiable.”
Orders follow: 22 of 95 carry the AI channel field and 8 more cite AI in the survey; those may overlap, so the line says “22–30 orders.” That spread is the deliverable — false precision cannot win a budget, and “AI does nothing” cannot close the subject.
Where this breaks
Marketplace-first. Amazon and TikTok Shop expose platform reports, not access logs; the method there yields invented numbers.
Too little volume. A few dozen orders a month makes every ratio noise; interview first, dashboard later.
Retargeting. Losing the ID genuinely costs efficiency — a trade to price, not deny.
Legal regime. Not legal advice: consent, purpose limitation, retention, and transfer rules differ by market, and installing a CMP is not compliance.
Fingerprinting. No. It hides an unexplainable identifier inside a report; browsers resist it, regulators ask, and one challenge can discredit the whole report.
Client behavior. Referrer strings and user agents change without notice; re-verify quarterly.
Cookieless measurement shows how much arrived, not whether it was worth buying; that needs an experiment, as incrementality tests set out. Every signal also depends on a page that earns a citation and a clickable link — otherwise it is an answer unit problem. The rest of this line sits on the technical foundation hub.
This month: export 30 days of landing sessions, split them into “resolvable referrer” and “no referrer,” give the second column its own channel name instead of folding it into Direct, and add the post-checkout question. Next month you own a range, not a hunch that AI “seems to work.”