Reading time:
10 min read
Last updated:
How to Track ChatGPT Traffic to Your Website
Track ChatGPT traffic in Google Analytics with a custom AI channel group in GA4, then catch the visits filed as Direct with one question on your form.
To track ChatGPT traffic in Google Analytics, create a custom channel group in GA4 with an AI assistants channel that matches the session source against a short list of AI domains, then move it above Referral. That catches every visit that arrives with a chatgpt.com referrer or the utm_source=chatgpt.com tag. It will still miss the visits that arrive with neither, which GA4 files as Direct, so add one free-text question to your signup or demo form asking where people heard about you.
The reason to do both is that the report and the truth have drifted apart. A buyer who asked an assistant about your category reaches your site already told what you are, and often lands on a deep page rather than the homepage. If your dashboard counts only the visits that kept their label, it shows you a floor and calls it the total. Decisions about which pages to fix, and where the next quarter goes, get made from that floor.
Three demo calls, one report that says 38
Picture a seed-stage AI contract review tool. In September the founder runs eleven demo calls, and on three of them the buyer opens the same way: they asked ChatGPT for a tool that checks NDAs, and this one came up. He notices because it never used to happen.
After the third call he opens GA4. Reports, then Acquisition, then Traffic acquisition, with the table set to Session source / medium for the last four weeks. The row chatgpt.com / referral shows 38 sessions. The row (direct) / (none) shows 2,400. Further down, the new AI Assistant channel shows 41. Nothing on the screen connects the three calls to any of those rows.
So he does the reasonable thing with the evidence in front of him. The monthly investor update gets a line that says AI search is still negligible for us. When his cofounder suggests writing a page for the NDA question buyers keep asking, he points at the 38 and the idea goes to the bottom of the list. The homepage headline, which he can see and measure, gets its third rewrite of the quarter instead.
He knows his product better than anyone. What he cannot see is how strangers now find it, because the path runs through a conversation he was not part of and a click that arrived with no name on it.
Why a ChatGPT click can arrive with no name on it
GA4 only knows where a visit came from if the visit tells it. Google defines Direct as users arriving via a saved link or by entering your URL, and in practice that means any session with no referrer and no campaign tag. A click from an AI answer can lose its referrer in several ordinary ways: the referrer policy on the linking page, a noreferrer attribute on the link, the in-app browser inside a mobile app, or a person copying your name into a new tab.
The tag helps. ChatGPT appends utm_source=chatgpt.com to most of the links it cites, and in June 2025 it started tagging the links in its More sources list as well, not only the inline citations. A tag lives in the address itself, so it survives when the referrer is stripped. In one analytics vendor's 30-day snapshot, 35.7 percent of recognised AI search sessions had no referrer at all and were identified only because the tag was still there.
Two gaps remain. A tag that carries a source but no medium may not match any default rule, and Google files those sessions as Unassigned, the value used when no channel rule matches. And a buyer who reads an answer, then types your domain an hour later, carries no tag and no referrer. That visit is Direct by definition. No regex will ever recover it.
What the built-in AI Assistant channel leaves out
GA4 now ships an AI Assistant channel in its default channel group. Google's own definition says it covers users arriving from sources like ChatGPT, Gemini, Deepseek, Copilot, or Grok, matched either by a medium of ai-assistant or by a referrer on Google's list. That is useful, and it is the reason the founder in the example saw a row reading 41.
It is also narrower than it looks. Claude and Perplexity are not on that named list. The rule leans on the referrer, which is exactly the signal that goes missing most often. And it lives inside the default group, so you cannot add a source to it when a new assistant starts sending you buyers. Use it as a cross-check, and keep a channel group you control.
Build your own AI channel group this week
This takes about ten minutes and needs editor access to the property. Before you start, check the exact strings your own property records, because assistants change how they link.
Open Reports, Acquisition, Traffic acquisition, set the date range to the last three months, and switch the table to Session source. Type gpt, openai, perplexity, claude, gemini and copilot into the search box one at a time. Write down every source string that appears.
Go to Admin, then Data display, then Channel groups. Copy the default channel group so the existing rules come with it, and name the copy AI split.
Add a new channel called AI assistants. Set the condition to Session source matches regex, and paste a pattern built from your list, for example chatgpt\.com|openai|perplexity|claude\.ai|gemini\.google|copilot|deepseek|grok. Add a second condition joined with OR: Session medium exactly matches ai-assistant.
Drag AI assistants above Referral and above Unassigned, then save. Rules run top to bottom, so an AI session that reaches Referral first will be counted there.
Back in Traffic acquisition, change the primary dimension to your new group. Set up a monthly reminder to repeat the first step and add any new source string to the pattern.
What you now have is a better floor. It counts every visit that kept either its referrer or its tag. It still counts nothing that arrived bare, which is why the next two steps matter more than a longer regex.
The Direct visits that land on page four of the blog
Nobody bookmarks a comparison article or types the address of a blog post from memory. So look at where your Direct traffic lands. Open Engagement, then Landing page, add a filter for Session default channel group equals Direct, and sort by new users.
In the example, most Direct sessions land on the homepage, which is what Direct is supposed to look like. But a few hundred land on /blog/nda-review-checklist, the pricing page and a page comparing three review tools. Those are the same pages the tagged chatgpt.com sessions land on. That overlap is the evidence. It does not prove every one of those visits came from an assistant, and you should never report it as if it did. It tells you the floor is low, and roughly by how much.
It also tells you which pages are doing the work. An AI visitor arrives on a deep page with a summary of you already in their head, and decides in a few seconds whether the page matches it. If the comparison page is a thin list with no product screenshot, the visitor reads the company as smaller than the assistant described. That page deserves the attention the homepage has been getting, and the general conversion benchmarks for SaaS websites apply to it just as much.
One question on the form beats a longer regex
Analytics measures clicks. What you want to know is how buyers found you, and the only party who knows that is the buyer. So ask them. Add one field to the demo form and the signup flow: How did you hear about us? Make it free text, not a dropdown. A dropdown with an option labelled Search will absorb every AI answer, because that is what it felt like to the person asking.
Make it required on the demo form, where people expect a few questions, and optional at signup, where every field costs completions. Once a week, read the answers and tag each one: AI assistant, search, a person, a community, other. In the example, after a month the form shows 9 of 31 demo requests naming ChatGPT, Claude or Perplexity. The report still says 38 sessions. Both are true. Only one of them is about revenue.
Report the two side by side every month: AI sessions from your channel group as the floor, and the share of demo requests or signups that name an assistant as the answer to the question you actually care about. When they disagree, trust the form for decisions and the channel group for trends.
Most advice stops at the regex, and that is the mistake
Nearly every guide to this topic ends with a pattern to paste into GA4, as if a clean channel row were the finish line. It is not. A regex can only sort visits that still carry a label, and the label is exactly what AI clicks lose. A dashboard that shows the labelled share as the whole share is worse than no dashboard, because it looks finished. It is the same trap as reading impressions with no clicks as a page that failed: the number is real, and it is answering a different question.
The cost is not the misreport itself. It is what gets funded from it. In the example, the founder spent the quarter on a homepage most AI visitors never see, while the pages they did land on stayed as they were. Those visitors are worth keeping. The same vendor snapshot found that on sites with goals set up, 20.7 percent of AI search sessions completed a goal, against 11.1 percent of Direct sessions. That is one vendor's sample, not a law, but it points the same way as the three demo calls.
If you are early, the rule is simple. Count what you can label, ask about what you cannot, and spend design time on the pages the answers point to. Our guide to AI startup websites covers what those pages need to say.
Studio Maydit is a web and product design studio for AI founders in the US, UK and Europe. We build in Framer, Webflow and custom code, and a lot of our AI website design work now starts on the deep pages a buyer reaches from an assistant: the comparison page, the pricing page, the article that answered their question. We make sure the company on that page looks like the one the buyer was just told about, in a fixed scope of three to four weeks. If your form says AI and your report says negligible, book a 30-minute call with Studio Maydit.
Frequently Asked Questions
Continue Reading

ChatGPT Is Introducing Ads. Here’s the UX Risk Nobody Is Talking About
As ChatGPT prepares to introduce ads, most conversations focus on revenue and scale. But the bigger question is how monetization reshapes user trust, cognitive flow, and product intent. This Studio Notes piece explores the hidden UX risks product teams should pay close attention to.

Siddarth Ponangi

Why designing for power users too early breaks SaaS products
Many SaaS products become difficult to use not because they lack features, but because they introduce complexity before users are ready for it. Designing for power users too early often feels like progress, but it quietly undermines adoption for everyone else.

Siddarth Ponangi

Why second-use experience matters more than first impressions in SaaS
Many SaaS products spend enormous effort optimizing first impressions. What often gets overlooked is what happens when users come back for the second time, which is usually where real adoption either starts or quietly falls apart.

Siddarth Ponangi

