Sat. Jun 13th, 2026

Google Analytics 4 receives UTM parameters from every tagged URL—but the way it processes, stores, and surfaces that data differs meaningfully from Universal Analytics. If you’re migrating campaign tracking from UA to GA4, or building your attribution setup from scratch, understanding how GA4 handles UTM-tagged sessions prevents the reporting gaps that frustrate analytics teams weeks after launch.

This covers the GA4-specific mechanics of UTM tracking: where parameter values land in reports, how GA4’s session attribution model differs from UA, and what to configure before your next campaign goes live.

How GA4 Reads UTM Parameters at the Session Level

When a user clicks a UTM-tagged URL, GA4 captures the parameter values at session start and attaches them to all events in that session. The values populate these dimensions in GA4 reports and Explorations:

  • Session source — from utm_source
  • Session medium — from utm_medium
  • Session campaign — from utm_campaign
  • Session source/medium — the combined source/medium pair, the most-used attribution dimension
  • Session Google Ads keyword text — from utm_term (for non-Google paid search)
  • Session content — from utm_content (for creative and link differentiation)

All of these are session-scoped. GA4 also maintains user-scoped versions (First user source, First user medium, etc.) that capture the acquisition channel for the user’s first-ever session on your property. User-scoped dimensions persist across sessions; session-scoped dimensions reset each session.

The Traffic Acquisition Report vs. User Acquisition Report

GA4 separates campaign data across two reports that marketers frequently confuse:

Report Attribution scope When to use
Traffic Acquisition Session-level: source/medium from each individual session Campaign performance by visit—which channels are driving sessions today
User Acquisition User-level: source/medium from the user’s first-ever session New user sourcing—where are new customers first discovering you

A user acquired through a Google Ads campaign three months ago (User acquisition: google/cpc) might return via an email campaign today (Traffic acquisition: email/campaign). Both reports are correct; they measure different things. Campaign ROI analysis typically uses Traffic Acquisition. Cohort analysis and new customer sourcing use User Acquisition.

Setting Up UTM Parameters for GA4 Campaigns

The parameter structure is the same as with Universal Analytics, but GA4 has stricter channel grouping rules. Getting utm_medium right determines whether your paid campaigns land in the correct default channel group:

  • Paid Search: utm_medium=cpc and utm_source matching google, bing, yahoo, or other recognized search engines
  • Paid Social: utm_medium=paid-social and utm_source matching a social platform (facebook, instagram, linkedin, twitter)
  • Email: utm_medium=email
  • Display: utm_medium=display or utm_medium=banner
  • Organic Search: no UTM parameters needed—GA4 detects organic search referrers automatically

The easiest way to generate correctly structured tagged URLs for GA4 campaigns is a dedicated GA4 UTM generator. The Elsop tool pre-fills the utm_medium options that map to GA4’s default channels, reducing the risk of mis-tagging.

GA4 Session Attribution: How It Differs From Universal Analytics

UA used last non-direct click attribution by default. GA4 changed this in a few significant ways.

First, GA4 uses a different session model. In UA, a UTM parameter in the middle of a session would split the session and override attribution. In GA4, UTM parameters only reassign attribution at session start. A tagged URL clicked during an existing session doesn’t restart the session or change its attribution—unless the referrer matches GA4’s list of campaign override sources (which includes paid ad platforms).

Second, GA4’s default attribution model in reporting is data-driven attribution (DDA) for conversions on properties with sufficient conversion data. DDA distributes conversion credit across touchpoints using machine learning, rather than assigning all credit to the last click. This produces different conversion counts by channel compared to UA’s last-click model. If you’re comparing GA4 campaign data to UA historical data, the attribution model difference partly explains the discrepancies.

Custom Channel Groups in GA4

GA4 allows creating custom channel groups that supplement the default rules. This is useful for businesses with channel structures that don’t fit the standard definitions—for example, differentiating between brand and non-brand paid search, or separating paid social by platform.

Custom channel groups are defined in GA4 Admin under Data Display. Each rule evaluates utm_source, utm_medium, and utm_campaign values in order. The first matching rule assigns the session to that channel. If no custom rule matches, GA4 falls back to the default channel group definitions.

One practical note: custom channel group changes apply retroactively in GA4. When you save a new rule, GA4 re-evaluates historical data and re-categorizes past sessions according to the updated group definitions. This is a meaningful difference from some other GA4 settings that are forward-only. The exception is changes to the default channel group itself or audience-based segments, which do not backfill historical data.

UTM Parameters in GA4 Explorations

The standard GA4 reports surface source/medium and campaign as primary dimensions. For deeper analysis—cross-campaign comparisons, segment breakdowns, or multi-touch path analysis—GA4 Explorations provide direct access to the UTM-derived dimensions.

Key UTM dimensions available in Explorations:

  • Session campaign — the utm_campaign value
  • Session source — utm_source
  • Session medium — utm_medium
  • Session source/medium — the combined pair
  • Session Google Ads keyword text — utm_term value
  • Session content — utm_content value

Building a Funnel Exploration with session source/medium as a breakdown dimension shows how different channels progress through your conversion funnel—which is more useful for campaign budget decisions than the top-line Traffic Acquisition numbers.

Testing UTM Tracking in GA4 Before Launch

The Realtime report in GA4 is the standard verification tool. After clicking a tagged URL, your session appears under Event count by Source/Medium within a few seconds. Check that:

  • The source value matches utm_source exactly
  • The medium value matches utm_medium exactly
  • The campaign name appears under the Campaign dimension

For campaigns with dozens of tagged URLs, the DebugView in GA4 (enabled by adding the debug_mode=1 parameter to your tagged URL) shows every event and its associated parameters in real-time, which is useful for spotting parameter encoding issues before a campaign goes live.

For a full reference on every parameter, what values to use, and what breaks GA4’s channel attribution, see the UTM parameters complete guide. For the platform-specific case of Facebook and Instagram campaigns, which have their own attribution wrinkles, see the Facebook UTM builder guide. And to generate tagged URLs for your next GA4 campaign, the campaign URL builder handles the encoding and structure automatically.

By Alex Savich

Alex Savich is a digital marketing analyst and tech journalist covering AI, MarTech, SEO, and e-commerce trends. With deep expertise in web analytics and advertising platforms, Alex delivers data-driven insights on how emerging technologies reshape digital marketing strategies.