Part of the AI Search Hub — browse all 35 AI Search guides.

A founder I work with set up Profound in January expecting it would show her how much revenue ChatGPT was driving. After two weeks she emailed me asking why the dashboard "only showed citations, not dollars." She had bought a citation monitor when what she needed was a revenue attribution layer. The two products live in the same category — "AI traffic analytics" — and have almost nothing in common operationally. She is not the first operator I have watched make that mistake, and the cost was three months of decisions made on the wrong data.

This article is the long-form pillar piece on AI traffic analytics as a category. It walks the 3-layer model, compares the nine tools that actually ship in this market in mid-2026, gives the honest setup workflow for each, and ends with the per-engine revenue numbers we see across the Attrifast customer base. It is the companion to the ChatGPT referral analytics guide, which goes deep on ChatGPT specifically, and the AI visibility tracker comparison, which goes deep on the prompt-replay side of the category. If you read both of those, sections 2-5 below will be familiar territory; sections 6-12 are the new ground.

AI traffic analytics three layers: detect AI referrer, classify the engine, join to revenue

Quick Facts

MetricValueSource
ChatGPT weekly active users (mid-2026)~800 millionOpenAI [1]
Perplexity monthly query volume~1 billionPerplexity disclosures [2]
Claude.ai weekly active users (Q1 2026)~35 millionAnthropic [3]
AI Overviews appearance rate (US English)13-15% of queriesSearch Engine Land [4]
Median % of ChatGPT visits hidden in GA4 Direct~71%Attrifast aggregate, n=38
Median % of Claude visits hidden in GA4 Direct~92%Attrifast aggregate, n=38
AI bot share of total bot traffic (2024)~4-6%Cloudflare Radar [5]
Built-in GA4 rules for AI-engine traffic0Google Analytics docs [6]
US adults under 30 using ChatGPT for search-shaped queries (2024)~27%Pew Research [7]
Google search share of US queries (Q1 2026)~80%StatCounter [8]
Tools in market positioning as "AI traffic analytics" (mid-2026)9+Author audit
Median AI-attributed revenue share for SMB SaaS (Q1 2026)7-12%Attrifast aggregate
ChatGPT RPV vs Google organic (B2B SaaS)1.4-2.1xAttrifast aggregate
Perplexity RPV vs Google organic (B2B SaaS)1.8-2.4xAttrifast aggregate
Year Profound launched citation monitoring2024Company blog [9]
Year ChatGPT search launchedOctober 31, 2024OpenAI [10]

Two patterns to read out of that table before anything else. First, the engine-by-engine hidden-traffic rates are not uniform — Claude is materially worse than ChatGPT, which is materially worse than Perplexity. A tool that only handles ChatGPT well still leaves you blind on the engine with the worst attribution. Second, the AI-attributed revenue share for SMB SaaS at 7-12% is already in the same range as paid social on many sites I see, but the average operator is allocating zero measurement budget to it because GA4 reports zero. The gap between what is happening and what is reported is the entire reason this category exists.

What "AI traffic analytics" actually means in 2026

The phrase gets used three different ways in vendor decks and almost everyone conflates them. Pinning down which one you actually mean is the difference between buying the right tool and burning $500/month on the wrong one.

Definition 1: traffic from AI engines. Visits to your site that originated from a user interaction with an AI assistant (ChatGPT, Claude, Perplexity, Gemini, Copilot, You.com, Kagi) or an AI-augmented search surface (Google AI Overviews, Bing's Copilot answer block, DuckDuckGo's AI summary). This is the literal denotation and the one I will use throughout the rest of the article unless I say otherwise.

Definition 2: traffic from AI crawlers. Hits from bots like GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot, Google-Extended, and the long tail. These are not human visitors. They matter for understanding which AI engines are ingesting your content into their training corpora or live indexes, but they should never sit in the same dashboard as human traffic without a clean separator.

Definition 3: AI-assisted analytics on traditional traffic. Tools that use machine learning on top of conventional traffic data — anomaly detection, predictive forecasting, automated insights. This is a separate product category (Mixpanel, Amplitude, Heap all ship some flavor of this) and has nothing to do with the AI-referral problem. When a vendor says "AI-powered analytics" this is what they usually mean.

The category that this article is about is definition 1, with definition 2 as a sidecar because the crawl data is a leading indicator for the referral data. Definition 3 is out of scope.

DefinitionWhat it tracksTools in marketThis article?
Traffic from AI engines (human visits)User clicks from ChatGPT, Perplexity, Claude, Gemini, etc.Attrifast, Plausible, Fathom, Simple Analytics, Tinybird-rolled stacks, GA4+custom channelYes — primary focus
Traffic from AI crawlers (bot hits)GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot crawlsCloudflare bot management, Datadome, Vercel WAF, raw server logsYes — sidecar
AI-assisted analytics on traditional dataML-augmented dashboards, anomaly detectionAmplitude, Mixpanel, Heap, June, PirschNo — out of scope

A second cut at the same distinction, because vendor pages routinely blur the lines:

Vendor positioning phraseWhat they usually meanDecoded
"AI traffic analytics"Definition 1 + 2, sometimes bothRead the docs carefully
"AI visibility tracker"Citation monitoring (prompt replay)Adjacent category; this article touches it briefly
"GEO analytics platform"Citation monitoring + content recommendationsAdjacent category
"AI SEO tool"Usually content optimization for AI rankingDifferent problem entirely
"AI-native analytics"Definition 3 (ML-augmented dashboards)Different problem entirely
"Generative search analytics"Subset of definition 1, focused on AI OverviewsA useful narrow slice
"Answer engine analytics"Definition 1 with citation-monitoring overlayThe honest hybrid label

The "answer engine analytics" label is the one I think is structurally cleanest but the market hasn't standardized on a single phrase yet. For SEO purposes, "AI traffic analytics" is the dominant phrase competitors are targeting in 2026 and I will use it throughout this piece.

The 3 detection layers (the actual hard part)

Building or buying AI traffic analytics is a 3-layer problem. Skipping any layer leaves you with broken data; the layers cannot be parallelized and have to be solved in order.

Layer 1: Detection

Detection asks: did this visit come from an AI surface at all? The signals available, ordered by reliability:

SignalReliabilityCoverage of AI trafficCost to implement
UTM parameter you pre-taggedVery high3-10% (self-published URLs only)30 min discipline
Bot user-agent (GPTBot, ClaudeBot, etc.)Very high100% of bot hits, 0% of humans10 min
Referer header matching known AI domainHigh15-30% of human visits (engine-dependent)1-2 hours
Behavioral fingerprint (empty referer + deep page + FAQ shape)Medium60-80% additional coverage1-2 days
Server-side IP + UA fingerprintLowMarginal additional coverage1+ week

The detection problem is most acute on Claude (90%+ stripped referers), bad on ChatGPT (65-80%), moderate on Perplexity (40-55%), and least bad on Copilot (most clicks pass a Bing-style referer). The engine you have the most users on is rarely the engine with the best detection signal, which is why a one-engine attribution stack never holds up in production.

A common mistake is using only the referer-match path. It catches the 15-30% that arrives with a referer and reports that number as "AI traffic," giving operators a falsely confident chart. The bigger slice — the 60-80% with no referer — sits silently in Direct/(none). The gap between the reported number and the real number is the entire reason this article exists.

Layer 2: Classification

Classification asks: which AI engine, which surface, and at what confidence level? The naive version is hostname lookup. The honest version uses path-level disambiguation.

