UTM Parameters
Chapter 15 — UTM Parameters vs. Google Ads Auto-Tagging
Use Google Ads auto-tagging for reliable cost, keyword, and ad metadata. Layer standardized UTMs to keep cross-channel naming consistent in GA4 and BI. This pairing prevents broken channel grouping and preserves Google Ads integrations.
Why both tagging systems exist—and when to pair them
Auto-tagging (gclid) is the Google Ads “key” that unlocks keyword, ad, and cost in GA4 and Google Ads reports. UTMs are your universal labels for clean, comparable channel names across all platforms. In Google Ads, run both: gclid for fidelity in Ads, UTMs for cross-channel truth. Outside Google Ads, UTMs do the attribution work because GA4 does not use other platforms’ click IDs for channel grouping.
What each provides (and what it cannot)
| Dimension | Auto-tagging (gclid) | Manual UTMs |
|---|---|---|
| Ownership/control | Google-generated | Marketer-controlled |
| Platforms | Google Ads only | Any platform |
| Detail depth | Keyword, ad group, creative, device; enables cost/click imports | Your naming choices; consistent cross-channel taxonomy |
| GA4 default channel grouping alignment | Native: treated as google / cpc | Must align your utm_medium to match GA4 rules (e.g., cpc/ppc for Paid Search) |
| Reporting flexibility outside Google | Limited | High |
| Susceptible to mislabeling | Low | Medium (if non-standard source/medium values are used) |
Critical for Google Ads cost and ROAS |
Yes | No |
A SaaS team comparing LinkedIn, email nurtures, and Google Ads needs UTMs to make reports comparable. The SEM team still needs gclid to see keyword-level ROAS and to import cost.
gclid.” GA4 can use UTMs for source/medium naming and still use gclid for Google Ads cost, keyword, and ad metadata. Align UTMs to google / cpc so names match what gclid implies.The short answer: use both in Google Ads
- Keep auto-tagging ON for keyword/ad/cost accuracy and Google Ads integrations.
- Add UTMs for cross-channel naming and clean GA4 Default Channel Grouping.
For non-Google platforms, UTMs are primary. Platforms may add click IDs (msclkid, fbclid), but GA4 relies on UTMs for source/medium/campaign outside Google Ads.
The Dual-Tagging Rule of Three: Align > Append > Allow
- Align: Standardize to
utm_source=googleandutm_medium=cpc(or ppc) so GA4 groups as Paid Search. - Append: Apply UTMs via Google Ads Final URL suffix using ValueTrack to scale without manual errors.
- Allow: Keep auto-tagging ON and make sure redirects and link layers do not strip query strings.
A global ERP team that follows these three rules sees one clean “Paid Search” row in GA4 and still gets keyword-level ROAS in Google Ads.
Configure Google Ads once; let ValueTrack scale UTMs
- Keep auto-tagging ON: Admin > Account settings > Auto-tagging: ON.
- Add UTMs via Final URL suffix (account-level preferred):
utm_source=google&utm_medium=cpc&utm_campaign={campaignid}-{campaignname}&utm_term={keyword}&utm_content={adgroupid}-{matchtype}-{creative}
Notes:
- ValueTrack parameters populate UTMs dynamically.
- Keep
utm_source=googleandutm_medium=cpcto match GA4 channel logic. - If your BI joins on stable IDs, place the Google Ads {campaignid} in
utm_campaignorutm_id.
When a medtech SaaS links GA4 conversions to Google Ads for smart bidding, auto-tagging keeps cost and conversions synchronized. Using the suffix above lets the BI team compare campaigns across all channels with the same taxonomy.
Validate the setup in minutes
Click a controlled test link and confirm:
- The landing URL includes both gclid and your UTMs.
- GA4 Realtime shows session source/medium as google / cpc.
- Google Ads cost appears in GA4 Ads reports after processing.
Detect and fix the common conflicts fast
Split channel problem
Symptom GA4 shows both google / cpc and googleads / paid for the same campaigns.
Cause Non-standard UTMs override channel logic.
Fix Standardize to utm_source=google, utm_medium=cpc.
“Where did my Google Ads campaign names go?”
Symptom GA4 reports do not show your Ads campaign naming where you expect.
Cause Some GA4 dimensions read UTM campaign; Google Ads dimensions are separate.
Fix Use UTM campaign to match your cross-channel taxonomy. Use Google Ads-linked reports for native Ads campaign names.
gclid missing
Symptom No cost data and weak keyword visibility.
Cause Auto-tagging off, or query strings stripped by redirects/shorteners/security gateways.
Fix Turn auto-tagging on. Ensure all redirects preserve parameters. If you use a shortener or gateway, allowlist gclid.
Duplicate or incorrect session attributions
Symptom Spikes in “Unassigned” or odd mediums.
Cause Typos or novel medium values.
Fix Constrain utm_medium to cpc/ppc for paid search. One cloud security team used utm_medium=paidsearch and saw “Unassigned”; switching to cpc restored clean grouping.
Non-Google ad platforms still rely on UTMs
- Microsoft Ads:
msclkidexists, but GA4 still uses UTMs for source/medium/campaign. - LinkedIn, Facebook, X: They may add their own click IDs, but GA4 uses UTMs for attribution and channel grouping.
An ABM program that splits budget across Google, Microsoft, and LinkedIn uses UTMs to standardize naming across all three. gclid only enhances Google Ads.
Minimal templates you can copy
Google Ads Final URL suffix (account level):
utm_source=google&utm_medium=cpc&utm_campaign={campaignid}-{campaignname}&utm_term={keyword}&utm_content={adgroupid}-{matchtype}-{creative}
Microsoft Ads (where supported):
utm_source=bing&utm_medium=cpc&utm_campaign={CampaignId}-{Campaign}&utm_term={Keyword}&utm_content={AdGroupId}-{QueryString}
A data-warehousing SaaS uses these templates so the pipeline dashboard can group by “Paid Search” while the SEM team optimizes by keyword and creative.
Light operational guardrails that prevent leaks
- Standardize
utm_source/utm_mediumfor search to “google / cpc” and “bing / cpc.” - Ensure redirects preserve query strings (no stripping by shorteners, security layers, or server rules).
- Document where UTMs are applied (account-level suffix vs. ad-level) to avoid duplicates and drift.
Keep Google Ads auto-tagging ON for granular Ads data and cost import. Layer standardized UTMs for cross-channel attribution. Do not invent new medium values that fight GA4’s channel logic. This pairing protects both SEM performance reporting and RevOps pipeline views.
{campaignid} in utm_id (or inside utm_campaign alongside the name). Join on utm_id in your warehouse while keeping a readable utm_campaign for analysts. This pairs cleanly with auto-tagging and preserves Ads cost/keyword joins.Goal: Prove your redirects keep gclid and UTMs.
Steps (5 minutes):
1) Copy a live landing page URL from a Google Ads ad (or a safe test page).
2) Append this to the end: ?gclid=test&utm_source=google&utm_medium=cpc&utm_campaign=test
3) Open DevTools > Network. Load the URL and follow the first request to the final landing URL.
4) Confirm the final URL still contains gclid and all UTM parameters. If parameters vanish, fix the redirect or gateway that stripped them.
Test your knowledge
Loading quiz questions...