UTM conventions are boring right up until the month-end report, when they decide whether your numbers are trustworthy. The rules below are the ones experienced teams actually enforce — lowercase everything, one delimiter, GA4 alignment, and governance that survives staff turnover.
Rule 1 — lowercase, always
Email and email are different values to every analytics platform. One capital letter splits a channel in two across all of history, and the mess is not retroactively fixable. Lowercase is the cheapest insurance in marketing.
Rule 2 — one delimiter, everywhere
Pick hyphens or underscores and commit. Kebab-case (paid-social) reads well in URLs; snake_case (paid_social) matches many databases. Mixing them creates phantom duplicates. Document the choice in one shared page and link it in every campaign brief.
Rule 3 — align medium with GA4
GA4's default channel rules recognize a specific set of medium values — organic, cpc, email, social, display, referral, affiliate, sms, video and close variants. Invented mediums fall into Unassigned. If you need a custom value, add a GA4 custom channel rule or accept the Unassigned bucket — do not discover it in the board meeting.
Rule 4 — short controlled lists
A taxonomy with forty mediums is not a taxonomy; it is a junk drawer. Most teams need eight to twelve values. If a new campaign wants a new medium, the default answer is no — reuse an existing value or justify the addition in writing.
Rule 5 — never tag internal links
UTM parameters on links within your own site overwrite the session's source and start a new session in GA4. Navigation, footers and cross-links stay clean; UTMs are for inbound traffic only.
Rule 6 — governance beats tooling
The tools do not keep you consistent — habits do. Keep the canonical list in one shared doc, name one owner, review new campaigns against the list monthly, and onboard every new marketer with the taxonomy on day one. The MediumMap generator produces a tidy first draft; the team wiki and the monthly review keep it tidy.