TinyGTM
UTM Builder · for Google Ads

Google Ads UTM Builder — clean tracking for every Google Ads link.

Google Ads already auto-tags clicks with `gclid` so Google Analytics knows the source, but if you use any other analytics tool (Mixpanel, Amplitude, PostHog) you need explicit UTMs to attribute Google Ads traffic correctly. UTMs also let you separate Search from Display from Shopping inside the same analytics tool without piecing it together from gclid metadata.

Free foreverNo sign-up to buildNaming rules + duplicate detection

Recommended UTM convention for Google Ads

Pick these defaults and lock them in — every Google Ads link your team builds will stay consistent and roll up cleanly in reports.

utm_sourcegoogle
utm_mediumcpc
utm_campaign patterngoogle-{network}-{topic}

Google Ads UTM examples

Google Search Ad
https://yoursite.com/landing?utm_source=google&utm_medium=cpc&utm_campaign=brand-search-2026q2&utm_content=ad-v3
Google Display Network
https://yoursite.com/landing?utm_source=google&utm_medium=display&utm_campaign=retargeting-2026q2&utm_content=banner-300x250
Google Shopping
https://yoursite.com/landing?utm_source=google&utm_medium=shopping&utm_campaign=ecom-2026q2
Performance Max
https://yoursite.com/landing?utm_source=google&utm_medium=pmax&utm_campaign=demand-gen-2026q2

Common Google Ads UTM mistakes

FAQ

Google Ads UTM tracking questions

Do I need UTMs if I have Google Ads auto-tagging on?

If you ONLY use Google Analytics, no — gclid handles it. If you use Mixpanel, Amplitude, PostHog, or any other analytics tool, yes — those tools don't read gclid and need explicit UTM parameters to attribute Google Ads traffic.

What utm_source value should I use for Google Ads?

`utm_source=google` (lowercase). Don't use 'googleads' or 'adwords' — Google deprecated AdWords, and `google` is the standard.

How should I differentiate Search vs Display vs Shopping?

Use utm_medium to distinguish: `cpc` for Search, `display` for Display Network, `shopping` for Google Shopping, `pmax` for Performance Max. utm_source stays `google` across all of them.

Can I dynamically insert the keyword that triggered the click?

Yes — use ValueTrack: `utm_term={keyword}`. Google replaces {keyword} at click time with the matched keyword. Same trick works for placement, device, etc.

What's the difference between gclid and UTMs?

`gclid` is Google's click identifier — opaque, internal, only readable by Google Analytics. UTMs are open, human-readable parameters readable by every analytics tool. Use both: gclid for Google's reporting, UTMs for everyone else.

More channels

UTM builders for other channels

← Back to all UTM Builder features

Build your first Google Ads UTM link in 60 seconds.

Free to try. No sign-up. Save to a dashboard when you're ready.

Open the UTM Builder