EngineHostnamesPath patternsNotes
ChatGPT (chat)chatgpt.com, chat.openai.com/c/<uuid> (live conversation), /share/<uuid> (public-shared), /g/<slug> (custom GPT)Multiple surfaces; treat /share/ as hybrid AI+social
ChatGPT (search)chatgpt.com/searchLaunched October 2024 [10]
Perplexityperplexity.ai, www.perplexity.ai/search/<slug>, /discoverDiscover is publisher feed, search is core
Claudeclaude.aiVariousMost paths look the same; surface disambig is weak
Geminigemini.google.com/app/<id>Often strips referer entirely
AI Overviewsgoogle.com (with referer indicating SERP)Embedded inside /searchDetect via referer path containing udm= or specific AI-overview markers
Copilotcopilot.microsoft.com, bing.com/chat, /search?...&form=...More Bing-shaped behavior
You.comyou.com/search, /chatLong-tail volume
Kagikagi.com/search, /assistantNiche but high-quality users

A classifier that maps these correctly catches the surface-level distinction (chat vs search vs share), which matters because the conversion-rate profile differs by surface. ChatGPT /share/ URL clicks convert worse than /c/ URL clicks because the user is reading someone else's saved answer rather than their own live conversation. ChatGPT /search clicks behave more like organic search and convert similarly to Google organic on the same query type. Treating all three as "ChatGPT" loses signal.

Classification also needs to handle the in-app browser problem. When a user clicks a ChatGPT citation on iOS, the link sometimes opens in an in-app SFSafariViewController, which has inconsistent referer behavior across iOS versions. The session looks like a normal iOS Safari visit with an empty referer. The classifier has to fall back to behavioral inference for this case.

SurfaceTypical referer behaviorClassification confidence
ChatGPT web (desktop)Empty referer ~75% of clicksLow without UTM
ChatGPT web (mobile browser)Empty referer ~70%Low without UTM
ChatGPT iOS appIn-app webview, mostly emptyVery low
ChatGPT Android appEmpty referer >85%Very low
ChatGPT desktop app (Electron)Empty referer ~90%Very low
Perplexity webReferer passes ~45-55%Medium-high when present
Perplexity mobile appIn-app browser, emptyVery low
Claude webEmpty referer >90%Very low
Gemini chatReferer rarely passesVery low
AI Overviews citationPasses google.com refererMedium (need path parsing)
Copilot chatBing-style referer ~60%Medium

Layer 3: The revenue join

Revenue join asks: of the visits we detected and classified, which ones produced a paying customer? This is the layer most tools skip and the one that compounds the most over a year of decisions.

The technical pattern is server-side. When a session lands on your site, persist a first-party row keyed by a session identifier. When the user reaches Stripe Checkout, pass the session identifier in checkout.session.metadata. When the Stripe checkout.session.completed webhook fires, look up the original session row and write the revenue back. The full schema for a robust implementation is documented in Stripe's metadata reference [11] and walked through in the ChatGPT referral analytics guide.

The honest table on what each tool can and can't do at the revenue join layer:

Tool categoryCan attach revenue?How?Limitations
GA4PartialNative ecommerce events, requires gtag instrumentationCookie-based, breaks under ITP, AI traffic still lumped in Direct
PlausibleNoN/AClick counter only, no Stripe integration
FathomNoN/AClick counter only, no Stripe integration
Simple AnalyticsNoN/AGoals only, not revenue
ProfoundNoN/ACitation monitor, not analytics
LoamlyNoN/ACitation monitor, not analytics
GeoptieNoN/AVisibility tracker, no revenue join
SE Ranking AI Traffic AnalyticsPartialVia Search Console integrationLimited to organic-side data, not Stripe
AttrifastYesStripe webhook + first-party session rowStripe-only at SMB tier; other PSPs on roadmap
Custom server-side buildYesDIY1-2 weeks engineering + ongoing maintenance

The category bias is unmistakable: the revenue-join column is empty for almost everyone. It is the moat for the few tools that ship it, and the reason most operators end up with a fragmented stack (citation monitor + click analytics + spreadsheet that ties them to Stripe data exported monthly). The spreadsheet works for a quarter and then breaks the first time someone needs to redo the analysis on a different cohort. The full first-party stack stays correct.

The 5 AI surfaces: ChatGPT, Perplexity, Claude, Gemini, AI Overviews

Treating the AI category as one monolith is the second-most-common mistake after ignoring the revenue layer. The five major surfaces behave differently on every dimension that matters: index size, refresh latency, citation density, referer pass-through, conversion rate. The table below is the cross-engine snapshot I keep in my own ops doc, updated quarterly.

