UTM Builder
Consistent, governed campaign tagging.
Build a tagged URL
Fill the fields, we lowercase and underscore them so every marketer on your team ships the same convention.
- source
- — where the click came from, e.g. meta, google, klaviyo
- medium
- — how it was delivered, e.g. cpc, paid_social, email
- campaign
- — which campaign, keep it stable across a launch
- id
- — ad id, useful for GA4 joins with platform data
- content
- — creative or placement, e.g. carousel_v2, reels
- term
- — keyword or audience, mostly for search
Why UTM Governance Beats UTM Creativity Every Single Time
UTM parameters are query string tags that tell GA4, Shopify and your BI tool where a session came from. They look simple, but ninety percent of D2C reporting problems come from inconsistent UTMs, not from bad tools.
One team writes Meta, another writes meta, a third writes facebook. Suddenly your GA4 shows three sources for the same channel and your CAC report is unusable. The fix is a rigid convention, enforced by a builder like this one, applied to every paid link.
Optional but recommended: utm_id for platform joins, utm_content for creative, utm_term for keyword. Never leave utm_source or utm_medium blank, GA4 will fall back to direct and you lose the click.
The Vocabulary We Use Across Every Trakkify Account
| Channel | utm_source | utm_medium | Example campaign |
|---|---|---|---|
| Meta Ads | meta | paid_social | winter_sale_2026 |
| Google Search | cpc | brand_pmax_q1 | |
| Google Perf Max | pmax | catalog_pmax_q1 | |
| YouTube Ads | youtube | video | launch_hero_video |
| Klaviyo Email | klaviyo | flow_welcome_v3 | |
| WhatsApp Broadcast | messaging | abandoned_cart_h1 | |
| Influencer | influencer_name | paid_social | creator_drop_march |
| Organic Instagram | organic_social | reel_diwali_2026 |
What Breaks GA4 Reports And How To Stop It
Mixed Case Sources
Facebook, facebook and FB are three separate sources in GA4. Force lowercase at the builder stage, never trust marketers to remember.
Spaces And Special Characters
Winter Sale becomes Winter%20Sale in the URL and blows up filters. Always replace spaces with underscores before the URL is generated.
Missing utm_medium
GA4 attributes a session with no medium to (not set) or direct, wiping out the source entirely. Medium is not optional, ever.
Campaign Name Drift
Same campaign tagged three different ways during the month. Lock the campaign name at brief stage and reuse it across every asset.
Tagging Internal Links
Never add UTMs to links between your own pages, it resets the original session source. UTMs are for external inbound only.
No utm_id
Without utm_id you cannot join GA4 sessions to Meta or Google ad ids. Add it once and your attribution audits become ten times faster.
Want A UTM Convention Doc For Your Team?
We ship a governed UTM playbook with every tracking engagement, source, medium and campaign vocab locked, so every marketer builds URLs the same way.
