Clicktag ChatGPT referrals
utm_source=chatgpt.com: what it means in your analytics
Clicktag tracks utm_source=chatgpt.com visits for free, showing which pages ChatGPT sends people to and whether they convert across up to 50 goals. One 4 KB script, no cookies, no credit card, and up to 50 websites per account.
When someone clicks a link to your site inside ChatGPT, the URL carries utm_source=chatgpt.com, which ChatGPT adds to the links it shows. That query parameter tells your analytics tool the visitor came from ChatGPT, even when the browser or mobile app strips the HTTP referrer header. In Clicktag, those visits show up under the chatgpt.com source right away because Clicktag checks utm_source before anything else.
Why ChatGPT adds utm_source=chatgpt.com to links
ChatGPT tags the links it shows with utm_source=chatgpt.com. Without a query parameter on the URL, clicks from native apps or links that strip the Referer header arrive with no source information at all.
Because the tag lives in the URL itself, any analytics tool that reads standard UTM parameters can credit the visit to chatgpt.com.
Where utm_source=chatgpt.com shows up in Clicktag and GA4
In Google Analytics 4, a May 13, 2026 release added an "AI Assistant" default channel for users who arrive "from sources like ChatGPT, Gemini, Deepseek, Copilot, or Grok". Its rule matches the medium ai-assistant, and the campaign is set to (ai-assistant). Google says the channel excludes Google's AI Overviews and AI Mode, and that GA4 processing can take 24-48 hours.
In Clicktag, hits appear in the live view within about a second. Clicktag determines a visit's source in this order:
- The
utm_sourcequery parameter. - The
sourceorrefquery parameter. - The referring hostname from the browser.
Because utm_source comes first, every click carrying utm_source=chatgpt.com is grouped under chatgpt.com in your Sources report and your UTM source report. The live demo shows these reports with synthetic sample data.
How AI assistants are detected in Clicktag
ChatGPT tags its links. For assistants that add no utm_source, source or ref parameter, Clicktag uses the referrer the browser sends.
| Assistant | How it's identified | Shown in Clicktag as |
|---|---|---|
| ChatGPT | Adds utm_source=chatgpt.com to links it shows |
chatgpt.com |
| Perplexity | The referrer, when the browser sends one | Its referrer domain |
| Claude | The referrer, when the browser sends one | Its referrer domain |
| Gemini | The referrer, when the browser sends one | gemini.google.com |
| Microsoft Copilot | The referrer, when the browser sends one | Its referrer domain |
| Google AI Overviews | A Google search referrer | google.com |
In Clicktag, all Google search domains are grouped under google.com, so clicks from Google AI Overviews count as google.com while gemini.google.com stays separate. You can read more on our AI traffic analytics page.
Why some ChatGPT visits still land in Direct
Not every visit from an AI tool arrives with utm_source=chatgpt.com or a referrer header. A visit from ChatGPT or another AI assistant lands in Direct / none (or (direct) with medium (not set) or (none) in GA4) when:
- Someone types a URL they saw in a ChatGPT answer into their address bar.
- Someone clicks a link inside an AI app that sends neither a referrer nor a UTM parameter.
- A redirect on your server drops the query string, and the click carried no referrer either.
Keep your redirects from stripping the parameter
If ChatGPT links to http://example.com/pricing?utm_source=chatgpt.com and your server redirects to https://www.example.com/pricing without passing the query string through, the browser loads the final page with no utm_source parameter. By the time your analytics script runs in the browser, the tag is gone.
If a server redirect drops the query string before
latest.jsloads, autm_source=chatgpt.comvisit loses its tag and may be counted asDirect / none.
Check these common redirect paths on your site:
- HTTP to HTTPS redirects.
- Apex domain (
example.com) towwwredirects, or the reverse. - Trailing-slash redirects (such as
/blog/post/to/blog/post). - Short links or marketing vanity URLs that forward to a destination page.
Make sure each redirect rule preserves existing query parameters so utm_source=chatgpt.com reaches the page where latest.js runs.
See which pages ChatGPT sends traffic to and whether they convert
Counting clicks from chatgpt.com is only half the picture. In Clicktag, you can filter your reports by utm_source or source (with up to 12 filters at once) to see:
- Which entry pages
chatgpt.comvisitors land on first. - Their median time on page (calculated from pageview durations of 5 seconds or more).
To see whether ChatGPT visitors sign up or take action, set up goal tracking. Clicktag lets you configure up to 50 goals per site, including 2-to-6-step funnels completed on the same UTC day. A goal can be a pageview (like /welcome) or a custom event sent with window.tt_event(name, metadata, callback) or a JSON POST to /events.
Once you add a goal, break it down by referrer or entry page to compare chatgpt.com conversion rates directly against google.com. Goals are computed from data you already collected, so adding a new goal covers your past ChatGPT traffic right away.
If you also want to see when OpenAI's bots (GPTBot, OAI-SearchBot and ChatGPT-User) fetch your raw HTML without running JavaScript, connect a read-only Cloudflare token under Integrations in your site's settings, and AI crawler analytics shows them on the Crawlers tab. Clicktag imports 30 days of Cloudflare data on connect and syncs every 15 minutes.
How to set up Clicktag
Clicktag is free, with no credit card required and up to 50 websites per account. Sign in with a Google account at clicktag.app, go to Site settings > Installation, and copy your ~4 KB script tag into your HTML:
<script
async
src="https://clicktag.io/latest.js"
data-hostname="example.com"
data-verify="YOUR_SITE_VERIFY_TOKEN"
></script>
The tag verifies your site when it appears in the homepage HTML your server sends (or you can verify with a DNS TXT record or a file under /.well-known/). It sets no cookies, uses no local storage, never stores IP addresses, and tracks single-page app navigation through pushState and popstate automatically.
FAQ
What does utm_source=chatgpt.com mean in my URLs?
It usually means a visitor clicked a link to your site inside ChatGPT. ChatGPT adds utm_source=chatgpt.com to the links it shows, so analytics tools can credit the visit to ChatGPT.
Which UTM parameters does Clicktag report for ChatGPT visits?
Clicktag credits ChatGPT visits through utm_source=chatgpt.com. It also reports utm_medium and utm_campaign when a URL has them, while utm_term and utm_content are not report dimensions in Clicktag.
Does utm_source=chatgpt.com track OpenAI crawlers like GPTBot?
No, utm_source=chatgpt.com only appears when a human clicks a link in ChatGPT and loads your page in a browser. AI crawlers like GPTBot, OAI-SearchBot and ChatGPT-User fetch raw HTML without running JavaScript; to see them in Clicktag, connect a read-only Cloudflare token under Integrations in your site's settings (the site must be verified and proxied through Cloudflare, on any plan including Free).
Can I track e-commerce revenue from ChatGPT in Clicktag?
Clicktag tracks conversions, converted visitors, conversion rates and 2-to-6-step funnels across up to 50 goals per site, broken down by source. It does not track revenue or e-commerce order values, and it does not offer session recordings, heatmaps or bounce rate.
Can Clicktag import my past Google Analytics data?
No, Clicktag does not support Google Analytics imports or CSV uploads. You can import historical data from Simple Analytics, and you can connect Google Search Console to backfill up to 16 months of search clicks, impressions, CTR, position and queries.
Updated October 30, 2026