UTM parameters
UTM parameters are tags added to the end of a link, such as utm_source, utm_medium and utm_campaign, that tell Google Analytics which source, channel and campaign a visit came from. Example: example.com/?utm_source=facebook&utm_medium=paid_social&utm_campaign=tet2027.
What is UTM?
UTM comes from Urchin, the web analytics software Google has since discontinued. Google’s Urchin help page names the module Urchin Tracking Module (Urchin Help, Urchin Tracking Module (UTM), accessed November 2026). The name is old, the method is not: Google Analytics 4 reads utm_ parameters on URLs.
When someone clicks a link with UTM parameters, the values are sent to Analytics and appear in the Traffic acquisition report, where you can see Session source/medium and Session campaign for each group of links (Analytics Help, URL builders: Collect campaign data with custom URLs, accessed November 2026).
The UTM parameters
| Parameter | Used for | Example value |
|---|---|---|
| utm_source | The referrer | google, facebook, newsletter |
| utm_medium | The marketing medium | cpc, email, paid_social |
| utm_campaign | Campaign, product or promo code | spring_sale |
| utm_content | Telling creatives or link positions apart | video_a, banner_top |
| utm_term | Paid keyword | water_purifier |
| utm_id | Campaign ID, used when uploading campaign data to GA4 | tet2027_01 |
Google recommends always setting utm_source, utm_medium and utm_campaign. Missing parameters show up as (not set) in reports. utm_source_platform, utm_creative_format and utm_marketing_tactic are less common, and the last two are not currently reported in GA4 (same Analytics Help source).
UTM naming rules
UTM values are case sensitive: utm_source=google differs from utm_source=Google, and SpringSale differs from Spring_Sale. GA4 splits them into separate rows. Google’s advice:
- Use lowercase throughout.
- One utm_source value per platform, for example fb for Facebook and insta for Instagram.
- One utm_medium value per channel, for example paid_social and organic_search.
- Make utm_campaign match the exact campaign name in the ad platform, using the platform’s dynamic parameters where available.
Avoid: “Facebook” this week and “facebook” next week; spaces or Vietnamese diacritics; every team member inventing a format. One shared Google Sheet listing allowed values is enough to prevent this.
UTM parameters and Google Ads auto-tagging
Google Ads auto-tagging adds a GCLID (Google Click Identifier) parameter to the URL after someone clicks your ad. In GA4, auto-tagging takes priority over manual UTM tagging (Google Ads Help, About auto-tagging, accessed November 2026). So for Google Ads, turn on auto-tagging and link the account to GA4; keep UTMs for Meta, TikTok, email, Zalo, KOLs and links placed elsewhere.
Example: comparing 2 creatives with utm_content (hypothetical)
A shop runs 2 videos on Facebook at VND 10 million each, with links tagged utm_content=video_a and utm_content=video_b. After 2 weeks, GA4 shows:
- video_a: 1,000 sessions, 25 orders, 2.5% conversion rate, VND 400,000 per order.
- video_b: 1,000 sessions, 10 orders, 1% conversion rate, VND 1 million per order.
Same number of sessions, very different quality. Without utm_content, both videos merge into one “facebook / paid_social” row and you cannot tell which one to keep.
Frequently asked questions
What tool should I use to build UTM links?
Google offers the Campaign URL Builder for website links and the Play Campaign URL Builder for Android app ads. Manual tagging works too: a ? before the first parameter and an & between parameter pairs.
Do UTM parameters replace attribution?
No. UTMs only say where a session came from. Which channel gets credit for an order depends on web attribution in GA4. To measure properly from the start, install GA4 through Google Tag Manager, then set your UTM rules.
If you need one UTM convention across all your ad channels, contact Adtek.
