Start by naming the steps you want to measure
I start with a simple sequence: a link is shown, someone visits the website, submits an enquiry, the business qualifies it and an order follows. Each step needs different evidence. A GEO test keeps the answer to a selected question, analytics records activity on the site and the business’s lead records confirm the actual enquiry.
I use the same period for these records, but I do not add them into one total. Someone might discover a business in AI, later search for its name and eventually call. The last recorded visit does not describe that whole journey. Equally, a link from AI does not confirm a suitable lead.
Find the sources GA4 actually recorded
In GA4, I start with the Traffic acquisition report and the Session source / medium dimension. It describes the source of that session. This differs from User acquisition, which covers how new users were first acquired. [1]
Review the actual source values for the chosen period. Look for recognised assistant domains, such as chatgpt.com, and inspect the landing pages and subsequent events. First check how the source appears in your own data. A list of domains copied from the internet may not match your website’s traffic.
For regular monitoring, you can create a custom channel group. Google now includes an AI assistants example in its documentation and explains that rule order matters: a session is assigned to the first matching channel. [2]
I build the rules from verified sources and check a sample of included and excluded sessions. A broad rule matching the letters “ai” can include an unrelated source. I save the definition and the date of each change so a later increase is not merely the effect of changing the filter.
If the source is missing, I leave it unknown. GA4 uses (direct) / (none) for traffic without a clear source. An increase in that group cannot automatically be attributed to AI. [3]
Google has a separate generative AI report
As of 2 October 2026, Google documents a Generative AI performance report for Search in Search Console. It includes AI Overviews and AI Mode impressions: displays of links to your website within those features. You can view them by page, country, device and period. [4]
I do not use this report as a count of visits or leads. It does not describe answers from ChatGPT, Claude or the standalone Gemini app. If you cannot see it in your account, check availability and whether there is enough data. The documentation also describes situations in which the report does not appear. [4]
When exporting, I check attribution to the canonical URL and the time zone. This GSC report uses Pacific Time. Because of the aggregation method, adding the page rows can give a different result from the overall chart. I note those differences before comparing periods. [4]
Count a completed enquiry as a lead
For a form, I need to know that the submission was successfully received. A button click can end in a validation or server error. I therefore connect the event to a confirmed submission and check that refreshing the page or clicking again does not count it twice.
Google recommends the generate_lead event for a lead, for example from a form. You can mark an event important to the business as a key event in GA4 and track it in reports. Test the specific implementation on your own form. [5] [6]
I submit a test form, try error states and compare the event with what actually arrived in the inbox or lead record. I label the test enquiry so it does not count towards the business result. I track phone and email link clicks separately; they do not prove that a call took place or a message was sent.
In the business’s records, I distinguish a received enquiry, a suitable lead and an actual order. If you do not have a CRM, a well maintained table with the date, service, status and source can be enough. I do not send names, email addresses or phone numbers from the form in ordinary analytics parameters. Google warns that identifying information can also leak unintentionally through URLs. [8]
Add evidence for the journey analytics did not capture
You can add an optional “How did you hear about us?” question to a form or your normal communication, with a way to name an AI assistant. I keep the answer as the customer’s own account. It can reveal an earlier discovery that analytics did not capture, but it has a different origin from a measured session source.
I keep those two values separate. If a customer says AI and GA4 records Google, I do not replace one with the other. I also avoid counting the same lead twice. I can use UTM parameters on links in my own campaigns, but that does not give me control over every link an assistant independently provides.
At the end of the period, I ask specific questions: which recognised sources brought visitors, to which pages, how many confirmed enquiries followed and how many were suitable? Search Console and GA4 use different metrics and systems, so their figures may differ even for the same period. [7]
Sources and checks
External claims use the sources listed below. The proposed steps and examples explain how L9 Studios approaches the work.
- Google Analytics: Traffic acquisition report
Session source / medium and the distinction between traffic acquisition and user acquisition.
- Google Analytics: Custom channel groups
Custom channel groups, the AI assistants example and the effect of rule order.
- Google Analytics: Understand (direct) / (none) traffic
Traffic labelled direct / none does not have a clearly identified source.
- Google Search Console: Generative AI performance report (Search)
AI Overviews and AI Mode impressions, report availability, dimensions, canonical URLs, the time zone and aggregation differences.
- Google Analytics: Recommended events — generate_lead
The recommended event for a lead, for example through a form.
- Google Analytics: Conversions vs. key events
Events important to a business can be marked as key events and assessed in reports.
- Google Search Central: Using Search Console and Google Analytics data for SEO
The different focus, metrics and systems of GSC and GA4, and reasons their figures can differ.
- Google Analytics: Best practices to avoid sending Personally Identifiable Information
Preventing accidental transmission of identifying information in parameters, URLs and form data.
Sources checked on 2 October 2026. Features and availability may change when a service changes.