Did your ChatGPT numbers in GA4 drop sharply in the second week of October, while Direct traffic rose by about the same amount? If so, you almost certainly did not lose those visitors. The fall in chatgpt traffic in GA4, with matching gains in direct, came from a tracking break. Links in ChatGPT answers stopped carrying the utm_source=chatgpt.com tag. They often opened without a referrer too (the browser’s note saying which site sent the visitor). So GA4 had nothing to credit them to.
The tag started coming back on 15 October. The referrer problem has not gone away, and some AI traffic was always going to land in Direct. In this guide I explain what happened, how I check the data, and what you can and cannot repair.
What Happened to ChatGPT Referrals in October 2026
Here is the timeline as it stands on 16 October. It is pieced together from site owners’ data and from analysts who reported the issue in public.
- 7 and 8 October: OpenAI rolled GPT-6 into ChatGPT, first for paid plans and then for free plans.
- 8 and 9 October: ChatGPT sessions began falling on many sites. In several shared datasets the ChatGPT line roughly halved, while total traffic stayed flat and Direct rose.
- 13 and 14 October: The pattern was widely reported. Analysts found that many links in ChatGPT answers no longer carried
utm_source=chatgpt.com. They were also opened in a way that removed the referrer. - 14 October: OpenAI reportedly confirmed to an industry analyst that the missing tag was a bug, with a fix expected that week. OpenAI has made no public announcement.
- 15 October: A fix began rolling out. Early data shows tagged ChatGPT clicks going back to normal levels.
Two points matter for your reports. First, the fix only affects new clicks. Visits logged as Direct between about 8 and 15 October stay that way. Second, the fix brought back the UTM tag, not the referrer. Many ChatGPT clicks still arrive with no referrer at all.
The cause has not been officially explained. The main theory is that links in the new interface were opened with noopener and noreferrer settings. These tell the browser not to pass on where the visitor came from. Treat that as a likely cause, not a confirmed one.
Why ChatGPT Traffic Shows as Direct in GA4
GA4 decides where a session came from using two signals. One is campaign tags in the landing URL. The other is the referrer the browser sends. When both are missing, the session goes into Direct. Google defines Direct as visits that arrive “via a saved link or by entering your URL”. In practice, it is the bucket for anything GA4 cannot identify.
The October bug removed both signals at once. That is why the shift was so clean. But AI traffic was leaking into Direct before October, and it still is. These are the main reasons.
App Traffic Often Carries No Referrer
A large share of ChatGPT use happens in the mobile and desktop apps, not in a browser tab. When someone taps a link in an app, it opens in an in-app browser or hands off to the system browser. Many of these handoffs pass no referrer.
If the link still has utm_source=chatgpt.com, GA4 can read the source from the URL. If it does not, the visit looks the same as someone typing your address.
Referrer Policies Strip the Source
Websites and apps can tell browsers to hide the referrer. They do this with rel="noreferrer" on links, or a noreferrer setting when opening a new window. That is a privacy choice on the linking side, and you have no control over it. It is the most likely cause of the October drop.
Copy-Paste and Typed Visits
People often copy a URL out of a chat and paste it into a browser. Or they read a brand name in an answer and type it in later. A pasted URL keeps its UTM tag only if the person copied the full tagged link. A typed address never has one. Both end up in Direct, or in Organic Search if the person searched for you by name.
Your Own Site Can Drop the Tag
Some losses happen on your side. Redirects that throw away the query string (the part of the URL after the ?) remove utm_source before GA4 fires. Common examples are an HTTP-to-HTTPS rule, a trailing-slash redirect or a language redirect. Consent banners that delay tagging until after a redirect can do the same.
Click a tagged link to your own site and check that the tag is still in the final URL. If it is not, fix that first. No amount of analysis will recover a tag your server throws away. This is always the first thing I test, because it is quick and it rules out your own setup.
How GA4’s AI Assistant Channel Decides What Counts
GA4’s default channel group has an AI Assistant channel. It covers sources such as ChatGPT, Gemini, DeepSeek, Copilot and Grok. According to Google’s default channel group definitions, a session lands there when the medium is exactly ai-assistant, or when the referrer matches Google’s list of AI assistants. Google’s AI Overviews and AI Mode are left out and count as Organic Search.
That has two results. Without a referrer, a ChatGPT visit cannot match the list. And a visit with only utm_source=chatgpt.com may show the right source but sit in a different channel. So when you dig in, look at the Session source dimension as well as the channel. Do not assume the AI Assistant figure is the whole picture. I always treat it as a floor, not a total.
If you set up AI tracking earlier this year, our guide to tracking visits from ChatGPT, Perplexity and Gemini in GA4 covers the basic reports and filters.
How to Diagnose Hidden ChatGPT Traffic
You cannot pull single visits out of Direct. But you can measure how big the hidden share is and which pages it affects. Work through these checks in order.
1. Compare ChatGPT and Direct on the Same Chart
In GA4, open Reports, then Acquisition, then Traffic acquisition. Set the date range from late September to today. Add a comparison or filter for Session source containing chatgpt, and another for the Direct channel.
Did ChatGPT fall from around 8 or 9 October while Direct rose by a similar daily amount? And did both move back after 15 October? Then you are looking at the tracking bug, not a real drop in visibility.
2. Look for Direct Traffic on Pages Nobody Bookmarks
Real Direct traffic tends to land on your homepage, login page or a few well-known URLs. AI traffic lands on deep pages: a comparison article, a pricing page, a specific how-to guide.
Build a free-form exploration with Landing page as the row, Session default channel group as the column, and Sessions as the value. Compare the week of 9 to 15 October with the two weeks before. Pages that normally get most of their traffic from ChatGPT, and suddenly gained Direct, are your strongest proof. Our article on GA4 explorations every SEO should build shows how to set up this kind of report.
Add Device category as a second breakdown. A rise in mobile Direct on deep pages fits the app-traffic explanation.
3. Check Engagement Patterns
Visitors from an AI answer often behave differently from people who type your URL. They are usually new users. They land on the exact page that answers their question, and many read and leave. Do your new Direct sessions on deep pages look like your September ChatGPT sessions on new-user share and engagement? If so, that supports the same conclusion.
4. Use Server Logs to See What ChatGPT Fetched
Your server logs show something GA4 cannot. When a ChatGPT user asks a question that needs live information, ChatGPT may fetch pages using the ChatGPT-User user agent (the name a bot sends with each request). OpenAI’s crawler documentation says this agent acts on user requests rather than crawling on its own. It also publishes its IP ranges so you can confirm requests are real.
Filter your access logs for ChatGPT-User and count requests by URL:
grep "ChatGPT-User" access.log
| awk '{print $7}'
| sort | uniq -c | sort -rn | head -50
This tells you which pages ChatGPT is reading for its users. A fetch is not a visit, because the person may never click through. But say a page has steady ChatGPT-User fetches, and its GA4 ChatGPT sessions dropped while Direct rose. Then the link is clear. In my experience, logs are the most underused source in this whole check. For a fuller method, see our beginner’s guide to log file analysis.
Keep ChatGPT-User separate from OAI-SearchBot, which indexes pages for ChatGPT search, and GPTBot, which collects training data. They answer different questions.
5. Confirm the Tag Is Back on Your Site
Search for one of your pages in ChatGPT. Click a cited link from both the web version and the app, and check the final URL in the browser. If utm_source=chatgpt.com is there, the fix has reached you. Then check GA4 Realtime to see the session appear with that source.
Fixes and Workarounds That Help
None of these brings back the referrer. But together they shrink the blind spot and stop it from skewing decisions.
Annotate the Affected Dates
Add a note in GA4 for 8 to 15 October explaining that ChatGPT clicks were wrongly counted as Direct. Do the same in Looker Studio dashboards and client reports. Anyone comparing October with September, or with next year, needs to know why the line dips. I’d do this today, before anyone forgets why it happened.
Build a Custom Channel Group for AI Traffic
GA4’s default AI Assistant channel relies on Google’s list and the referrer. A custom channel group lets you set your own rule. For example, Session source matching a regular expression (a text pattern) such as chatgpt|openai|perplexity|gemini|copilot|claude, placed above Referral and Direct in the order.
- Go to Admin, then Data display, then Channel groups.
- Copy the default channel group and give it a clear name.
- Add a channel called AI Traffic with a Source condition using your regular expression.
- Drag it above Referral, Direct and Unassigned, because GA4 assigns traffic to the first channel that matches.
- Save, then switch reports to the new group.
Google says custom channel groups apply to reports retroactively, so the new grouping also works on past data. It will not rescue the 8 to 15 October sessions, though, because those arrived with no source at all. Standard properties can have two custom groups, so plan before you create one.
Tag the Links You Control
You cannot add tags to links ChatGPT writes. But you can tag links you put in front of AI users yourself. Think links in custom GPTs, ChatGPT ads, app listings or AI-facing product feeds. Use the same naming rules every time so these sessions never fall into Direct. Our UTM naming system for SEO and AI referrals sets out one approach.
Ask People How They Found You
Add a “How did you hear about us?” field to lead forms and checkout, with an option for ChatGPT or another AI assistant. Self-reported data is not perfect. But it captures the copy-paste and typed visits that no analytics tool will ever credit. I think this simple field is worth more than most people expect.
Estimate the Hidden Share, Then Report It as an Estimate
Take your normal Direct baseline for a page. Treat the extra on AI-heavy pages as a likely AI share. Show it as a range, separate from measured ChatGPT traffic, and explain the method. That is more honest than ignoring it, or quietly adding it to the ChatGPT number.
What You Cannot Fix
Some of this is outside your control. It is better to say so in reports than to promise precision you cannot deliver.
- The outage week stays in Direct. GA4 does not reprocess past sessions, and no hidden field holds the original source.
- Missing referrers are ChatGPT’s decision. If links open without a referrer, only OpenAI can change that. The UTM tag is now the main signal, and it depends on OpenAI still adding it.
- Untagged app clicks look like Direct. When neither a tag nor a referrer comes through, nothing in GA4 can tell the visit apart.
- Delayed visits are invisible. Someone who reads about you in an answer and visits next week by typing your name will show as Direct or Organic Search.
- Fetches are not visits. Server logs show ChatGPT reading your pages, not people clicking. Use them as supporting proof, not as a traffic count.
The practical answer is to treat measured ChatGPT sessions as a minimum, and report trends rather than exact totals. The same thinking applies to other AI tools. Our piece on measuring SEO value when fewer people click covers how to explain that to stakeholders.
What to Do This Week
The fix started rolling out on 15 October, so your ChatGPT line should recover over the coming days. Watch it against the September baseline. If it does not come back on your site, test a tagged link yourself. Check whether your redirects are dropping the tag before you blame ChatGPT.
Keep a close eye on referrer data too. The tag has returned, but the referrer has not reliably followed. Any report that relies on the referrer alone will keep undercounting.
Conclusion
When ChatGPT traffic shows as Direct in GA4, the visits are usually still there, just without a label. The October bug made that obvious for a week. But app handoffs, stripped referrers and copy-paste visits push AI traffic into Direct all the time.
Mark the outage dates. Check Session source rather than relying only on the AI Assistant channel. Set up a custom channel group. Then use landing page patterns and ChatGPT-User log entries to size what GA4 misses. My next step would be to review your tagging so every link you control arrives labelled. Start with our UTM tracking guide.



