What is Session Source in Google Analytics 4?

Cody Schneider9 min read

Knowing where your website visitors come from is one of the most fundamental questions in web analytics. Google Analytics 4 tracks this with a dimension called ‘Session source,’ which tells you the origin of a user's visit. This article breaks down exactly what Session source means, how Google determines it, and how you can use this crucial metric to make smarter marketing decisions.

GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

What is Session Source in Google Analytics 4?

Simply put, Session source answers the question: "Where did this user's session start?" It identifies the specific website, search engine, or platform that sent the visitor to your site. Think of it as the raw origin or the last place a user was right before they landed on your page.

It's often paired with another dimension, Session medium, which answers "How did they get here?"

  • The Source is the 'where' (e.g., google, facebook.com, bing).
  • The Medium is the 'how' or the general category of traffic (e.g., organic, referral, cpc, email).

When you combine them, you get the popular Session source / medium dimension, which gives you a clear and powerful picture of your traffic. Here are a few common examples:

  • google / organic: Traffic from a user clicking on a non-paid search result on Google.
  • facebook.com / referral: Traffic from a user clicking a link on Facebook (not a paid ad).
  • bing / cpc: Traffic from a user clicking a paid search ad on the Bing search engine (CPC stands for Cost-Per-Click).
  • (direct) / (none): Traffic from a user typing your URL directly into their browser, using a bookmark, or from a source that couldn't be identified.

Understanding the source is the first step in measuring the effectiveness of any digital marketing effort, from SEO to social media campaigns.

How GA4 Assigns a Session Source

GA4 doesn't just guess where users come from. It follows a specific hierarchical logic to assign the source for every session. It processes the information in a specific order, stopping as soon as it gets a definitive answer. Here is the exact order of operations:

GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

1. Checks for UTM Parameters

The highest priority goes to manual tagging via UTM parameters. If a URL contains a utm_source tag, GA4 will always use the value you provided. This gives you complete control over how your campaign traffic is labeled.

For example, if you run a monthly email newsletter, you could tag your links like this:

https://www.yourwebsite.com/?utm_source=april_newsletter&utm_medium=email&utm_campaign=spring_sale

In this case, GA4 will assign the Session source as april_newsletter, overriding any other information. This is why a consistent UTM strategy is critical for accurate campaign tracking.

2. Checks for a Google Ads Click Identifier (GCLID)

If a URL has no UTM parameters, GA4 checks for a Google Ads click identifier. If you’ve linked your Google Ads account to GA4, a unique parameter called gclid (Google Click ID) is appended to URLs when a user clicks your ads. When GA4 detects this gclid, it knows the traffic came from a paid Google ad and assigns the Session source as google and the Session medium as cpc.

3. Checks for the Referring Domain (Referrer)

