Where do traffic sources actually live?
Every analysis starts with traffic sources: where users came from and how they found you. In GA4’s BigQuery export, this information lives in several different fields. At first glance, they all look similar - but in practice, they serve very different purposes.
Why is it confusing?
GA4 creates overlapping parameters:
• traffic_source.* shows the first touch a user ever had
• session_* describes the most recent session attribution
• and don't forget event-level details
Without knowing the difference, you risk mixing signals and drawing the wrong conclusions.
How do I untangle it?
Think of each parameter as telling a part of the story:
• First touch answers “How did they first discover us?”
• Session shows “What brought them back this time?”
• The source explains “Which campaign carried them here?”
Once you separate them, attribution stops feeling random.
What’s the practical next step?
• Map out each field and its meaning
• Choose the right level of attribution for each question
• Document and reuse this logic in every analysis
Want to get all my top Linkedin content? I regularly upload it to one Notion doc.
Go here to download it for FREE.


