In GA4, we are seeing both session_start events and sessions in general have the ignore_referrer parameter set to TRUE but the session source is something other than direct or referral (i.e. affiliates, email, etc.). These session sources are often from other mediums than referral traffic so they should not be marked with the ignore_referrer parameter. We also do not have any manual configuration of the ignore_referrer parameter in our GTM tags. In the GA4 UI, this is manageable because the session source/medium still appears accurate, but when we analyze our BigQuery data for the GA4 property, the ignore_referrer parameter appears to be purging the event-level UTM codes for those sessions and since GA4 BigQuery does not include session-scoped source/medium values in the schema then we have no way to identify the actual session source/medium and it gets commingled with our direct traffic (which also doesn't have an event-level UTM). Any potential resolution to this would be appreciated.
Hi @overtbre the behavior you’re noticing—where ignore_referrer is set to TRUE for sessions with non-direct traffic sources (like affiliates or email)—can definitely be confusing. It seems that GA4 is either discarding or not correctly associating UTM parameters at the event level for these sessions. While the GA4 UI still shows the correct session-level source/medium values, the BigQuery export doesn’t include session-scoped data, which creates gaps in your analysis.
Why Is This Happening?
Event-Level vs. Session-Level Data
GA4 exports all data to BigQuery at the event level, not the session level. Here’s what that means:
What Could Be Causing It?
How to Solve this issue
Here are some solutions you can try to resolve or minimize this problem:
1. Reconstruct Session-Level Source/Medium in BigQuery
Since GA4’s BigQuery export doesn’t include session-level fields, you can rebuild the source/medium data yourself by aggregating and propagating event data.
Steps:
Here’s an example SQL query to propagate session-level source and medium:
This query identifies the session-level source and medium from session_start events and applies them to all events within that session.
2. Review Your GTM and GA4 Configuration
Even if you haven’t manually set ignore_referrer:
3. Use Third-Party Tools to Simplify the Process
If writing SQL queries feels like too much work, third-party tools like Windsor.ai can make this process easier. Tools like Windsor.ai can:
These platforms automate much of the data handling, making it seamless to integrate GA4 data into BigQuery without gaps.
Key Takeaways
By following these steps, you can close the gap between event-level data in BigQuery and the session-level insights visible in the GA4 UI. Hope this helps!