UTM Naming Convention: A Simple Template for Small Teams
A ready-to-use UTM naming convention with rules, allowed values and a sample tracking sheet, so every campaign link stays consistent and reports stay clean.
- Published
- Reading time
- 7 min read
If you are new to UTM tags, read our guide to UTM parameters first. This article assumes you know what source, medium and campaign mean and focuses on keeping them consistent.
Why consistency matters more than the "perfect" names
Analytics tools treat every distinct spelling as a separate value. If three colleagues tag the same newsletter in three different ways, your report shows three small sources instead of one meaningful one. Worse, channel groupings that depend on the medium value may put some of those visits into the wrong channel, or into "unassigned".
The exact names you choose matter much less than using them the same way every time. A simple convention that everyone follows beats an elaborate one that nobody remembers.
The five rules of a good convention
- Lowercase only. No capital letters anywhere in UTM values.
- One separator. Use underscores between words (
spring_offer), never spaces. Do not mix underscores and hyphens. - Fixed lists for source and medium. New values are added to the list deliberately, not invented on the fly.
- A pattern for campaign names. For example
topic_type_yyyy_mmoroffer_quarter_year. - No personal or confidential data. No names, email addresses, customer numbers or internal codes that should not be public.
Template: allowed mediums
Keep the list of mediums short. Each medium describes a type of channel.
| Medium | Use for |
|---|---|
email |
Newsletters, automated emails, email signatures |
social |
Unpaid posts on social networks |
paid_social |
Paid ads on social networks |
cpc |
Paid search ads (when tagged manually) |
display |
Banner and display ads |
referral |
Links on partner sites, directories, guest articles |
affiliate |
Links from affiliate partners with a commission |
qr_code |
QR codes on print material, packaging or signs |
video |
Links in video descriptions |
sms |
Text messages and messenger broadcasts |
If you want your traffic to fall into the channel groupings of a particular analytics tool, check its documentation for the medium values it expects (for example whether it recognises paid_social or prefers other terms) and align your list accordingly.
Template: allowed sources
Sources name the specific place. Keep them short and recognisable:
- Social and ad platforms:
linkedin,facebook,instagram,youtube,xing,tiktok - Email:
newsletter,onboarding_emails,email_signature,sales_email - Partners and directories: use the partner's short name, for example
partner_acme - Print and offline:
flyer,brochure,trade_fair,vehicle,packaging
Template: campaign names
A good campaign name is readable, sortable and stable. One proven pattern is:
<topic>_<type>_<yyyy>_<mm>
Examples:
automation_webinar_2026_11spring_offer_promo_2026_03newsletter_2026_10always_onfor evergreen links such as email signatures or social profile links
Putting the year and month at the end keeps names readable while still allowing you to see when a campaign ran. If you prefer sorting by date, put the date first instead. Either way, choose once.
Template: content and term
utm_content distinguishes links or creatives within a campaign. Useful patterns:
- Position in an email:
header_button,main_article,footer_link - Ad variants:
image_v1,image_v2,video_15s - Placement in print:
front_page,back_page
utm_term is mainly for paid keywords or audiences: audience_it_managers, kw_crm_consulting.
A sample tracking sheet
Keep a shared spreadsheet that records every tagged link. It serves as documentation and as a lookup for anyone creating new links.
| Date | Owner | Landing page | Source | Medium | Campaign | Content | Final URL |
|---|---|---|---|---|---|---|---|
| 2026-10-01 | Anna | /offer/ | newsletter | newsletter_2026_10 | main_article | (full URL) | |
| 2026-10-01 | Anna | /offer/ | newsletter | newsletter_2026_10 | footer_link | (full URL) | |
| 2026-10-06 | Ben | /webinar/ | social | automation_webinar_2026_11 | — | (full URL) | |
| 2026-10-08 | Ben | /webinar/ | paid_social | automation_webinar_2026_11 | carousel_v1 | (full URL) | |
| 2026-10-15 | Anna | /trade-fair/ | flyer | qr_code | trade_fair_2026_10 | back_page | (full URL) |
The rows are examples. Add two more tabs to the sheet: one with the allowed sources and one with the allowed mediums. Data validation in the spreadsheet (a dropdown per column) is an easy way to stop typos.
Handling special cases
A few situations come up in almost every team. Decide how to handle them once and add the rule to your convention:
- Evergreen links such as social profile bios, email signatures and directory listings: use a campaign value like
always_onso they do not clutter campaign reports. - Recurring newsletters: use one campaign per issue (
newsletter_2026_10) or one per year with the issue inutm_content. Either works, as long as it is consistent. - Agencies and freelancers: give external partners the convention and access to the tracking sheet, and ask them to use your values instead of their own.
- Several languages or countries: add a short market code at the start of the campaign name, for example
de_spring_offer_2026_03, only if you really report by market. - Shortened links: if you use a link shortener, shorten the final tagged URL, not the untagged one, and log both in the sheet.
How to introduce the convention in your team
- Audit what you have. Look at the sources, mediums and campaigns in your analytics tool from the last few months. Note the inconsistencies.
- Write the one-page convention. Use the templates above and adapt them to your channels.
- Create the tracking sheet. Include the allowed values and a log tab.
- Agree on one way to build links. A shared builder avoids manual typing. Our UTM link builder converts values to lowercase, replaces spaces and checks for common errors.
- Assign an owner. One person reviews the sheet occasionally and approves new sources or mediums.
- Review quarterly. Remove values nobody uses and add new channels deliberately.
Common mistakes
Creating a convention but not a tracking sheet. Without a log, people cannot look up how a campaign was named and start improvising again.
Encoding too much into names. A campaign name like de_b2b_q4_promo_v3_lp2_final tries to do the job of several fields. Use utm_content and utm_term for variants and keep campaign names readable.
Changing names mid-campaign. If a campaign is renamed halfway through, its data is split. Keep the name until the campaign ends.
Ignoring automated emails. Welcome sequences and transactional emails also send traffic. Tag their links too; our guide to the welcome email sequence shows where.
Tagging internal links. UTM parameters belong on links from outside your site only. Internal UTMs overwrite the original source of a visit.
Checklist
- All values lowercase, one separator.
- Source and medium taken from the allowed lists.
- Campaign name follows the agreed pattern.
- Variants go into
utm_content, not into the campaign name. - Link logged in the tracking sheet.
- Link tested before publishing.
Summary
A UTM naming convention turns campaign tracking from guesswork into reliable data. Use lowercase and one separator, fixed lists of sources and mediums, a clear pattern for campaign names and a shared tracking sheet. Build links with a tool rather than by hand, review the lists every quarter, and your reports will show each channel exactly once, which is what you need to compare results and calculate figures such as customer acquisition cost per channel.
FAQ
What is a UTM naming convention?
It is a short set of rules that defines how your team writes UTM values: allowed sources and mediums, the format of campaign names, letter case and separators. It makes sure the same channel is always recorded the same way.
Should I use underscores or hyphens in UTM values?
Either works. What matters is that you pick one and use it everywhere. Many teams use underscores inside values because hyphens are common in URLs and product names.
Where should we store our UTM naming convention?
In one shared spreadsheet or document that everyone who creates links can access, together with a log of all tagged links you have created.
Can I fix inconsistent UTM data afterwards?
Some analytics tools let you group or rewrite values in reports, but it is laborious and rarely complete. Preventing inconsistent values with a convention is far easier than cleaning them up.