How to Attribute Revenue to AEO Campaigns
The practical framework for connecting AI visibility to actual revenue using UTMs, HDYHAU surveys, and the Multiplier Model
AEO has a measurement problem. Traditional attribution assumes a click happens before a conversion. But most AI-influenced revenue never produces a click. A buyer asks ChatGPT for a recommendation, hears your brand name, and types your URL directly into their browser. Or they Google your brand name a week later. In both cases, your analytics shows "Direct" or "Branded Organic." The AI influence is invisible.
This guide walks through a practical attribution framework that combines two imperfect signals (UTM tracking and HDYHAU surveys) into an estimate you can actually defend to a CFO. It won't be perfect. No attribution model is. But it will get you from "we have no idea" to "we can put a number on this."
Why Traditional Attribution Breaks for AEO
Traditional digital marketing attribution tracks clicks. A user clicks an ad, lands on your site, and converts. The click creates a clean line from spend to revenue.
AEO breaks this model in three ways:
- Zero-click influence. When ChatGPT recommends your product, the user gets the answer without clicking a link. They may never visit the AI platform's website. Your brand just entered their consideration set, and you have no record of it.
- Dark social referrals. Even when users do click links in AI responses, mobile apps (ChatGPT iOS, Claude app) often strip referrer headers. The traffic shows up as "Direct" in GA4. You can't tell it came from an AI engine.
- Delayed brand lift. A buyer asks Perplexity about your category today but doesn't visit your site for two weeks. When they do, the visit looks organic. The AI nudge happened outside your tracking window.
The result: your AEO spend is producing revenue, but your analytics can't see it. This is why most companies either don't invest in AEO or can't justify continuing.
The Two Signals You Actually Have
You can't track everything. But you have two reliable signals that, combined, give you a reasonable estimate.
Signal 1: UTM-Tagged AI Traffic
Some AI-driven traffic does carry referrer data. When a user clicks a link in the ChatGPT web interface on desktop, the referral header is preserved. GA4 can capture this as a session source if you've set up an "AI Search" custom channel group.
This gives you a hard floor. You can see exactly how many sessions came from AI engines with intact referrers, and you can track conversions and revenue from those sessions. This number is real and auditable.
The problem: it's a significant undercount. Estimates vary, but UTM-tracked AI traffic typically represents only 20-40% of actual AI-influenced visits, because mobile app traffic, in-app browsers, and delayed visits all get misattributed.
Signal 2: HDYHAU Survey Responses
"How Did You Hear About Us?" surveys are the oldest attribution tool in marketing, and they're surprisingly effective for AEO.
Add a post-signup or post-purchase question: "How did you first discover us?" Include options like "ChatGPT / AI assistant," "Perplexity," "Google AI Overview," and "AI search (other)." You can also include non-AI options like "Reddit," "Google search," "Referral from colleague," etc.
HDYHAU captures what analytics cannot: the user's actual memory of how they found you. It catches zero-click recommendations, mobile app referrals, and delayed visits.
Sample rate matters. If only 5% of your customers fill out the HDYHAU survey, you need to account for that when projecting totals. A 5% sample rate means you multiply HDYHAU-attributed responses by 20 to estimate the full population. Track your response rate and build it into the model.
The Multiplier Model
The core idea: UTM-tracked AI revenue is your known floor. The ratio between HDYHAU "AI" responses and UTM-tracked AI sessions tells you how much AI-influenced activity your tracking misses. Multiply to estimate total AI-attributed revenue.
The Formula
tracked_ai_revenue = chatgpt_utm_revenue + (hdyhau_ai_pct * total_revenue)multiplier = hdyhau_ai_responses / chatgpt_utm_sessionsestimated_aeo_revenue = tracked_ai_revenue * multiplierLet's break that down:
- chatgpt_utm_revenue: Revenue from sessions where GA4 captured an AI referral source. This is your hard number.
- hdyhau_ai_pct: The percentage of HDYHAU survey respondents who said they discovered you through an AI tool.
- total_revenue: Total revenue for the period.
- hdyhau_ai_responses: Raw count of people who said "AI" in the survey.
- chatgpt_utm_sessions: Sessions GA4 tracked as coming from AI engines.
- multiplier: The ratio telling you how many real AI-influenced users exist for each one your UTMs catch.
Worked Example
Say you're a B2B SaaS company. In Q1:
- Total revenue: $500,000
- GA4 tracked 120 sessions from AI sources, generating $8,400 in revenue
- 400 customers filled out the HDYHAU survey (5% sample rate)
- 32 of those said "ChatGPT / AI assistant" (8% of respondents)
tracked_ai_revenue = $8,400 + (0.08 * $500,000) = $8,400 + $40,000 = $48,400multiplier = 32 / 120 = 0.27Wait. The multiplier is below 1. This happens when your UTM tracking catches more sessions than your survey catches responses. When the multiplier falls below 1, you floor it at 1 (meaning "at minimum, the tracked revenue is the estimate"). In practice, this means your HDYHAU survey isn't collecting enough responses, or your UTM tracking is catching a higher share than expected.
Let's adjust the example to a more typical scenario where the survey catches more signal:
- GA4 tracked 45 AI sessions, generating $3,200 in revenue
- 400 HDYHAU respondents, 32 said "AI"
tracked_ai_revenue = $3,200 + (0.08 * $500,000) = $43,200multiplier = 32 / 45 = 0.71 → floored to 1estimated_aeo_revenue = $43,200 * 1 = $43,200In this case, HDYHAU is doing the heavy lifting. The model says roughly $43,200 (8.6% of total revenue) was influenced by AI engines.
Adding Confidence Intervals
No estimate is exact. Apply a confidence range (typically +/- 25%) to communicate uncertainty:
low_estimate = estimated_aeo_revenue * 0.75high_estimate = estimated_aeo_revenue * 1.25For the example above: $32,400 to $54,000. Presenting a range instead of a single number signals intellectual honesty and gives stakeholders appropriate calibration.
The Correlation Model (12+ Weeks of Data)
Once you have three or more months of data, you can run a second model that validates (or challenges) the Multiplier Model.
The Correlation Model uses ordinary least squares (OLS) regression to find the statistical relationship between your Share of Voice in AI engines and your revenue, controlling for other factors like paid media spend and seasonality.
Revenue ~ SOV + Paid_Spend + SeasonalityThis tells you: "For every 1% increase in Share of Voice, revenue increased by $X, after accounting for changes in paid spend and seasonal patterns."
The Correlation Model requires an AI visibility tracking tool that monitors your Share of Voice over time. You'll need at least 12 weekly data points, ideally more.
When to trust each model
- Multiplier only (first 12 weeks): You're new to AEO, limited data. The Multiplier Model is your best available estimate.
- Multiplier + Correlation (12+ weeks): Run both and blend them 50/50. If they agree, you have higher confidence. If they diverge significantly, investigate why.
- Correlation-weighted (6+ months, R-squared > 0.6): When the regression has strong fit, you can weight it more heavily in the blend. An R-squared above 0.6 means SOV explains a meaningful portion of revenue variance.
Calculating Cost Per Citation
Once you have estimated AEO revenue, you can calculate the metric that makes AEO spend justifiable: cost per citation.
cost_per_citation = total_aeo_spend / total_citationsrevenue_per_citation = estimated_aeo_revenue / total_citationsIf you're spending $5,000/month on AEO and generating 80 citations, your cost per citation is $62.50. If those citations are driving an estimated $43,200 in quarterly revenue (roughly $14,400/month), your revenue per citation is $180. That's a 2.9x return.
Track cost per citation monthly alongside Share of Voice. As your AEO program matures and your citation count grows, cost per citation should decrease while revenue per citation holds steady or increases. If cost per citation rises without a corresponding lift in SOV or revenue, something in the program needs attention.
Setting Up the Tracking Stack
To run this framework, you need four things:
- GA4 with an "AI Search" channel. Follow the GA4 AI tracking guide to set up a custom channel group that captures AI referral traffic. This gives you chatgpt_utm_sessions and chatgpt_utm_revenue.
- A HDYHAU survey. Add to your signup flow, checkout, or post-purchase experience. Keep it short (one dropdown question). Include "ChatGPT / AI assistant," "Perplexity," "Google AI Overview," and "Other AI." Track your survey response rate.
- An AI visibility tool. You need Share of Voice data for the Correlation Model. See the AI visibility tools comparison for options. At minimum, track SOV weekly for your top 20-50 queries.
- A spreadsheet or dashboard. Pull these data points together into a single view: UTM revenue, HDYHAU percentages, SOV, paid spend, and total revenue per period. A Google Sheet works fine to start.
Need More Complete AI Traffic Data?
Server-side tracking tools can close the gap between what GA4 captures and what's actually happening. They catch mobile app referrals, bot-level traffic data, and referrers that GA4 misses.
Frequently Asked Questions
How many HDYHAU responses do I need for the model to be reliable?
Aim for at least 100 survey responses per period (monthly or quarterly). Below 100, the percentages are too noisy. If your response rate is 5%, you need at least 2,000 conversions per period to hit this threshold. If volume is lower, use quarterly aggregation instead of monthly.
What if the Multiplier Model and Correlation Model give very different numbers?
This usually means one of two things: either your HDYHAU survey has a selection bias (people who fill out surveys may over- or under-represent AI-influenced buyers), or your SOV data doesn't cover the right queries. Start by checking your survey placement and your query list. If they still diverge, weight the model with more data points more heavily.
Should I include Google AI Overviews in my 'AI' category?
Yes. AI Overviews are functionally an AI engine embedded in Google. If your content is cited in an AI Overview, that influence should count toward your AEO attribution. Include it as an option in your HDYHAU survey and track it in your GA4 AI channel.
How do I separate AEO influence from organic SEO influence?
You can't perfectly. There's overlap, especially when your content ranks both in traditional search and gets cited by AI engines. The practical approach: track AI-specific signals (UTM from AI engines, HDYHAU 'AI' responses) as a distinct slice rather than trying to subtract SEO from a total. Accept that some revenue is influenced by both.
What is a good cost per citation for B2B?
It depends heavily on your deal size. For B2B SaaS with $10K+ ACV, anything under $200 per citation is strong. For lower ACV products ($1K-$5K), aim for under $50. The key metric is the ratio: revenue per citation should be at least 2x cost per citation, otherwise the economics don't work.