To track visits associated with ChatGPT in GA4, inspect session source and medium, identify the source values present in your property, and review the landing pages and meaningful events connected to those sessions. Keep the source list explicit and validate the report before using it to make a business claim.
This measures recorded website activity. It does not count every time an AI answer mentions your business, every crawler request, or every later visit influenced by a recommendation.
The workflow below helps US and Canadian marketing teams build a useful report, check its filters, and connect the findings with content decisions. It also shows how to measure signup activity without confusing event counts, sessions, and attributed revenue.
Decide which question the report should answer
Begin with a narrow business question. You might want to know which articles receive identifiable visits associated with ChatGPT, which of those visits reach onboarding, or whether a page update changes the recorded traffic pattern.
Write the question and reporting period at the top of your working notes. A report for website acquisition has a different purpose from a prompt tracking dashboard or a server log review.
Define the intended outcome too. A signup button click, a completed registration, an activated trial, and a paying account are different events. Choose the one relevant to the decision.
Keep your reporting language aligned with the data. “Recorded sessions with these source values” is a more defensible description than “everyone who discovered us through AI.”
Check the property and measurement setup
Select the correct GA4 property and confirm that the website or app you intend to review is represented in the setup.
Check that important landing pages and the signup journey are measured. If registration moves to a separate application domain, have the analytics owner review the cross-domain setup and any self-referral issues.
Confirm the date range and reporting timezone. Keep that information consistent when comparing the US and Canada or reviewing a change against a publication date.
Also note relevant measurement changes, such as a tag update or a revised consent setup. If collection changed during the period, a movement in the report may reflect the measurement rather than a change in demand.
Use session dimensions for the acquisition question
For this workflow, start with Session source and Session medium, or the combined Session source / medium dimension.
First user dimensions describe a user's original acquisition source, while session dimensions describe the source associated with a session. Keep those scopes separate when answering how visits in the current period arrived. Google Analytics traffic-source scopes.
A returning user may first have arrived through Google and later visit through a link associated with ChatGPT. A first-user report and a session acquisition report can therefore answer different questions about that person.
Record the chosen scope in your report. This prevents a later reader from comparing two figures that use similar source names but describe different populations.
Find the source values already in your data
Open Reports, then the Traffic acquisition report under Acquisition where that report is available in your navigation. Select Session source / medium as the table dimension and search the table for relevant source text. Google documents this report and its session-based acquisition purpose. Traffic acquisition guidance.
Inspect values such as chatgpt.com and the legacy chat.openai.com domain if they appear. Treat those as candidates to review, not a promise that every ChatGPT visit uses either value.
Keep the medium visible. A referral value, a manually tagged campaign, and another classification may require different interpretation.
Save the exact values you accept and why. Do not use a broad substring that also includes unrelated domains, internal campaign names, or deliberately labeled test traffic.
Build a reusable exploration
In Explore, create a Free form exploration and name it clearly, such as ChatGPT identified sessions. Google documents the Free form template and its table, dimension, metric, and filter controls. Free-form exploration.
Import the dimensions Session source, Session medium, Landing page + query string, and Country. Import Sessions and Engaged sessions, plus the relevant key-event metric available for your analysis.
Place source and medium in the rows first and Sessions in the values. Establish the unfiltered table before adding the source rule so you can see what the filter changes.
Then add landing page and country as additional breakdowns or separate tabs. Keeping the initial table simple makes it easier to validate the source selection.
Apply an explicit source filter
For a starting rule that accepts only the two example domain values, use a filter on Session source with the Matches regex operator:
^(chatgpt\.com|chat\.openai\.com)$
The anchors limit the rule to the entire value, and the escaped dots represent literal dots. Google's regex guidance explains these operators and notes that matching is case sensitive by default. Regex guidance.
In the exploration's Filters section, select the dimension, match type, and expression, then apply the rule. Multiple exploration filters must all be satisfied. Exploration filters.
Keep Session medium in the output. Add an exact referral medium condition only when the intended report is specifically a referral-only subset. A report including verified manual tags should use a broader label than referral traffic.
Test the filter with positive and negative examples
Validate the rule before relying on the totals. It should accept chatgpt.com and chat.openai.com as written.
It should reject example.com, notchatgpt.com, chatgpt.com.example.org, and a full URL containing a path. Those values are different from the source hostnames the rule is designed to select.
If your property contains another legitimate source value, inspect how it was generated before adding it. Preserve the old rule and record when the accepted list changes.
Compare the filtered table with the original source rows for the same period. A blank result can mean the source values are absent, the dates are wrong, another filter excludes the data, or collection is incomplete. It does not by itself establish that ChatGPT had no influence on the business.
Inspect the landing pages
Add Landing page + query string as a breakdown so the report shows which entry pages are associated with the selected sessions.
You can also use the Landing page report with Session source / medium as a secondary dimension. Google documents both that route and the complementary traffic-acquisition approach. Landing page guidance.
Review whether query strings fragment one page into several rows. Keep the original data, then group equivalent entry pages carefully in your reporting process when appropriate.
Open the important pages and assess the reader journey. Does the page answer the likely question? Can a qualified visitor understand the relevant product feature and find a clear next step?
The landing page report gives you a useful editorial starting point. It does not reveal the exact prompt that caused every visit.
Separate US and Canadian results
Use Country as a breakdown or create separate comparison tabs for the United States and Canada.
Keep the same period, source rule, and metric definitions across the views. If your products or services differ by market, inspect the relevant pages and signup paths too.
Do not average country rates without considering their denominators. A combined session rate should use the combined eligible sessions and successful sessions.
Treat geography as recorded analytics context. It should help identify relevant differences in content or availability, rather than justify a claim that every visitor's identity or location is known precisely.
Configure a meaningful signup event
Use an event that corresponds to the business action you want to measure, such as a completed registration rather than merely a click on the trial button.
Have the analytics owner verify when it fires, whether it can fire more than once, and whether the event crosses a domain boundary. Confirm that no personal data is being used as an event label.
Marking an event as important does not repair faulty collection. Validate the event before using it as the basis for a performance claim.
Google distinguishes counting a key event once per event from counting it once per session. Preserve that setting in your notes because repeated actions can change the totals. Key-event counting methods.
Keep event counts and session rates separate
Suppose a fictional report contains one hundred selected sessions. Twelve signup events occurred across eleven of those sessions.
The event count is twelve. The percentage of sessions with a signup is eleven divided by one hundred, or 11 percent. Dividing twelve events by one hundred sessions would answer a different question.
For a signup-specific session rate, the numerator must be sessions containing that signup and the denominator must remain all eligible selected sessions. Do not filter the entire base down to signup events and then report the resulting rate as acquisition performance.
Use the relevant report selector where available, or have the analytics owner build the appropriate session segment or analysis. Keep other key events out of a metric labeled signup rate.
Validate collection with a controlled visit
Use a test property or a clearly labeled test procedure approved by the analytics owner. Start a fresh visit, follow the intended entry route, and confirm the landing page and event collection.
A manually tagged test link can validate your own UTM handling, but it does not reproduce every real ChatGPT click. Label it as a test and keep it out of business performance reporting.
Check the event in the available debugging or realtime workflow, then allow for normal report processing before comparing the historical table.
Record the test time, entry URL, expected source, event, and observed result. This gives the team a reproducible check when a future tagging or onboarding change affects the report.
Use manual tags only for links you control
UTM parameters can identify a campaign when you control the destination link. Google's manual tagging documentation explains how source, medium, and campaign values map to reporting dimensions. Manual tagging guidance.
Use consistent labels and preserve them through redirects. Keep a tagged test campaign distinct from organic or independently generated discovery.
Do not assume you can force every link in an assistant's answers to use your preferred tags. Also avoid adding acquisition UTMs to ordinary internal links as a shortcut for measuring movement from an article to onboarding.
Track that internal journey with the appropriate events and page analysis instead. Keep acquisition information and onsite behavior conceptually separate.
Understand what direct traffic leaves unresolved
A visitor may read about a business and later enter its address, use a bookmark, or return through another channel. The website report may not retain the earlier discovery context.
Google describes direct traffic as traffic without a clear referral source and lists several reasons source information can be absent. Direct traffic guidance.
Do not assign all direct visits to ChatGPT or apply an invented multiplier to the identified sessions. That would convert an information gap into a fabricated attribution estimate.
A voluntary discovery question can add context at signup. Keep that self-reported answer separate from measured source values so the report remains clear about the evidence each field provides.
Keep crawler activity out of the human referral report
A bot requesting a page and a person clicking a link are different events. Server or CDN logs can help investigate crawler requests; this acquisition report concerns recorded website sessions.
GA4 automatically excludes known bots and spiders, but that does not make it a complete crawler monitoring system or guarantee that every automated request is classified perfectly. Known bot exclusion.
Do not add raw crawler request counts to session totals. Review the datasets separately and connect them only when you have a specific, justified analytical question.
A crawl can establish access to a page at a time. It does not establish that a buyer read the page, that the page was cited, or that an account signup occurred.
Explain differences between reports and explorations
If the totals differ, compare the date range, source rule, metric scope, and filters before changing the report.
Google documents differences involving supported fields, filtering, retention, thresholds, and other processing conditions. Reports and explorations.
Save the exact reporting configuration with an export. A screenshot of a total without its definitions is harder for an editor or analyst to interpret later.
For small samples, show counts as well as percentages. One additional signup can move a rate substantially when only a few eligible sessions are present.
Turn the report into a content decision
Select a landing page with enough relevant evidence to investigate. Review the question it serves, its product explanation, and the path to onboarding.
If the page attracts qualified visits but the next step is unclear, improve the explanation or call to action. If the visitors need a distinct supporting guide, plan that resource deliberately.
The SERPY platform helps connect that investigation with Opportunity Discovery and content work. Performance Tracking provides page and visibility context alongside connected Google Search Console data.
Keep GA4 referral analysis as its own measurement workflow; this guide does not depend on a native GA4 connection inside SERPY. Try SERPY for free to investigate which content improvement should follow the analytics finding.
Frequently asked questions
Can GA4 show visits associated with ChatGPT
It can show recorded sessions with identifiable source information when collection and reporting preserve that information. Inspect your property's actual source values and retain the medium. The report does not represent every person influenced by an AI answer.
Which source values should I include
Start by inspecting the values in your property. The example filter accepts chatgpt.com and chat.openai.com exactly. Add another value only after reviewing its origin, and preserve the rule version so later totals remain explainable.
Should I use First user source or Session source
Use Session source for the session acquisition question described here. First user dimensions concern original acquisition and can answer a different question about returning visitors. State the scope in the report so similar-looking totals are not compared incorrectly.
Does every ChatGPT visit use the referral medium
Check the actual rows rather than assuming one medium covers every situation. Manual tagging and collection conditions can affect classification. Keep medium visible and label a broader source-based report accurately when it includes more than referral sessions.
Why use an anchored regex
The anchors restrict the rule to the complete source value, while escaped dots represent literal dots. That helps avoid including unrelated domains containing similar text. Validate expected matches and nonmatches before relying on the filtered total.
Can I identify the exact prompt from GA4
The source and landing page report does not generally supply the exact question behind each visit. Use separate prompt monitoring to study selected buyer questions. Do not infer a specific user's prompt solely from the page they reached.
Does zero identified traffic mean no AI influence
No. It means the selected report found no recorded sessions meeting its conditions. Review source values, collection, dates, and filters. Influence that leaves no identifiable source information remains unresolved rather than becoming proof of absence.
How do I measure signup rate correctly
Use sessions containing the intended signup action as the numerator and all eligible selected sessions as the denominator. Keep event occurrence counts separate. A signup can fire more than once within a session, so raw event counts do not automatically provide a session success rate.
Should I count trial button clicks as signups
Keep them as separate actions. A click shows interest in beginning the journey; a completed registration records a later outcome. Define the event that matters to the business and verify that it fires at the correct stage.
Can I add crawler requests to referral sessions
No. They describe different activities and collection systems. Review crawler requests in the appropriate logs and human website activity in analytics. Adding them together creates a total with no coherent denominator or business interpretation.
Why do standard reports and explorations differ
Compare scope, dates, source filters, supported fields, and retention before drawing a conclusion. Thresholds and processing conditions can also matter. Preserve the report configuration and counts so another analyst can investigate the difference.
How can SERPY help after I find a useful landing page
Use SERPY to investigate coverage, review a page improvement, and follow relevant search and visibility signals. Keep signup and referral measurement in the analytics setup described above. Try SERPY for free to connect an observed content need with the next editorial action.




