UTM tags are useful only when a team applies them consistently. If one person uses paid-social, another uses Paid Social, and a third uses social_paid, campaign reports can split activity across several labels. This practical UTM naming convention gives small marketing teams a shared way to name sources, mediums, and campaigns—and a simple workflow for keeping links consistent.
Key Takeaways
- Agree on a short, written list of allowed values for
utm_sourceandutm_medium. - Use lowercase values and one separator style; this guide uses
snake_case. - Make
utm_campaigndescribe the initiative, not the channel or creative. - Use
utm_contentto distinguish links or creative versions when needed. - Keep personal and sensitive information out of every URL parameter.
A simple naming convention
A UTM parameter is a label added to a URL so an analytics platform can classify campaign traffic. The parameter names have established meanings; the values are the part your team needs to standardize.
| Parameter | Use it for | Example value |
|---|---|---|
utm_source | The platform, publisher, or sender that brought the visit | linkedin, google, customer_newsletter |
utm_medium | The marketing channel or delivery type | paid_social, paid_search, email |
utm_campaign | The specific marketing initiative | spring_launch_2025q2 |
utm_content | A particular creative, placement, or link variant | carousel_a, header_cta |
utm_term | A paid-search keyword or targeting term, if relevant | project_management |
Use these conventions for values:
- Lowercase only. Write
linkedin, notLinkedInorLINKEDIN. - Use
snake_case. Separate words with underscores:paid_social, notpaid socialorpaid-social. - Use stable, recognizable names. Prefer a platform's familiar name over a one-off abbreviation.
- Keep each field focused. Put the channel in
utm_medium, not inside the campaign name as a substitute for a medium. - Use a predictable campaign pattern. For example:
{initiative}_{audience-or-offer}_{period}. Leave out parts that do not help your team identify the campaign.
These are team conventions, not universal required spellings. The important part is that everyone uses the same definitions.
Example
For a paid LinkedIn promotion of a spring product launch, the team might use:
- Source:
linkedin - Medium:
paid_social - Campaign:
spring_launch_2025q2 - Content:
carousel_a
A tagged destination could look like this:
https://www.example.com/product?utm_source=linkedin&utm_medium=paid_social&utm_campaign=spring_launch_2025q2&utm_content=carousel_a
Use your real destination page in place of www.example.com. If the destination already has query parameters, add UTM parameters with &, as in the example, rather than starting a second query string with ?.
Why consistency matters
Analytics reports group visits using the values they receive. In Google Analytics, campaign parameter values are case-sensitive, so values such as LinkedIn and linkedin can appear as different labels. Other analytics products may handle reporting differently, but inconsistent labels still make analysis and comparison harder.
Spaces also cause avoidable friction. Browsers and link tools encode spaces in URLs, often as %20 or +. That encoding does not make the value a good reporting label: teams can still enter the same phrase in different forms, and encoded URLs are harder to scan and review. Using lowercase snake_case avoids spaces and makes the intended value clear.
Uncontrolled labels create more serious problems than cosmetic clutter. If one campaign is tagged with email, another with e-mail, and a third with newsletter, a team may need to combine or filter those labels manually before comparing results. A small shared vocabulary prevents that drift.
A repeatable workflow for creating tagged links
- Choose the destination URL. Confirm that it is the intended public landing page and loads correctly.
- Look up the approved source and medium. Do not invent a new spelling for an existing channel. For example, use the agreed
linkedinandpaid_socialvalues. - Name the initiative. Apply the team's campaign pattern, such as
spring_launch_2025q2. - Add optional detail only when it answers a question. Use
utm_contentto compare creative or placements; useutm_termwhen a relevant paid-search term is being tracked. - Build and inspect the full URL. Check that the destination and all parameter names and values are correct, and that existing query parameters remain intact.
- Record the link and its labels. Keep the final URL in the team's campaign sheet or other shared reference so the next person can reuse the approved values.
- Test the destination. Open the link and confirm it reaches the expected page. Where available, check your analytics platform's campaign or real-time reporting to confirm that the visit is being classified as expected.
A URL builder can help assemble parameters, but it cannot decide your team's taxonomy or guarantee that analytics data is collected. Agree on the naming rules first, then use a builder if it makes link creation easier.
Privacy: treat tagged URLs as shareable data
Do not put names, email addresses, phone numbers, account identifiers, health details, or other personal or sensitive information in UTM values—or in any other part of a URL. URLs can be copied, shared, stored in browser history, and recorded in server, proxy, or analytics logs. They may also be exposed through referrer information depending on the browser, site, and referrer policy.
Use broad, non-identifying labels such as customer_newsletter rather than a recipient's identity. If a campaign needs to reach a particular person, use an appropriate system designed for that purpose; do not encode the person's identity in a tracking link. A UTM tag is a reporting label, not a secure or private data channel.
Common Mistakes
- Mixing capitalization:
Google,google, andGOOGLEare avoidable variants. Choose one canonical value. - Using multiple spellings for the same channel: Decide whether a medium is
paid_socialor another label, document it, and reuse it. - Putting channel and campaign details in the wrong fields: Keep source, medium, and campaign distinct so reports remain interpretable.
- Adding every possible parameter: Optional fields are useful only when the team will use the distinction. Unneeded labels add maintenance without answering a reporting question.
- Changing campaign names midway through a launch: Use one campaign label for the initiative; use
utm_contentfor creative differences when that is the intended comparison. - Assuming a correctly formed URL guarantees tracking: Consent settings, redirects, analytics configuration, and other implementation details can affect what is collected. Validate in the actual analytics setup.
- Putting personal data in a URL: Never use UTM fields to identify individual recipients or reveal confidential information.
Best Practices for a Small Team
- Keep a short shared glossary with the approved source and medium values and a few examples.
- Assign one person to review additions to the vocabulary, rather than letting every campaign create new spellings.
- Use a naming pattern that fits how the team actually reports. A useful campaign label is recognizable and consistent, not necessarily elaborate.
- Decide how to represent dates or periods, such as
2025q2, and apply that choice consistently. - Review campaign labels periodically. Merge or retire obsolete conventions thoughtfully; do not silently rename historical values and assume past data will change.
- Before sending a link, check the destination, spelling, parameter separators, and privacy of every value.
Conclusion
A useful UTM naming convention is a small shared vocabulary, applied consistently: lowercase values, one separator style, clear roles for source, medium, and campaign, and optional detail only when it helps analysis. Document the rules, reuse approved labels, and keep personal information out of URLs.
References
- Google Analytics Help: Collect campaign data with custom URLs — describes campaign URL parameters and their use in Google Analytics.
