{"slug": "how-to-measure-the-traffic-you-get-from-chatgpt-and-ai", "title": "How to Measure the Traffic You Get from ChatGPT and AI", "summary": "A guide from soamee.com lays out a five-layer method for measuring traffic and leads arriving from ChatGPT and other AI assistants, starting with a custom \"AI Assistants\" channel group in GA4 that matches session source against the regex chatgpt|openai|perplexity|gemini\\.google|copilot|claude\\.ai|deepseek|mistral. The guide notes GA4 by default files chatgpt.com visits under the Referral channel, that ChatGPT appends utm_source=chatgpt.com to links in its search answers, and that AI agents such as OpenAI's GPTBot and OAI-SearchBot never run JavaScript so they appear only in server logs. It adds that Search Console offers no filter to separate AI Overviews traffic, and that the remaining layers are a landing-page report, a monthly mentions panel, and the share of AI traffic that arrives as direct visits.", "body_md": "The Search Console for soamee.com shows searches that are not keywords but entire questions. One from a recent week, in German: *“kann man messen, wie viel traffic und wie viele leads über chatgpt und andere ki-assistenten auf die eigene website kommen? wie richtet man das ein?”*. Twenty-five words typed into Google to ask how to measure what comes in from ChatGPT.\n\nIt can be measured, though not all of it. This guide builds the measurement in five layers: a dedicated channel in GA4, a landing page report, server logs, a monthly mentions panel, and the share that arrives as direct traffic. If you don’t know what GEO is yet, start with [our guide to appearing in AI search](https://soamee.com/en/blog/en-geo-how-to-appear-in-ai-search).\n\n## What you can measure and what you can’t\n\n| Source | What you see | What slips through | \n|---|---|---|\n| **GA4** | Sessions with a referrer from chatgpt.com, perplexity.ai, gemini.google.com… and what they do next | Visits without a referrer (apps, copy and paste) | \n| **Server logs** | Which URLs the AI agents request, and when | What the assistant told the user | \n| **Mentions panel** | Whether you appear when someone asks about your category, and next to whom | The questions you didn’t anticipate | \n| **Search Console** | Impressions and clicks on Google, AI Overviews included | Which share comes from AI Overviews: there is no filter | \n| **Form** | What the lead reports | Everyone who skips the field | \n\nNo single source is enough. Together they give you a number you can defend.\n\n## 1. An AI channel in GA4\n\nBy default, GA4 puts visits from chatgpt.com in the *Referral* channel, mixed in with links from blogs, directories and partners. You need to pull them out into a channel of their own.\n\n1. **Admin > Data display > Channel groups > Create new channel group.** GA4 copies the default group; work on that copy.\n2. **Add new channel** , named*AI Assistants* .\n3. Condition: **Session source** ·**partially matches regex** :\n\n```\nchatgpt|openai|perplexity|gemini\\.google|copilot|claude\\.ai|deepseek|mistral\n```\n\n1. **Reorder** so that*AI Assistants* sits above*Referral* . GA4 assigns each session to the first channel whose condition it meets; if*Referral* comes first, it takes everything.\n2. Save.\n\nTwo details that save time. Custom channel groups also apply to historical data, so you see the trend from day one without waiting. And ChatGPT adds `utm_source=chatgpt.com` to the links it shows in its search answers, so those visits are attributed correctly even when the browser sends no referrer.\n\nReview the source list every few months. New assistants appear and some change domain: OpenAI’s moved from chat.openai.com to chatgpt.com.\n\n## 2. Which pages bring you that traffic\n\nWith the channel in place, open **Explore > Free form exploration**:\n\n- Dimensions: *Custom channel group* ,*Landing page*\n- Metrics: *Sessions* ,*Engaged sessions* ,*Key events*\n- Filter: channel = *AI Assistants*\n\nThe list of landing pages is, in practice, the list of URLs that assistants cite and that someone clicks. It usually looks little like your top organic pages: comparisons, pricing pages and guides with concrete data carry more weight.\n\nLook at key events too. If AI traffic converts better than organic, which is common because it arrives with the recommendation already made, you want to know that before deciding which content to invest in. If your GA4 doesn’t record reliable conversions, fix that first: [how to implement GA4 with events and conversions](https://soamee.com/en/blog/en-how-to-implement-ga4).\n\n## 3. Server logs: what GA4 can’t see\n\nGA4 only counts visits that run JavaScript. AI agents don’t run it, so as far as GA4 is concerned they don’t exist. They do show up in your web server logs, with a piece of data no other source gives you: which URL each agent requested, and when.\n\nNot every agent means the same thing:\n\n| User-agent | Company | Purpose | \n|---|---|---|\n| `GPTBot` | OpenAI | Crawling for training | \n| `OAI-SearchBot` | OpenAI | ChatGPT search index | \n| `ChatGPT-User` | OpenAI | A person asked ChatGPT something and it opens your page | \n| `ClaudeBot` | Anthropic | Crawling for training | \n| `Claude-User` | Anthropic | Request made during a conversation | \n| `PerplexityBot` | Perplexity | Search index | \n| `Perplexity-User` | Perplexity | Request made during a conversation | \n\nThe `-User` rows are the ones that matter for measurement. If `ChatGPT-User` requests your pricing page, someone was asking ChatGPT about pricing in your sector at that moment. It’s the closest thing to a citation you can record.\n\nWith the standard nginx or Apache log format, this command pulls the URLs those agents request most:\n\n```\ngrep -E \"ChatGPT-User|Perplexity-User|Claude-User\" access.log \\\n  | awk '{print $7}' | sort | uniq -c | sort -rn | head -20\n```\n\nOn Dokku, where we deploy soamee.com, each app writes its log to `/var/log/nginx/<app>-access.log`. On Vercel, Netlify or behind Cloudflare you have to enable log export, and on some plans it costs extra.\n\nTwo caveats. The user-agent can be spoofed: if a number is going to end up in a report, cross-check the IPs against the ranges OpenAI and Perplexity publish. And no visits doesn’t mean nobody cites you, because an assistant can answer from what it already has in its index without requesting the page again.\n\n## 4. A monthly mentions panel\n\nNeither GA4 nor the logs tell you whether you appear when someone asks about your category and doesn’t click. For that, you have to ask.\n\nSet up a spreadsheet with 20-30 questions your customer would ask before buying. Not the ones you’d like them to ask: the ones that come up in sales calls, in the contact form and in Search Console. Once a month, run them through ChatGPT, Perplexity, Gemini and Copilot in a session with no history and write down:\n\n- **Date, assistant and question**\n- **Do you appear?** Yes or no\n- **Position** , if the answer is a list\n- **Competitors cited**\n- **Linked sources** : this column generates the most work, because it tells you where you need to be\n\nAnswers vary from one run to the next. Run each question two or three times and count the percentage of answers you appear in. That percentage, month over month, is the metric. There are paid tools that automate this; with fewer than 50 questions, the spreadsheet does the job.\n\n## 5. Search Console: what it tells you and what it doesn’t\n\nGoogle counts AI Overviews impressions and clicks within normal web performance, with no filter to separate them. You can’t tell which share of an impression came from an AI Overview.\n\nWhat Search Console does give you is two indirect signals:\n\n- **Queries shaped like long questions.** Like the German one at the top. A regex filter (`^(how|what|which|why|how much)\\b` or queries longer than eight words) shows you which questions reach Google written as if they were meant for an assistant.\n- **Branded searches.** Someone who reads your name in a ChatGPT answer and then searches for it on Google shows up here as a branded search. If branded searches rise without campaigns to explain it, part of the rise usually comes from there.\n\n## 6. Traffic that arrives as direct\n\nSome AI-influenced visits leave no trace at all: links opened from the assistants’ mobile apps, copied and pasted URLs, or someone who notes down the name and visits days later.\n\nWhat works here is asking. Add a “How did you hear about us?” field to your contact form with an explicit option: *ChatGPT or another AI assistant*. A dropdown gives cleaner data than a free-text field, and the explicit option matters: if it isn’t there, people pick “Google” because it’s the closest match.\n\n## Checklist\n\n-  *AI Assistants* channel in GA4, placed above*Referral*\n- Landing page and key events exploration filtered by that channel\n-  Server logs accessible, with a monthly query for `ChatGPT-User` ,`Perplexity-User` and`Claude-User`\n- Sheet of 20-30 questions, run every month across four assistants\n- Tracking of branded searches and question-shaped queries in Search Console\n- “ChatGPT or another AI assistant” option in the contact form\n\nWith these six pieces you can say how many people arrive from an assistant, on which pages, and which assistants cite you, and separate what is data from what is an estimate. It’s what we set up for clients as part of our [AI search optimization (GEO) service](https://soamee.com/en/services/generative-engine-optimization).", "url": "https://wpnews.pro/news/how-to-measure-the-traffic-you-get-from-chatgpt-and-ai", "canonical_source": "https://soamee.com/blog/en-measure-chatgpt-ai-traffic-ga4/", "published_at": "2026-10-01 00:00:00+00:00", "updated_at": "2026-10-01 11:18:17.422694+00:00", "lang": "en", "topics": ["generative-engine-optimization", "ai-search", "ai-crawlers"], "entities": ["soamee.com", "GA4", "ChatGPT", "OpenAI", "GPTBot", "OAI-SearchBot", "Google Search Console", "Perplexity"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/how-to-measure-the-traffic-you-get-from-chatgpt-and-ai", "markdown": "https://wpnews.pro/news/how-to-measure-the-traffic-you-get-from-chatgpt-and-ai.md", "text": "https://wpnews.pro/news/how-to-measure-the-traffic-you-get-from-chatgpt-and-ai.txt", "jsonld": "https://wpnews.pro/news/how-to-measure-the-traffic-you-get-from-chatgpt-and-ai.jsonld"}}