EngineWeekly activesPrimary indexCitations per answerReferer pass-throughTypical RPV (B2B SaaS)
ChatGPT (OpenAI)~800M [1]OpenAI training corpus + Bing-style retrieval3-515-25%$0.84
Perplexity~30M+ (est. from 1B monthly queries) [2]PerplexityBot + Bing partnership4-740-55%$1.12
Claude (Anthropic)~35M [3]Anthropic training + Brave/Anthropic web search1-35-10%$0.67
Gemini (Google chat)Tens of millions (Google doesn't disclose)Google main indexVaries (2-5)5-15%$0.71
Google AI OverviewsFires on 13-15% of US English queries [4]Google main index3-7google.com referer passes, but query stripped$0.71
Copilot (Microsoft)Tens of millionsBing index + GPT-4-class model3-555-65%$0.44
You.comSmall, growingMixed (own crawl + partners)3-7VariableInsufficient data
Kagi (paid search + Assistant)~50k subscribers est.Own crawl5-10High (privacy-friendly)High RPV, low volume

Traffic share table by site category

I keep this table because operators consistently misestimate where their AI traffic actually comes from. The medians are from my 38-site sample; your individual numbers will vary.

Site categoryChatGPT % of AI trafficPerplexity %Claude %Gemini/AIO %Copilot+long tail %
B2B SaaS (general)52%18%11%14%5%
B2B SaaS (developer tools)47%14%22%12%5%
DTC ecommerce38%9%4%41%8%
Content publisher (general)44%21%7%22%6%
Content publisher (tech/AI vertical)48%24%14%9%5%
Local services31%7%3%52%7%
Healthcare SaaS41%22%8%23%6%
Fintech / regtech39%25%13%18%5%
E-learning / courses51%15%9%19%6%

Three reads out of that table. First, developer tools is the only category where Claude breaks into double-digit AI traffic share, driven by the Claude Code workflow and Anthropic's developer-focused positioning. Second, local services and DTC ecommerce are Gemini/AIO-heavy because their queries still route primarily through Google search rather than chat-shaped surfaces. Third, fintech and regtech show unusually high Perplexity share because Perplexity's citation-forward UI is preferred by research-mode buyers who need to verify sources.

Engine-by-engine traffic-share trend

EngineShare of AI traffic Q1 2024Q1 2025Q1 2026Direction
ChatGPT~78%~62%~48%Down (still leader)
Perplexity~9%~15%~18%Up
Claude~3%~7%~12%Up
Gemini/AIO~7%~12%~18%Up
Copilot+others~3%~4%~4%Flat

The redistribution under the aggregate is the part most operators miss. AI traffic is growing, but the share each engine takes is shifting fast enough that a tool built only for ChatGPT in 2024 covered most of the surface and a tool built only for ChatGPT in 2026 misses more than half. Plan for multi-engine from day one.

Why GA4 gets AI traffic wrong by default

GA4's channel-grouping logic is documented in Google's support docs [6]. The default channels are Direct, Organic Search, Paid Search, Organic Social, Paid Social, Email, Referral, Affiliates, Audio, Display, and a handful of others. None of them match against AI-engine hostnames. Even after Google's late-2025 channel-group refresh, no AI-engine channel was added by default.

The mechanical chain of failures:

FailureMechanismResult in GA4
Referer stripped by AI clientHTTP header missingDirect/(none)
Referer present, but AI hostname not in channel groupNo rule matches chatgpt.com etc.Generic Referral, unlabeled
UTM parameter absentOperator didn't pre-tag the URLWhatever the referer says, usually Direct
Cookie blocked by ITP / Firefox ETPThird-party cookie contextNew visitor on every visit, no session continuity
Adblocker drops the gtag.js callBeacon never firesVisit unrecorded
In-app browser webviewInconsistent JS sandboxMixed behavior, often Direct

The custom-channel-group fix that most analytics consultants pitch is to add a regex like chatgpt\.com|perplexity\.ai|claude\.ai|gemini\.google\.com|copilot\.microsoft\.com to a new Group called "AI". This is not wrong, but it only addresses the second row. It does nothing for the first row (stripped referer), which is the majority case.

The arithmetic for an SMB SaaS site averaging 50,000 sessions per month with 18% true AI traffic share:

Attribution methodAI traffic captured% of true AI traffic
GA4 default (no custom channel)~1,800 sessions in Referral, unlabeled as AI20% (1,800 of 9,000)
GA4 + custom AI channel group~1,800 sessions correctly labeled20%
GA4 + custom channel + UTM discipline on own URLs~2,700 sessions30%
Server-side first-party + behavioral inference~7,650 sessions85%
Full stack (UTM + first-party + Stripe join)~8,100 sessions, joined to revenue90%+

The gap between 20% and 90%+ is the gap between the dashboard you have and the dashboard you need. The decisions you make off the 20% number — content prioritization, channel investment, hiring — are wrong in a predictable direction: you under-invest in AI as a channel because the data says it doesn't exist.

The other GA4-specific issues that compound:

GA4 issueEffect on AI trafficWorkaround
Data sampling at >10M events/monthAI traffic gets sampled too, signal degradesMove to BigQuery export or alternative tool
14-month data retention defaultYear-over-year AI growth comparisons breakSet to 50 months in admin, still has limits
Consent Mode v2 modelingAI visits often unconsented, get modeled awayUse server-side analytics that don't depend on consent
Default attribution model is data-drivenBlack-box, no engine-level transparencySwitch to last-non-direct for clarity
Bot filtering hits AI crawler hitsSome legit human visits get filteredInspect filter logs monthly
Channel changes are retroactiveAdding the AI channel reattributes historyDocument the change date

The 9-tool comparison matrix

This is the section operators usually skim first, so I built it to be skim-friendly. The matrix below covers nine tools that ship "AI traffic analytics" features in mid-2026. Pricing is the entry tier; capabilities and limitations are based on each vendor's published documentation cross-checked against my hands-on tests where I have them. Where I haven't personally used a tool in the past 90 days I've noted it explicitly.

The headline matrix

ToolEntry priceCategoryAI engines supportedDetection methodRevenue attributionGDPR/cookielessSetup timeFree tier
Attrifast$29/moFirst-party analytics + Stripe revenueChatGPT, Perplexity, Claude, Gemini, AIO, Copilot, You.com, KagiReferer + behavioral + UTM + bot UAYes (Stripe webhook native)Yes, cookieless~2 min14-day trial
Profound$499+/moCitation monitoring (enterprise)ChatGPT, Perplexity, Claude, Gemini, CopilotPrompt replay (not site-side)Non/aDays (onboarding)No
Loamly (LMNT.so)$99+/moCitation monitoring (SMB)ChatGPT, Perplexity, Claude, GeminiPrompt replayNon/aHoursLimited
Geoptie$29+/moVisibility tracking + light contentChatGPT, Perplexity, Claude, GeminiPrompt replayNon/aHoursYes (limited)
SE Ranking AI Traffic Analytics$44/mo (add-on to Pro)Multi-tool with AI moduleChatGPT, Gemini, AIO via Search ConsolePrompt replay + GSC integrationPartial via GSCCookie-based~1 hour14-day trial
SEOcrawl AI Tracker$49/mo add-onAgency-focused prompt trackingPerplexity, Gemini, ClaudePrompt replayNon/aHoursNo
Google Analytics 4FreeGeneral web analyticsNone natively; AI traffic falls in DirectCookie-based, gtag.jsPartial (ecommerce events)Cookie-based~1 hourFree
Plausible Analytics$9+/moPrivacy-first first-party analyticsDetects referrer for any AI domainReferer-basedNo (Goals only)Yes, cookieless~5 minTrial
Fathom Analytics$15+/moPrivacy-first first-party analyticsDetects referrer for any AI domainReferer-basedNo (Goals only)Yes, cookieless~5 minTrial

Breakdown by detection layer

The same nine tools mapped against the 3-layer model from section 3. This is the matrix that explains why most operators end up needing two tools.

ToolLayer 1: DetectLayer 2: Classify engineLayer 3: Revenue join
AttrifastYes (4-method)Yes (8 engines + path-level)Yes (Stripe native)
ProfoundNo (doesn't track site visits)n/a — measures citationsNo
LoamlyNon/a — measures citationsNo
GeoptieNon/a — measures citationsNo
SE Ranking AI Traffic AnalyticsPartial (via GSC for AIO)Partial (Gemini + AIO mainly)Partial via GSC tied to organic
SEOcrawl AI TrackerNon/a — measures citationsNo
GA4Partial (referer only, no path)Requires manual custom channelYes for ecommerce, manual setup
PlausibleYes (referer only)Auto-rolls AI domains into channelsNo
FathomYes (referer only)Auto-rolls AI domains into channelsNo

Engine coverage breakdown

ToolChatGPTPerplexityClaudeGeminiAI OverviewsCopilotYou.comKagi
AttrifastYesYesYesYesYesYesYesYes
ProfoundYesYesYesYesPartialYesNoNo
LoamlyYesYesYesYesNoNoNoNo
GeoptieYesYesYesYesPartialNoNoNo
SE Ranking AI Traffic AnalyticsLimitedNoNoYesYesNoNoNo
SEOcrawl AI TrackerNoYesYesYesNoNoNoNo
GA4 (with custom channel)Yes (referer only)YesYesYesNoYesYesYes
PlausibleYes (referer only)YesYesYesNoYesYesYes
FathomYes (referer only)YesYesYesNoYesYesYes

Setup time and ongoing operations

ToolInitial setupOngoing operationsEngineering required?
Attrifast2 min (script + Stripe OAuth)NoneNo
ProfoundSeveral days (sales + onboarding)Prompt-list curation monthlyNo
Loamly1-2 hoursPrompt-list curation monthlyNo
Geoptie30 minPrompt-list curationNo
SE Ranking AI Traffic Analytics1 hourKeyword/prompt updatesLight
SEOcrawl AI Tracker1-2 hoursPrompt curationNo
GA4 (with custom channel)30 min (channel group) + ongoing taggingQuarterly channel-group auditLight
Plausible5 min (script tag)NoneNo
Fathom5 min (script tag)NoneNo

Best-fit by use case

Job to be doneFirst-best toolSecond-best
"Am I being cited by ChatGPT/Perplexity?"Profound (enterprise) or Loamly (SMB)Geoptie
"Did my AI traffic go up this week?"Plausible or FathomAttrifast
"How much revenue did ChatGPT drive?"AttrifastDIY server-side + Stripe
"Is AI Overviews citing my content?"SE Ranking + Google Search ConsoleManual GSC queries
"Which AI engine sends the highest-RPV traffic?"AttrifastDIY server-side + Stripe
"What content should I write to get AI-cited?"Geoptie or SEOcrawlLoamly + manual analysis
"Are AI bots crawling my new pages?"Server logs + CloudflareDatadome / similar
"Where is my GA4 Direct/(none) traffic actually from?"AttrifastCustom server-side stack

The matrix is intentionally honest about Attrifast's gaps — the citation-monitoring rows correctly point at Profound and Loamly, because that is not the layer Attrifast is built for. The Attrifast wedge is the revenue-join layer, which is the only layer where no other SMB-priced tool exists in 2026. If you have already solved the revenue join (via custom code, a different attribution vendor, or a manual Stripe + spreadsheet workflow) the citation tools are the higher-leverage purchase. If you have not solved revenue, that's the first layer to fix because the other layers are answering the wrong question without it.

Pricing comparison: full table

ToolEntry tierMid tierEnterpriseWhat entry tier includes
Attrifast$29/mo$99/mo (more sites/traffic)CustomAll AI engines, Stripe join, unlimited events at SMB caps
Profound$499/mo (est.)$999+/moCustom contracts~100 prompts, all engines, enterprise reporting
Loamly$99/mo$299/mo$799+/mo50 prompts, 4 engines, daily checks
Geoptie$29/mo$99/moCustom25 prompts, 4 engines
SE Ranking$52/mo (Pro plan)$109/mo (Business)EnterpriseFull SE Ranking + AI Traffic add-on
SEOcrawl$49/mo add-onCustomAgency contracts50 prompts, 3 engines
GA4Free$150k/year (GA360)CustomAll standard reporting; AI traffic in Direct by default
Plausible$9/mo$19/mo$69/mo10k pageviews, basic AI domain detection in referrer
Fathom$15/mo$44/mo$144/mo100k pageviews, basic AI domain detection in referrer

The price-per-AI-decision math the honest CFO will run:

StackTotal monthly costLayers coveredCost per layer
GA4 only$0Partial L1 onlyn/a
GA4 + Profound$499Partial L1 + citation monitor$499 for 1.5 layers
GA4 + Loamly$99Partial L1 + citation monitor$99 for 1.5 layers
Plausible + Loamly$108L1 (referer-only) + citation monitor$108 for 2 partial layers
Attrifast standalone$29L1 + L2 + L3$29 for 3 layers
Attrifast + Loamly$128L1 + L2 + L3 + citation monitor$128 for full stack
Attrifast + Profound$528L1 + L2 + L3 + enterprise citation$528 for full enterprise stack
Custom DIY$0 + 1-2 wks engineeringAll 3 + custom citation monitor~$8k engineering + ongoing

The cheapest full-stack option in 2026 is Attrifast + Loamly at $128/month combined. The cheapest revenue-only option is Attrifast standalone at $29/month. The DIY path costs zero cash and roughly $8k of engineering time, plus ongoing maintenance that compounds. Most operators are better served by spending the $29 and reclaiming the engineering time for the parts of the product that actually differentiate the business.

Setup workflow: the four implementation paths

There are four real ways to instrument AI traffic analytics in 2026, each with different tradeoffs on coverage, effort, and revenue-join capability. Most operators end up running a hybrid of two or three.

ApproachCatchesMissesEffortCookieless?Revenue-joinable?
UTM tagging on self-published URLsURLs you tagged before AI lifted themHomepage, untagged pages, citations of others' content30 min one-time + ongoing disciplineYesYes if your analytics joins UTM to Stripe
Server-log grep + manual parsing15-30% of human visits (engine-dependent) + all bot hits70-85% of human visits without referer10 minYesNo (logs don't see Stripe)
JS-based attribution with AI-domain regexBrowser sessions where referer is preservedApp sessions, all stripped-referer cases1-2 hoursDepends on scriptDepends on stack
Server-side first-party attribution (Attrifast pattern)All four request types + behavioral inferenceVoice queries, true zero-click2 min with vendor; 1-2 days customYesYes via Stripe webhook

Path 1: UTM hardcoding (the underrated cheap win)

Whenever you paste a URL into a context that might be lifted by an AI engine (your own published content, GitHub README, Reddit comment, X bio, conference slide deck, podcast show notes, Substack newsletter), tag it. The convention I use across attrifast.com properties:

?utm_source=ai-citation&utm_medium=ai-referral&utm_campaign=<page-slug>

When ChatGPT or Perplexity copies the URL verbatim into an answer, the query string survives. The user clicks; the tagged URL arrives at your server; any analytics tool (GA4, Plausible, Fathom, Attrifast) reads the UTM and attributes the visit correctly regardless of referer state.

Where to tagUTM schemeWhy
Blog post outbound CTAs?utm_source=blog&utm_medium=ai-citation&utm_campaign=POST_SLUGCatches when AI lifts your CTA URL
GitHub README links?utm_source=github&utm_medium=ai-citation&utm_campaign=READMEAI engines crawl GitHub heavily
Reddit comment URLs?utm_source=reddit&utm_medium=ai-citation&utm_campaign=AUTOChatGPT trained on Reddit deal [12]
Conference deck links?utm_source=deck&utm_medium=ai-citation&utm_campaign=EVENTLong tail but real
Podcast show notes?utm_source=podcast&utm_medium=ai-citation&utm_campaign=EPISODELong tail but real
Substack/newsletter URLs?utm_source=newsletter&utm_medium=ai-citation&utm_campaign=ISSUENewsletters get cited

Coverage estimate: 3-10% of total AI human visits, heavily skewed by how disciplined you are about tagging.

Path 2: Server-log grep

The fastest cheapest path. Grep your raw access logs for known AI-engine patterns. The one-liner I run on Nginx:

grep -E "(chatgpt\.com|chat\.openai\.com|perplexity\.ai|claude\.ai|gemini\.google\.com|copilot\.microsoft\.com|you\.com|kagi\.com)" \
  /var/log/nginx/access.log \
  | awk '{print $1, $7, $11}' \
  | sort | uniq -c | sort -rn | head -50

Pair it with a user-agent grep for GPTBot|ChatGPT-User|OAI-SearchBot|PerplexityBot|ClaudeBot|Google-Extended|Bytespider and you have a passable AI-traffic snapshot for the day.

Coverage estimate: 15-30% of human visits (engine-dependent) plus ~100% of bot traffic. The long-term ergonomics are poor: no revenue join, no cohorts, the unreferred majority is invisible.

Path 3: Client-side JS attribution

A small JS snippet that reads document.referrer on page load and writes the matched AI engine to a first-party sessionStorage token. The minimal implementation:

const AI_DOMAINS = {
  'chatgpt.com': 'chatgpt',
  'chat.openai.com': 'chatgpt',
  'perplexity.ai': 'perplexity',
  'www.perplexity.ai': 'perplexity',
  'claude.ai': 'claude',
  'gemini.google.com': 'gemini',
  'copilot.microsoft.com': 'copilot',
  'you.com': 'youcom',
  'kagi.com': 'kagi',
}

function captureAiSource() {
  const referer = document.referrer
  if (!referer) return null
  try {
    const host = new URL(referer).hostname
    const engine = AI_DOMAINS[host]
    if (engine) {
      sessionStorage.setItem('aiSource', engine)
      // Persist to your analytics endpoint
      fetch('/api/track', {
        method: 'POST',
        body: JSON.stringify({ engine, url: location.href }),
      })
      return engine
    }
  } catch (_) { return null }
  return null
}
captureAiSource()

Coverage estimate: 15-30% of human visits, same as server-side referer fingerprinting because the underlying signal is the same. Operational note: JS-based attribution is sensitive to ad blockers (uBlock Origin, Brave's built-in blocker, EasyPrivacy lists) — server-side runs upstream and isn't affected.

Path 4: Server-side first-party attribution

The full pattern: combine UTM parsing, bot-UA exclusion, referer-domain matching, and behavioral inference into a single server-side decision tree. Persist the result as a first-party session row. Join to Stripe via webhook metadata. The reference architecture lives in the practical track-ChatGPT-traffic guide.

Coverage estimate: 85-95% of total AI human visits, with a known and bounded uncertainty band on the behavioral-inference portion.

The four-line summary across all four paths: detect at the edge, persist server-side, join via Stripe webhook, never depend on a third-party cookie.

Common AI traffic analytics mistakes

Ten mistakes I've watched operators make often enough to call them patterns, with the fix for each.

Mistake 1: Buying a citation monitor and expecting revenue numbers. Profound, Loamly, Geoptie, Otterly, SEOcrawl — none of them measure dollars. They measure mentions. The two categories live in the same vendor decks and confuse the operator into a purchase that doesn't solve their actual problem. Fix: ask the vendor "can this tool show me the Stripe revenue from ChatGPT-attributed visits last month?" If the answer requires CSV exports and a spreadsheet, the answer is no.

Mistake 2: Adding only the GA4 custom channel group. Catches the 15-30% of AI visits that arrive with a referer. Leaves the 70-85% in Direct/(none). Operators ship the channel group, see a small AI number on the chart, and conclude "AI is a tiny channel." It is not. Fix: pair the channel group with server-side behavioral inference, or use a first-party attribution tool that does both layers.

Mistake 3: Treating all AI engines as one bucket. ChatGPT, Perplexity, Claude, Gemini, and AI Overviews each have different RPV, different referer behavior, different audience profiles. Aggregating them as "AI" hides the signal you actually need. Fix: report per-engine from day one. The aggregate is fine for board slides; the per-engine breakdown is what drives content decisions.

Mistake 4: Counting bot impressions as citations. A GPTBot crawl is not a citation. A ChatGPT-User fetch may indicate a citation but doesn't guarantee one. The only way to know your page was cited in an answer is to (a) get a referer-tagged human click, (b) see your domain in a Profound/Loamly tracked answer, or (c) ask the engine the query yourself. Fix: distinguish "crawled" from "cited" from "clicked" in your reporting language.

Mistake 5: Blocking AI crawlers to "protect content." Blocking GPTBot stops future training-corpus inclusion. It doesn't stop ChatGPT-User (the live-fetch agent) or stop your site from being referenced in answers using cached training data. The cost is invisible: pages you blocked from training are slowly cited less often in answers the model produces without browsing [13]. Fix: allow GPTBot, ClaudeBot, PerplexityBot, Google-Extended unless you have a specific legal reason not to. Audit crawl rates monthly as a leading indicator.

Mistake 6: Letting Direct/(none) grow without auditing it. A 25-40% Direct jump in 60 days with no campaign and no obvious branding event is almost always an AI-attribution gap. Operators routinely misread it as "brand awareness working" and spend a quarter celebrating a measurement bug. Fix: monthly Direct-bucket audit, segmenting by landing page and FAQ-shape signal.

Mistake 7: Reporting AI traffic without conversion rate. Telling the board "ChatGPT sent us 4,000 sessions last month" without "at $0.84 RPV that's $3,360 attributable" lets the channel look like vanity. Volume without value is the framing that gets channels defunded. Fix: always pair the volume number with the revenue join.

Mistake 8: Ignoring conversation-UUID dedup. Two visits with the same ?ref=chatgpt.com/c/<uuid> in a short window are usually the same user clicking multiple links from the same answer. Counting them as two unique-source attributions overstates traffic by 15-30% on ChatGPT-heavy sites. Fix: dedupe by conversation UUID within a 24-hour window.

Mistake 9: Sampling without confidence intervals. Visibility trackers run prompts on a sample (10-100 prompts) and report a "visibility score" as if it were the population truth. Re-running the same prompt list a week later can show a 15-30% swing for noise reasons that have nothing to do with your content. Fix: ask vendors for the confidence interval on their visibility score, or run each prompt 3-5 times per measurement period to get your own variance estimate.

Mistake 10: Optimizing for one engine and reporting on all. Operators run a content sprint optimized for ChatGPT citation patterns (high-DR backlinks, brand authority signals), then evaluate the result across all four engines. ChatGPT might improve while Perplexity stays flat because Perplexity rewards different signals (topical specificity, FAQ density). Reading the aggregate as "the sprint didn't work" misses that one engine improved 40%. Fix: report progress per engine, not aggregated, especially in the first 90 days of any GEO sprint.

The honest measurement stack: visibility + revenue attribution

The right tooling stack in 2026 for most SMB SaaS operators is two products, not one. The first is a visibility tracker (Profound, Loamly, or Geoptie depending on budget). The second is a revenue attribution layer (Attrifast for Stripe-native; custom server-side build for non-Stripe). The two products answer the two halves of the AI traffic question and the disagreement between them is the most actionable signal in the entire category.

QuestionVisibility tracker answersRevenue attribution answers
"Am I cited in ChatGPT answers for query X?"Yes (sampling-based)No
"How does my citation share trend over time?"YesNo
"Which competitors are cited next to me?"YesNo
"Did the citation produce a click?"NoYes (per visit)
"What's my AI-attributed revenue this month?"NoYes
"Which AI engine has the highest RPV?"NoYes
"Did my GEO content sprint pay back its cost?"Partially (visibility delta)Fully (revenue delta)
"Are AI clicks converting better than Google organic?"NoYes

The diagnostic value of the disagreement: when your visibility tracker shows you cited 200 times on ChatGPT in a month and your revenue attribution layer shows 18 ChatGPT-attributed Stripe payments, the implied click-to-cite ratio is 9%. If your competitor is at 5%, you're outperforming on click-through despite similar visibility. If you're at 2%, you have a click-through problem (citation snippet is poorly framed, brand isn't compelling at the moment of the click) that visibility alone would not have revealed.

The recommended monthly review structure, once both tools are in place:

Review sectionSourceDecision driven
Visibility share by engineProfound/Loamly/GeoptieContent gap analysis (which queries you're missing)
Citation density trendSameWhether your authority signals are improving
AI-attributed traffic by engineAttrifastChannel-level investment decisions
AI-attributed revenue by engineAttrifastPer-engine ROI on GEO effort
Click-to-citation ratio (cross-tool)Both tools combinedCitation framing and snippet quality
Per-page AI revenueAttrifastPage-level investment (which content to expand)
Direct/(none) auditAttrifast vs GA4Attribution gap quantification

The two-tool stack costs $128/month at the SMB tier (Attrifast $29 + Loamly $99). That's roughly 0.3% of revenue for a $400k ARR SaaS. The decisions it changes are worth far more than that ratio.

Case study and benchmark data

Three anonymized cases from the Attrifast aggregate, illustrating different patterns by category.

Case 1: B2B SaaS, ~$2.4M ARR, content-marketing-heavy

MetricGA4 baseline (Q4 2025)Attrifast actual (Q1 2026)Delta
Direct/(none)32.1% of sessions11.8%-20.3pp
Google organic41.4%41.6%+0.2pp
Paid social8.9%9.1%+0.2pp
ChatGPT0%11.4%+11.4pp
Perplexity0%4.1%+4.1pp
Claude0%1.7%+1.7pp
Google AI Overviews0%2.4%+2.4pp
Email6.2%6.3%+0.1pp
Other11.4%11.6%+0.2pp
AI engines (total)0%19.6%+19.6pp

Translated to dollars at their reported Stripe revenue: AI-attributed Q1 revenue was $14,180 against zero in the previous quarter's reporting. The team didn't change content strategy, ad spend, or campaigns. They flipped on attribution and a $14k revenue line moved from invisible to visible.

Case 2: Developer tools, ~$5.5M ARR, OSS-adjacent

EngineSessions/monthRPVMonthly revenue
ChatGPT4,210$1.18$4,968
Perplexity980$1.46$1,431
Claude1,470$1.32$1,940
Gemini/AIO1,840$0.71$1,306
Copilot320$0.55$176
AI engines total8,820avg $1.12$9,821
Google organic (reference)12,400$0.78$9,672
Direct (real direct only after split)3,100$0.42$1,302

The headline: AI traffic now produces more monthly revenue than Google organic at this site, despite Google still being a larger traffic source. The reason is RPV gap — AI-arriving developers have higher purchase intent than Google-arriving developers searching tutorial keywords. Before attribution was correct, the team thought Google was their dominant revenue channel because the dashboard said so. The dashboard was wrong.

Case 3: DTC ecommerce, ~$3M GMV

EngineSessions/monthRPVMonthly revenue
ChatGPT1,210$0.38$460
Perplexity290$0.41$119
Claude80$0.22$18
Gemini/AIO1,470$0.48$706
AI engines total3,050avg $0.43$1,303
Google organic18,200$0.62$11,284

The inverted pattern: Google organic RPV is higher than AI on DTC. Impulse buying favors Google; AI traffic skews to research-mode browsing that doesn't convert in-session. AI is still 6.1% of revenue here, not zero, but the prioritization decision is different — Google organic gets the marketing attention, AI gets the content-prep investment because it's a leading indicator of brand authority.

Aggregate benchmark across 38 sites

MetricB2B SaaS (n=24)DTC ecommerce (n=8)Developer tools (n=4)Content publishers (n=2)
Median AI traffic share18.4%6.8%27.2%24.1%
Median AI revenue share14.6%5.2%23.7%11.4% (ad-based)
ChatGPT RPV$0.84$0.39$1.18$0.32
Perplexity RPV$1.12$0.41$1.46$0.48
Claude RPV$0.67$0.22$1.32$0.21
Gemini/AIO RPV$0.71$0.48$0.71$0.31
AI RPV vs Google organic ratio1.65x0.69x1.43x1.01x

The ratio in the last row is the leading indicator most operators should track quarterly. Above 1.0x means AI traffic converts better than your Google organic baseline; below 1.0x means it converts worse. The ratio is stable enough month-over-month that a sudden 20%+ swing usually indicates either a content change (good) or a measurement regression (bad) — either way, worth investigating.

What changes when you actually measure this correctly

The shape of your monthly review changes once AI-engine attribution is correct. The before/after framework I share with every Attrifast customer in their first month:

Review sectionBefore correct AI attributionAfter correct AI attribution
Channel mix"Direct is up, brand is strong""Direct is flat, AI is up, GEO is working"
Content prioritizationBased on Google rank + organic clicksBased on AI citation rate + AI-attributed revenue
Page-level investmentPages with high Google trafficPages with high (Google + AI) revenue per visit
New-content briefSEO keyword + topic clusterSEO keyword + AI citation hook + FAQ block design
Vendor evaluation"Do we need a new GA?""Do we need a Stripe-native attribution layer?"
Campaign attribution modelFirst / last / linear / GA4 data-drivenFirst / last + AI-engine override layer
Cohort definition for retentionBy first-touch channelBy first-touch channel + AI-citation-touch flag
Conversion-rate optimizationPage-level + funnel-levelPage-level + funnel-level + AI-source-level
Pricing-page test interpretationDirect visitors at top, OK to ignoreDirect visitors are AI-research traffic, weight differently
Long-tail blog ROIHard to measure, often defundedMeasurable at AI-citation-attributable RPV
Year-over-year growth attributionChannel-aggregateChannel + AI-engine subdimension

The third row is the one with the most leverage. Pages-by-revenue is a different list once AI attribution is correct. Long-tail blog posts that GA4 ranked near zero often turn out to be the top-cited pages in AI answers, driving meaningful AI-attributed conversion. Defunding those pages because GA4 says they get few clicks is the kind of unforced error that compounds over a year.

What this looks like inside Attrifast

A short note on the product, because the article can't pretend the author has no interest. Attrifast surfaces the 3-layer attribution as a single "AI Engines" channel in the same dashboard as Google organic, paid social, email, and the rest. The split by engine (ChatGPT, Perplexity, Claude, Gemini, AIO, Copilot, You.com, Kagi) is a click-through. The session-to-Stripe-revenue join happens on every Stripe checkout.session.completed webhook with no manual reconciliation.

Attrifast capabilitySpec
Tracking script size4 KB gzipped
Setup time~2 minutes (script tag + Stripe OAuth)
AI engines detected8 (ChatGPT, Perplexity, Claude, Gemini, AIO, Copilot, You.com, Kagi)
Detection methodsUTM + bot UA + referer + path + behavioral inference
CookielessYes
Consent banner requiredGenerally no (verify per jurisdiction)
Revenue joinStripe webhook (native)
Other PSPsPaddle, LemonSqueezy on roadmap
Entry price$29/mo
Free trial14 days, no card

The pricing page is at attrifast.com. Compared to GA4 ($0) plus a $499/mo Profound subscription plus a $99/mo Loamly subscription plus an analyst's time to glue them together, the headline win is that the four data streams (clicks, citations, sessions, revenue) live in one place and join automatically. The detailed comparison against the GA4 default stack lives at attrifast vs Google Analytics.

That's the pitch in the second-person. The first-person reason I built it is that I was that operator with my own SaaS in 2024, looking at a Direct/(none) bucket climbing past 30% and wondering whether I had a brand moment or a measurement gap. I had a measurement gap. The product is the fix.

Limitations

Six things this article does not cover, and you should not extrapolate past.

  • Voice queries. When a user asks ChatGPT, Gemini, or Siri-via-ChatGPT a question in voice mode and the assistant speaks the answer back without rendering a clickable link, no visit happens to track. The brand mention happens; the traffic doesn't. No reliable measurement story exists for voice-mode answer engines as of mid-2026.
  • Enterprise tenant deployments. ChatGPT Enterprise, Claude for Work, and Gemini for Workspace run customer-isolated tenants with separate logging and may behave differently for referer pass-through. The numbers above are consumer-surface measurements; enterprise numbers may diverge.
  • Cross-device sessions. A user reading a Perplexity answer on mobile, screenshotting the URL, then opening it on desktop later looks like a Direct visit from a new visitor unless your stack has identity stitching. No reliable cookieless fix; treat as a known undercount.
  • Region and language variance. All numbers in this article are US English unless noted. EMEA referrer-pass-through rates appear slightly higher in my sample; APAC slightly lower. China is excluded entirely (Baidu's Ernie, ByteDance's Doubao, and Alibaba's Qwen surfaces don't map to any of the western tools above).
  • AI agent-driven traffic. Anthropic's computer-use, OpenAI's Operator, and Google's Project Astra produce visits that look like normal browser sessions but originate from an agent acting on a user's behalf. The category is too small to measure reliably in 2026 (<0.5% of AI traffic in my sample). Will be material by 2027.
  • The Q1 2026 RPV multipliers are a snapshot. AI users' demographic mix is shifting fast — as ChatGPT becomes more general-consumer the intent-quality premium will likely compress. Re-measure quarterly. Treat these numbers as directional estimates, not constants.

FAQ

What is AI traffic analytics?

AI traffic analytics is the practice of detecting, classifying, and attributing website visits that originate from AI assistants and AI-augmented search surfaces — ChatGPT, Perplexity, Claude, Gemini, Copilot, and Google AI Overviews. It is a 3-layer problem. Layer 1 is detection: noticing that an inbound visit came from an AI surface at all, which is hard because most AI clients strip the Referer header. Layer 2 is classification: mapping the visit to a specific engine, surface (chat, search, share), and confidence band. Layer 3 is the revenue join: tying that classified session to a downstream Stripe payment, signup, or conversion so the channel value is measurable in dollars. Most tools in market today solve layer 1 or layer 2; very few solve layer 3 at SMB price points. Attrifast was built for the full stack.

Why doesn't GA4 show AI traffic correctly?

GA4 assigns a channel by reading the document.referrer string and URL parameters on every session. The four major AI clients (ChatGPT desktop and mobile, Perplexity app, Claude, Gemini chat) strip the Referer header on most outbound clicks, so GA4 sees an empty referer with no UTM tag and classifies the visit as Direct/(none). GA4 also has no built-in channel rule for chatgpt.com, perplexity.ai, claude.ai, or gemini.google.com — even when a referer does pass, it falls into the generic Referral bucket without an AI-engine label. The combined effect across the 38 sites I have measured is that 65-82% of ChatGPT visits, 60-75% of Perplexity visits, 90%+ of Claude visits, and essentially 100% of Google AI Overviews citation clicks are hidden inside Direct/(none) or unlabeled Referral. A custom GA4 channel group helps with the small slice that passes a referer but does nothing for the much larger hidden majority.

What is the best AI traffic analytics tool in 2026?

It depends on what you mean by "best." For citation monitoring (does ChatGPT mention my brand in its answers?) Profound and Loamly lead, with Profound aimed at enterprise and Loamly priced for SMB. For prompt rank tracking across multiple engines, Geoptie, Otterly, and SE Ranking's AI Traffic Analytics module cover the surface. For first-party visit tracking with revenue attribution (does the AI traffic actually convert and pay me?) Attrifast is the only Stripe-native option at $29/month that I am aware of. The honest answer is most operators need two tools — one citation monitor plus one revenue attribution layer — because no single product does both well in 2026. Pick the layer where your decision-making bottleneck is and stop there until you exhaust it.

Can I track AI traffic without cookies or a consent banner?

Yes. The minimum cookieless stack is three pieces. First, server-side referer fingerprinting against a known AI-engine domain list (chatgpt.com, chat.openai.com, perplexity.ai, claude.ai, gemini.google.com, copilot.microsoft.com, you.com, kagi.com). Second, a first-party identifier scoped to your own domain — first-party identifiers fall outside the cross-site cookie rules that ITP, Firefox ETP, and the EU ePrivacy directive target. Third, a server-side join from the first-party session row to a Stripe Checkout completion via metadata. None of those three pieces require a third-party cookie, a fingerprint hash, or in most jurisdictions a consent banner. This is the architecture Attrifast ships out of the box and the one I recommend even for sites that already pay for GA4.

How accurate is behavioral fingerprinting for AI traffic detection?

Across the sites I have measured against UTM-tagged ground truth subsets, behavioral fingerprinting for unreferred AI visits runs at 78-86% precision and 70-82% recall. Precision means: of the visits the classifier labels as suspected-AI, how many actually are. Recall means: of the actual AI visits in the population, how many the classifier catches. The classifier uses six signals — empty referer, new visitor, deep-page entry (non-homepage), FAQ-shaped landing page, query-shape conversational phrasing, and time-of-day distribution. It is not perfect. It is materially better than the GA4 default of "all of this is Direct." Operators who need ground truth should pair the classifier with disciplined UTM tagging on every URL they personally publish.

Do AI engines pass UTM parameters?

Yes when they copy your URL verbatim, no when they paraphrase. ChatGPT and Perplexity tend to copy verbatim — if you publish a URL with a UTM string, the string survives the model lifting the URL into an answer. Claude is more variable; it sometimes strips query strings. Gemini and Google AI Overviews strip query strings more often than they preserve them. The practical implication: tag every URL you personally publish (blog posts, social bios, GitHub READMEs, conference decks, Reddit comments) with a consistent UTM scheme like ?utm_source=ai-citation&utm_medium=ai-referral&utm_campaign=PAGE_SLUG. You will recover 3-10% of AI traffic that would otherwise be hidden, at zero ongoing cost beyond the discipline of remembering to tag.

What is the difference between AI visibility tracking and AI traffic analytics?

Visibility tracking measures whether AI engines mention or cite your brand inside their answers. It works by replaying a fixed prompt list against ChatGPT, Perplexity, Claude, and Gemini on a schedule, parsing each answer for brand mentions and citation URLs, and reporting share-of-voice over time. Tools in this category include Profound, Loamly, Geoptie, Otterly, and SEOcrawl. Traffic analytics measures whether the citation produced a click that produced a visit that produced revenue. It runs at the edge of your own site through referer fingerprinting, behavioral inference, and a server-side revenue join. The two answer different questions. A site can have great visibility (cited 200 times last month) and zero traffic (those citations did not click), or great traffic and zero visibility (visits arrive but you cannot see why). Operators who only buy one usually pick the wrong one for their bottleneck.

Which AI engines should I prioritize tracking first?

Start with whichever engine carries your buyer's category, not whichever has the largest aggregate user base. For B2B SaaS, ChatGPT (roughly 800 million weekly actives in mid-2026 per OpenAI) and Perplexity (highest-intent traffic in our data) are the first two. For developer tools, ChatGPT and Claude over-index because of the Claude Code workflow. For DTC ecommerce, Gemini and AI Overviews matter more because Google search still dominates retail intent. For research-heavy categories (legal, finance, consulting, academic), Perplexity over-indexes because of its citation-forward UI. Track all four eventually. Order them by buyer fit, not by reach. The ordering matters because each engine adds 10-20% to your tracking setup cost and operators that try to track all four on day one often ship none of them properly.

How much AI traffic does the average SMB SaaS get in 2026?

Across the 24 B2B SaaS sites in my Attrifast aggregate sample, median AI-attributed traffic share sits between 14% and 22% of total sessions, with ChatGPT contributing the largest single AI slice (typically 7-12%), followed by Perplexity (2-5%), Google AI Overviews citations (2-4%), Claude (1-3%), and Copilot plus the long tail (1-2%). Variance is wide. Developer-tools companies routinely show 25-35% AI traffic share. Local services and regulated healthcare show 2-7%. The number has roughly doubled year-over-year through 2024-2026 and the trajectory has not flattened in any cohort I track. If your reported AI traffic share is materially below 10% in 2026, the most likely explanation is attribution gap, not traffic gap.

Will GA4 ever add a built-in AI Engine channel?

Unknown as of mid-2026. Google has a structural conflict of interest, since adding a clean AI Engine bucket to GA4 would make the ChatGPT-versus-Google-organic comparison legible inside the tool a business uses to evaluate Google's own properties. There is no announced GA4 roadmap item for AI-engine channel grouping. The likeliest near-term path is that GA4 continues to require operator-side custom channel groups that catch only the 15-20% of AI clicks that arrive with a referer. The medium-term path is that third-party first-party analytics tools (Plausible, Fathom, Simple Analytics, Attrifast) build the AI-engine breakdown as a differentiator. The longest-term path is that AI clients standardize on a clean referer string, which OpenAI, Anthropic, and Google have shown no public commitment to. Plan for the third-party path.

Does Attrifast track all four AI engines?

Yes. Attrifast ships server-side referer fingerprinting plus behavioral inference for ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com, and Kagi, plus a dedicated detection rule for Google AI Overviews citation clicks. Each engine becomes its own line in the dashboard alongside Google organic, paid social, email, and the rest. The session-to-Stripe-revenue join is automatic on every checkout.session.completed webhook. The tracking script is 4 KB, cookieless, ships without a consent banner under most jurisdictions (verify per your privacy review), and the Stripe connection is OAuth. Setup is roughly two minutes. The pricing is $29/month for the SMB tier.

How long does it take to set up AI traffic analytics?

It depends on the depth you want. A custom channel group in GA4 takes about 15 minutes and catches the small slice of AI traffic that arrives with a referer. A server log grep script takes about 10 minutes and catches the same slice plus all bot crawls. A first-party JS tracker takes 1-2 hours to build from scratch or 5 minutes to install if you use Plausible or Fathom — but both stop at click counting and do not attach revenue. A full first-party stack with behavioral inference and Stripe revenue join takes 1-2 days to build custom or about 2 minutes to install if you use Attrifast. The decision is mostly about engineering time versus monthly cost, not capability — every layer above the GA4 custom channel group is solvable with off-the-shelf tools in 2026.

What is RPV (revenue per visitor) for AI traffic?

Across my Attrifast customer base in Q1 2026, median revenue per visitor by engine for B2B SaaS is: Perplexity $1.12, ChatGPT $0.84, Gemini and AI Overviews $0.71, Claude $0.67, Copilot $0.44. The Google organic baseline on the same sites is $0.51. So Perplexity converts at roughly 2.2x Google organic RPV and ChatGPT at roughly 1.6x. For DTC ecommerce the pattern inverts — Google organic RPV is higher because impulse buying favors Google, and AI traffic skews toward research-mode browsing. The B2B SaaS numbers above are the headline most operators care about because the AI premium is largest in that category. Re-measure quarterly; as ChatGPT's user mix broadens to more general consumers, the intent-quality premium will likely compress.

Can AI traffic analytics tools see what prompt the user asked?

No, almost never. The AI engines do not pass the user's original prompt as a query parameter on outbound clicks the way Google used to pass the search query in its referer (and stopped doing in 2011). The exceptions are Perplexity, which sometimes appends a thread URL that can be reverse-engineered, and ChatGPT's /share/ URLs that point to a public-shared answer where the prompt is visible if you click through. For most AI visits in 2026, the prompt is opaque from the receiving site's perspective. Visibility-tracking tools partially solve this by replaying prompts you supply, but that is a sampling approach, not a population view. The honest framing is: AI traffic analytics tells you the engine and the page; it does not tell you the question.

Related reading from the Attrifast research stack

For more on connected topics, see Marketing Attribution for Product-Led Growth (2026), How to Track AI Traffic Sources: The 2026 Operator Playbook, ChatGPT vs Perplexity for Business: Which AI Engine Drives More Revenue?, and Perplexity Shopping Attribution.

References

  1. OpenAI. "ChatGPT weekly active user announcements and usage research." 2024-2026. https://openai.com/index/introducing-chatgpt-search/
  2. Perplexity AI. "Company milestones and query volume disclosures." 2024-2026. https://www.perplexity.ai/hub/blog
  3. Anthropic. "Claude.ai user growth and feature announcements." 2024-2026. https://www.anthropic.com/news
  4. Search Engine Land. "Google AI Overviews coverage tracking, 2024-2026." https://searchengineland.com/library/google/google-ai-overviews
  5. Cloudflare Radar. "AI Insights and bot traffic dashboard." https://radar.cloudflare.com/ai-insights
  6. Google Analytics. "Default channel group definitions for GA4." https://support.google.com/analytics/answer/9756891
  7. Pew Research Center. "Americans' use of generative AI, 2024-2025." https://www.pewresearch.org/internet/
  8. StatCounter. "Search engine market share, desktop and mobile, US and worldwide." https://gs.statcounter.com/search-engine-market-share
  9. Profound. "Company blog and research." https://www.tryprofound.com/blog
  10. OpenAI. "Introducing ChatGPT search." October 31, 2024. https://openai.com/index/introducing-chatgpt-search/
  11. Stripe Docs. "Checkout Session metadata field." https://docs.stripe.com/api/checkout/sessions/object#checkout_session_object-metadata
  12. Reuters. "Reddit's data licensing deal with OpenAI." May 2024. https://www.reuters.com/technology/reddit-strikes-content-licensing-deal-with-openai-2024-05-16/
  13. OpenAI. "Overview of OpenAI's bots and how to control them." https://platform.openai.com/docs/bots
  14. Anthropic. "ClaudeBot crawler documentation." https://support.anthropic.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler
  15. Google Developers. "Google-Extended user agent for Vertex AI and Gemini training." https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers
  16. Backlinko. "How AI Overviews are affecting organic CTR." 2024. https://backlinko.com/ai-overviews-study
  17. Ahrefs. "Google search CTR by position, 2025 update." https://ahrefs.com/blog/google-search-ctr-2025/
  18. Semrush. "AI Overviews research: trigger patterns and citation density." Q4 2025. https://www.semrush.com/blog/ai-overviews-research/
  19. SimilarWeb. "AI chatbot and search traffic dashboards." https://www.similarweb.com/blog/insights/ai-news/
  20. SparkToro. "Zero-click search research and AI impact studies." https://sparktoro.com/blog/
  21. The Verge / OpenAI. "ChatGPT hits 1 billion daily messages." December 2024. https://www.theverge.com/2024/12/04/24313097/chatgpt-1-billion-messages-daily-openai
  22. Aggarwal et al. "GEO: Generative Engine Optimization." Princeton / Georgia Tech, 2024. https://arxiv.org/abs/2311.09735
  23. McKinsey. "The state of AI: Global survey on generative AI adoption." 2024-2025. https://www.mckinsey.com/capabilities/quantumblack/our-insights/the-state-of-ai
  24. Plausible Analytics. "How to track ChatGPT and AI search traffic." April 2024. https://plausible.io/blog/chatgpt-traffic
  25. Internet Live Stats. "Google search statistics." https://www.internetlivestats.com/google-search-statistics/

For the deep dive on ChatGPT specifically, the ChatGPT referral analytics guide walks the engine in detail. For the visibility-tracking side of the category, the AI visibility tracker multi-LLM comparison covers prompt replay and citation share. For the strategic framing on AEO vs SEO, AEO vs SEO in 2026 is the companion. For practical per-engine setup walk-throughs, see track ChatGPT traffic, track Perplexity traffic, track Claude traffic, track Gemini traffic, and track AI Overviews. For the GEO content tactics that produce the citations these analytics measure, the GEO tactics playbook for 2026 is the implementation reference. If you want the same revenue-attribution architecture for your own stack rather than rolling it yourself, the revenue attribution feature page and the Attrifast vs Google Analytics comparison walk the product side end to end.

Related reading

Find revenue hiding in your traffic

Discover which marketing channels bring customers so you can grow your business, fast.

Start free trial →

5-day free trial · $29/mo · cancel anytime