Lowercase, without exception
This is the single highest-value rule. Analytics tools do not fold case, so one capital letter creates a duplicate row that will quietly split your numbers for months before anyone notices.
Your first client is free. Set up your naming system in two minutes.
A taxonomy that keeps one channel on one row. Most broken UTM reporting is not missing tags, it is the same channel spelled three ways.
| utm_source | utm_medium | When |
|---|---|---|
| meta | paid_social | Facebook and Instagram placements. |
| tiktok | paid_social | TikTok Ads. |
| paid_social | LinkedIn Ads. | |
| cpc | Search and Shopping. | |
| display | Display and Demand Gen. | |
| youtube | video | YouTube placements bought separately. |
| newsletter | Your own list. | |
| partner | referral | Affiliates and co-marketing. |
Pick a channel and a campaign to see the whole set, and the URL it produces.
https://example.com/product?utm_source=meta&utm_medium=paid_social&utm_campaign=nike_meta_pur_nl_brd&utm_content=ugc_painpoint_hook03_sarah_v2&utm_term=brd
This is the single highest-value rule. Analytics tools do not fold case, so one capital letter creates a duplicate row that will quietly split your numbers for months before anyone notices.
Underscores inside values, nothing else. Spaces get encoded inconsistently, hyphens are fine but must not be mixed in, and a value containing both is impossible to split back apart.
Getting these the wrong way round is common and breaks the default channel grouping. meta / paid_social, not paid_social / meta.
The utm_campaign value should match the campaign name where the money is spent. Anything else means joining spend to sessions by hand.
A UTM on a link between your own pages restarts the session and reassigns the conversion away from whatever paid for the visit. Inbound only.
utm_term= is a value as far as most tools are concerned. If a channel has no keyword, omit the parameter entirely.
Save your UTM convention.
Set the mapping once and every tracking URL your team builds follows it, including the ones generated in bulk.