Why ChatGPT Referral Sessions Differ Between HubSpot and Google Analytics
When reviewing your website analytics, you may notice that HubSpot reports fewer sessions from ChatGPT (e.g., chat.openai.com or chatgpt.com) than Google Analytics (GA4). For example, HubSpot may show 21 sessions from chatgpt.com, while Google Analytics reports 68 sessions in the same period. This discrepancy is normal and reflects the different ways HubSpot and Google Analytics track, attribute, and filter session data.
Why the Numbers Differ
1. Tracking Script Coverage
HubSpot only tracks sessions on pages that contain the HubSpot tracking code.
If Google Analytics is installed sitewide (including subdomains, landing pages, or pages without HubSpot forms or CTAs), it will capture more total sessions.
Tip: Install the HubSpot tracking code on every domain and subdomain you want included in your analytics.
2. Attribution Model Differences
HubSpot and Google Analytics use different attribution models:
-
HubSpot: First-touch attribution — the session source is assigned to the original referrer that first brought the contact to your site.
-
Google Analytics (GA4): Last non-direct click attribution — the most recent known traffic source receives credit for the session.
Example:
If a user first visits your site from Google Search and later returns via ChatGPT,
-
HubSpot attributes that visitor to Google Search (the first touch),
-
Google Analytics attributes the second visit to ChatGPT (the last click).
This results in GA4 showing higher ChatGPT referral numbers.
3. Referrer Detection from ChatGPT
Traffic from ChatGPT often comes from within its in-app browser or embedded environment.
This sometimes strips or masks referral data, meaning the visit appears as Direct Traffic in HubSpot.
Google Analytics, however, can often detect these referrers through additional client hints or different session-handling rules, leading to more ChatGPT referrals being identified in GA4.
4. Session Timeout Logic
HubSpot and Google Analytics handle session expiration differently:
-
HubSpot: Ends a session after 30 minutes of inactivity, and typically records one session per continuous visit.
-
Google Analytics 4: Also uses a 30-minute inactivity rule, but renews sessions for additional engagement events such as scrolling or clicking.
This means that repeat engagements during a browsing period may be counted as multiple sessions in GA4, but only one in HubSpot.
5. Bot Filtering and Privacy Settings
HubSpot applies strict bot and crawler filtering to its analytics, potentially excluding some sessions that Google Analytics still counts.
Additionally, differences in cookie consent behavior (for example, HubSpot not tracking visitors who decline cookies) can cause further variation.
How to Align Your Data
To minimize discrepancies between HubSpot and Google Analytics:
-
Verify tracking coverage.
Make sure both HubSpot and GA4 tracking codes are installed on the same set of pages. -
Add UTM parameters to ChatGPT links.
Example:https://yoursite.com/blog/article?utm_source=chatgpt&utm_medium=referral
-
Match reporting settings.
Align your date ranges, time zones, and filtering preferences. -
Understand your goal.
Use HubSpot’s analytics for lead and contact attribution, and GA4 for overall site traffic trends.
Summary
Factor | HubSpot | Google Analytics 4 |
---|---|---|
Attribution model | First-touch | Last non-direct click |
Session timeout | 30 minutes, no engagement renewal | 30 minutes, renews on engagement |
Tracking coverage | HubSpot-tagged pages only | Typically sitewide |
Referrer detection | Sometimes lost from ChatGPT | More likely retained |
Bot & privacy filtering | Stricter | Less strict |
Key Takeaway
A higher number of sessions from ChatGPT in Google Analytics doesn’t mean HubSpot is missing traffic — it reflects different methodologies for identifying, attributing, and counting visits.
For accurate marketing attribution, rely on HubSpot.
For complete traffic volume analysis, use Google Analytics.