If there are no UTMs or GCLID, GA4 looks at the referrer - the last webpage the user was on. This is done by checking the HTTP "referer" header that the browser sends.

  • If someone clicks a link on a blog post to get to your site, the referring domain (e.g., someblog.com) would become the Session source.
  • If they come from Twitter, the source would be t.co (Twitter's link shortener).
  • If the referring domain is a known search engine (like Bing or DuckDuckGo), GA4 is smart enough to assign the medium as organic.
GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

4. Identifies it as Direct Traffic

If none of the above conditions are met, GA4 classifies the traffic as (direct). This is the last resort - essentially the "we don't know" category. A session is marked as direct when:

  • A user types your URL directly into their browser.
  • A user uses a bookmark to visit your site.
  • A user clicks a link from a desktop application (like an email client) or a document (like a PDF).
  • The referring data is lost for privacy reasons, such as moving from a secure HTTPS site to an unsecured HTTP site.

How to Find Your Session Source Report in GA4

GA4 offers multiple ways to analyze your session data, from pre-built summary reports to completely custom explorations. Here are the two most common methods.

Method 1: Using the Traffic Acquisition Report

This is the quickest way to get a solid overview of your traffic sources. This report is designed to show you sessions, not users.

  1. On the left-hand navigation pane, click on Reports.
  2. Navigate to the Acquisition section and click on Traffic acquisition.
  3. By default, this report groups traffic by Session default channel group. To see the source, click the small dropdown arrow above the first column of the table and select Session source.

Pro Tip: To get even more context, click the blue plus sign + next to the primary dimension dropdown to add a secondary dimension like Session medium.

Method 2: Building a Custom Report in Explore

For more granular analysis, the Explore section allows you to build completely custom reports from scratch. This is perfect for digging deeper and combining Session source with other dimensions and metrics.

  1. Go to the Explore tab in the left navigation.
  2. Start a new exploration by clicking on the Blank or Free-form template.
  3. In the Variables column on the left, click the + button next to Dimensions. Search for and import Session source and Session medium.
  4. Click the + button next to Metrics. Search for and import the metrics you care about, like Sessions, Engaged sessions, Conversions, and Total revenue.
  5. Now, drag and drop the dimensions and metrics into the Tab Settings column.

The table will instantly update, giving you a custom-built report showing exactly which sources are driving the metrics you care about most.

Common Session Source Values and Interpretations

As you look at your reports, you’ll encounter a handful of common source values. Here’s a quick list of what they typically mean:

  • google: Traffic originating from Google. Pay close attention to the Session medium to distinguish between paid search (cpc) and organic search (organic).
  • (direct): As explained above, this means the traffic has no discernible referrer info. High direct traffic often points to strong brand recognition or potential tracking issues.
  • bing, duckduckgo, ecosia etc.: Traffic from other organic search engines.
  • facebook.com, linkedin.com, t.co: Referrals from specific social media websites. Note that this often refers to organic social shares, not paid social campaigns (which should be tagged with UTMs).
  • Custom Campaign Names (e.g., 'spring-promo', 'partner-website'): These are the values you define in your utm_source parameters. They represent specific marketing campaigns you're running.
  • What is (not set)?: The value (not set) appears when Google Analytics has received some event data, but not enough to populate the field. For Session source, it’s rare but can happen if there’s a configuration issue, like missing tagging on certain event types or data delays. It's usually something to investigate if the numbers are significant.
GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

Common Problems and How to Fix Them

Sometimes your source data might not look quite right. Here are two frequent challenges and how to solve them.

Problem 1: Too Much (direct) / (none) Traffic

While some direct traffic is normal and healthy, a percentage higher than 20-25% could indicate a tracking problem. This often means that referral information is being lost somewhere, obscuring the true performance of your marketing channels.

  • The Cause: The most common culprit is a lack of proper UTM tagging. If you're sending out email campaigns, sharing social media links, or running any campaign without adding UTM parameters, that traffic will likely be misattributed as Direct.
  • The Fix: Be disciplined with your campaign tagging. Use Google's Campaign URL Builder to create tagged links for every single marketing asset you create, from emails to social bio links to QR codes. Consistency is key.

Problem 2: Seeing Your Own Domain as a Major Source

Does your Analytics report show your own website (e.g., 'yourbrand.com') as a top referral? This is known as a self-referral and it can seriously skew your data by starting a new session unnecessarily.

  • The Cause: Self-referrals typically happen when a user moves between your main domain and a subdomain (like blog.yourbrand.com to shop.yourbrand.com), or if a page on your site accidentally lacks the GA4 tracking code. When the user navigates from the untracked page to a tracked page, GA4 sees the first page as a referrer and logs a new session.
  • The Fix: Go to your GA4 property's Admin settings. Click into your Data Streams and select your web stream. Under the Google Tag section, you can Configure tag settings, click the Show all button, then click into List unwanted referrals, and enter your own domain (e.g., yourbrand.com) here. This tells GA4 to ignore traffic from your domain as a referrer, ensuring sessions are properly combined. You should also run a site-wide audit to check for pages without the GA4 Tag.

Final Thoughts

Tracking the Session source is essential for anyone who wants to accurately measure their marketing performance. Once you understand what each source means and ensure your data is clean, you can quickly identify which channels drive real growth and which ones aren't working as hard as you thought.

Wrangling this all together, along with data in Facebook Ads, Salesforce, and a dozen other platforms, can quickly become a full-time job. This is exactly why we built Graphed. We make it easy to not only connect all your data sources but to create real-time dashboards by simply describing what you want in plain English. Forget finding the right report in GA4, just ask your data a question like, "Show me sessions and conversions by source from last month," and get an automated report in seconds.

Related Articles