Dirty attribution almost never starts with a dramatic mistake. It starts with small inconsistencies: one person writes paid-social, another writes paid_social, a third skips utm_medium entirely. Later those tiny differences break reporting, clutter dashboards, and make channel comparison harder than it should be.
What to standardize first
You do not need a giant naming handbook. You need one shared rule for the fields that matter most:
utm_sourcefor the platform or publisherutm_mediumfor the traffic typeutm_campaignfor the initiative itself
Then keep formatting stable across all three:
- lowercase only
- one separator style
- short campaign names
- no improvised synonyms
A simple naming example
A lightweight convention is usually enough:
utm_source=linkedinutm_medium=paid-socialutm_campaign=apr-demo-push
What matters is not the exact vocabulary. What matters is that everyone uses the same vocabulary every time.
When to use utm_term and utm_content
Many teams overfill UTM links. In practice:
- use
utm_termwhen you truly need keyword-level detail - use
utm_contentwhen you need to distinguish creatives, placements, or variants - leave them empty when they add noise instead of signal
Optional fields should explain a difference you will actually look at later.
Build links from one shared place
Manual link editing is where naming drift begins. One shared builder removes repeated formatting mistakes and gives the team a default place to create links.
This matters most when:
- several people launch campaigns
- links get copied between briefs, chats, and docs
- final QA happens under time pressure
Run a two-minute check before launch
A clean naming convention still needs one final pass before publishing. This is not process theater. It is the cheapest moment to catch broken links, bad casing, and messy tags.
Pre-launch UTM check
- Open one final URL from every major channel.
- Confirm the destination page and query parameters.
- Check
source,medium, andcampaignagainst the shared rule. - Save one approved example in the launch brief or campaign doc.
The goal is clean reporting, not perfect documentation
Boring naming is useful naming. When everyone can guess the format correctly, attribution stays cleaner, dashboards stay easier to trust, and cleanup stops repeating after every launch.
Related tool
UTM Naming Builder
Build cleaner campaign URLs with presets, normalization, and warnings.