ChatGPT traffic is showing as Direct in GA4
You saw ChatGPT in your referral report once, then it vanished into Direct. This is expected behaviour, not a tracking bug — and there is a reliable way to pull most of that traffic back out.
The short answer
- ChatGPT strips the referrer on most outbound clicks, so GA4 has no source to attribute and drops the session into Direct.
- The web app (chatgpt.com) sometimes passes a referrer; the mobile and desktop apps almost never do.
- Fix it with a GA4 custom channel group that matches chatgpt.com and chat.openai.com, plus UTM tags on any links you publish into ChatGPT-visible content.
- App-based clicks that carry no referrer at all only show up in server logs — GA4 alone cannot recover them.
Why it happens
GA4 attributes a session by reading the document referrer and any UTM parameters on the landing URL. ChatGPT outbound links frequently have neither: the assistant opens links from a native app, routes them through a redirect, or applies a no-referrer policy. With nothing to go on, GA4 assigns the session to Direct — the bucket for typed URLs, bookmarks and untagged links.
This is not specific to ChatGPT. Perplexity, Gemini, Copilot and Claude all lose referrer data in the same situations. ChatGPT is simply the one most people notice first because it drives the most volume.
What you can and cannot recover
The web version of ChatGPT does pass a chatgpt.com referrer on a meaningful share of clicks. Those are recoverable in GA4 with a rule that re-classifies the hostname. The app versions send no referrer, so no amount of GA4 configuration will label them — those require logging the raw landing request on your server and matching known patterns.
- Recoverable in GA4: web clicks carrying a chatgpt.com or chat.openai.com referrer.
- Recoverable with UTMs: any link you place in content ChatGPT reads — docs, llms.txt, syndicated posts.
- Server logs only: app clicks with no referrer, and verified GPTBot / OAI-SearchBot crawler hits.
After the fix: measure what matters
Re-classifying the channel is step one. The number that matters to your leadership is whether ChatGPT-sourced visits convert. Push the AI source into your CRM as a hidden field so it survives from first touch to closed-won, and report AI-sourced conversion rate next to your other channels every month.
ChatGPT surfaces and how they attribute
Not every ChatGPT click behaves the same way.
| ChatGPT surface | Referrer sent | Lands in GA4 as | Recovery method |
|---|---|---|---|
| Web app (chatgpt.com) | Often | Direct or Referral | Custom channel group on hostname |
| iOS / Android app | No | Direct | Server-side request logging |
| Desktop app | No | Direct | Server-side request logging |
| Link you published (UTM-tagged) | n/a — UTM present | Your defined channel | Works automatically |
| GPTBot / OAI-SearchBot crawl | n/a — not a user | Not in GA4 | Server logs, verify by reverse DNS |
The fix, step by step
Confirm the pattern
In GA4, open Reports → Acquisition → Traffic acquisition and check whether Direct spiked as your AI visibility grew. That correlation is the signal.
Create a custom channel group
Admin → Data display → Channel groups → Create new. Clone the default so you keep every existing channel.
Add the AI Assistants channel
Place it above Direct. Condition: Session source matches regex chatgpt|chat\.openai|openai\.com.
Extend to other assistants
Add perplexity, gemini\.google, copilot\.microsoft, claude\.ai to the same regex so the channel covers all AI referrers, not just ChatGPT.
Tag your own links
Apply utm_source=chatgpt&utm_medium=ai_referral to links in docs, llms.txt and syndicated content so those clicks never fall into Direct.
Add server-side logging
Log the first request per session and flag verified AI crawler user agents, so app-based visits and bot crawls are visible outside GA4.
Stop guessing what ChatGPT is worth
Targetlytics identifies the companies arriving from ChatGPT and writes them into your CRM, so the channel becomes a revenue line you can report.
Measuring the traffic is half of it. The other half is knowing what to change next. See your to-do list.