Skip to content

Analytics

UTM parameters – how to track marketing campaigns correctly?

Read the articleQuestions and answers

Article cover: UTM parameters – how to track marketing campaigns correctly?

UTM parameters are a simple way of tagging links, which makes it possible to pinpoint exactly where traffic on the website is really coming from. In practice, they determine whether a campaign report will be clear and useful, or whether it will turn into a set of random labels and fragmented data. Properly implemented UTM make it easier to compare channels, campaigns and specific creatives without manually guessing the source of visits. The key is not merely adding parameters to a link, but maintaining one consistent naming logic across the entire organisation. This is especially important when several people publish links, campaigns run in parallel across multiple channels, and results feed into one analytics tool. In this section I explain what UTM are and why their consistency directly affects the quality of analysis.

What are UTM parameters and how do they work in practice?

UTM parameters are additional markers appended to a URL address that tell analytics which source, medium and campaign a user came from. The fields utm_source, utm_medium and utm_campaign are used most often, with utm_content and utm_term as optional additions. When such a link is clicked, the analytics tool reads the parameters and assigns the session to the relevant dimensions in reports.

In day-to-day work, UTM answer specific questions: did the visit come from a newsletter, a paid ad, an organic post, a partnership or an SMS message? This makes it possible to distinguish not only the channel, but also the specific marketing action. UTM do not measure conversions themselves and do not replace analytics setup — they are a layer describing the source of the visit.

The simplest scenario looks like this: you append information about the source, medium and campaign name to the destination page address, and then check in reports how many sessions and conversions the given link generated. If the same campaign runs in several channels, you can keep one shared campaign name and change only the source and medium. This makes it easier to analyse results both in aggregate and separately for each channel.

The utm_content parameter is useful when you want to distinguish variants within one campaign. You can use it to mark different buttons in an email, two banners, several ads or different placements of the same message. It is utm_content that most often shows which creative really performs better, rather than just which channel brought the traffic.

Implementing UTM does not end with generating the link. You still need to make sure that the parameters do not get lost after a redirect, that the landing page loads correctly, and that the traffic reaches analytics with the proper tagging. In practice, many errors appear at exactly this stage, especially with link shorteners, email systems and non-standard redirects.

The importance of consistent UTM parameters in web analytics

Consistent UTM parameters determine whether data in analytics can be compared and interpreted without later manual clean-up. When one campaign appears as facebook one time, Facebook another time, and FACEBOOK at another, the system may treat them as three separate sources. The result is predictable: the report looks detailed, but in practice it becomes inconsistent and misleading.

In modern analytics, especially in GA4, this kind of problem quickly becomes visible in traffic acquisition and attribution reports. Differences in capitalisation, separators, abbreviations or the medium names themselves split the data into separate rows, making it harder to assess campaign performance reliably. One consistent naming taxonomy matters more than a very elaborate tagging system.

The most common source of problems is the lack of shared rules within the team. One person records the medium as paid_social, another as social_paid, and another as cpc, even though they mean the same type of activity. As a result, reports do not reflect the real effectiveness of the channel, but rather a mix of different working habits.

Consistency also matters when platform auto-tagging and manual UTM are running at the same time. Without clearly defined rules, it is easy to duplicate tagging logic or trigger a conflict between data from the ad platform and what ultimately reaches analytics. In practice, it is best to decide straight away which channels use auto-tagging and which require manual link tagging.

Even correctly named UTM will not help if the parameters “go missing” along the way. Redirects, link shorteners, incorrect app settings and some website mechanisms can remove parts of a URL address, causing the session to end up in the report without the proper tagging. That is why naming consistency should go hand in hand with technical link checks before publication.

It is also worth bearing in mind that UTM organise the source of the visit, but do not remove all measurement limitations. Cookie banners, script blocking and privacy restrictions can affect the completeness of data about the user and conversions. UTM are a tool for better describing traffic, not a way to bypass measurement problems.

How to properly implement UTM parameters in marketing campaigns?

Proper UTM implementation comes down to agreeing one naming convention, assigning channels to specific parameters and testing every link before publication. Simply appending parameters to a URL address is not enough if everyone on the team does it according to their own scheme. In practice, you need a simple standard for utm_source, utm_medium, utm_campaign and clear rules for using utm_content and utm_term. The biggest difference is made not by the number of parameters, but by consistency in how they are used.

The first step is to prepare a naming dictionary. It is worth deciding in advance how you will write sources, media and campaigns, for example whether you use lowercase only, which separators you use and which abbreviations are allowed. This matters because entries such as facebook, Facebook and FACEBOOK may be treated as three different sources in analytics tools. The safest approach is to adopt short names, lowercase letters and one shared writing rule for the entire organisation.

The second step is assigning channels to parameters. The same marketing initiative may have one shared campaign name, while at the same time differing in source and medium depending on where it is served. This keeps the aggregate campaign report consistent, while also showing whether the traffic came from an email campaign, paid social media, a partner or SMS. utm_campaign should identify the marketing action, and utm_content should be used to distinguish the creative, placement, CTA or ad variant.

The third step is the operational preparation of links. The easiest approach is to use a generator or a spreadsheet with field validation, as this reduces typos and enforces consistency with the dictionary. With a larger number of campaigns, it is also worth clearly defining who creates the link, who verifies it, and who is responsible for publication. It is a simple way not to put out the fire only after the campaign has launched.

The fourth step is testing before publication. You should check whether the link leads to the correct landing page, whether the parameters remain in the URL after redirects, and whether the session reaches analytics with the correct labelling. This is particularly important with link shorteners, redirects, PDF materials, mobile apps and custom site mechanisms. If a link is not tested before it is served, the error usually only appears in the report, when it is already too late to recover the full data.

After the campaign is launched, you still need to check the quality of the data in the reports. It is worth looking out for duplicate names, suspicious values, traffic without tags where UTM should appear, and discrepancies between the planned delivery and what analytics shows. UTM organise information about the traffic source, but they do not remove all measurement limitations from the table, for example those resulting from script blocking or privacy settings. That is why implementation can only be considered complete once the data is not only collected, but also reliable.

The most common mistakes when using UTM parameters

The most common mistakes include inconsistent naming, tagging internal links, skipping pre-publication tests, and mixing manual UTM with auto-tagging without clearly defined rules. Each of these issues distorts reports in a different way, but the end result is often similar: it becomes difficult to identify which channel is actually delivering results. In practice, problems more often stem not from analytics, but from messy link tagging.

The first type of mistake is inconsistent naming. Just a few variants of the same source or medium are enough for the data to spread across many rows and become unsuitable for comparison. The situation is made worse by typos, accidental abbreviations and mixing Polish and English names. If the names are not standardised, the campaign report only looks correct at first glance.

The second common mistake is tagging UTM internal links on your own site. Such links can overwrite the original session source and distort attribution, causing the user to look as if they came from a banner, button or section on the site, rather than from the actual acquisition channel. It is better to use events to measure internal clicks, not UTM. UTM are used to describe incoming traffic, not navigation within the site.

The third mistake is parameters that are too elaborate or used incorrectly. When utm_campaign contains too much detail, the analysis becomes hard to read and the risk of errors increases. By contrast, using utm_content and utm_term without a clear need more often creates confusion than valuable data. It is wiser to record less, but consistently and in a way that can later be properly analysed.

The fourth problem appears when auto-tagging is combined with manual tagging. Some advertising systems pass click data automatically, and manual UTM are then only needed in specific channels or in line with the adopted reporting logic. When the team has no clear rules, different ways of attributing traffic start to mix in the reports. Using several tagging methods in parallel works well only when it is clear in advance which method is responsible for which data.

The last common mistake is purely technical: a lack of post-click control. Parameters can disappear because of redirects, shorteners, incorrectly configured landing page’s or the way mobile apps work. On top of that, there are situations where the campaign is active, but the report shows very little traffic or values such as not set and undefined. Regular auditing of traffic acquisition reports makes it possible to quickly catch such problems before poor data quality becomes the new standard.

When creating links with UTM, it is worth sticking to one naming convention, using only the necessary parameters and checking every link before publication. The key is that the same type of traffic should always be tagged identically. If you label the medium as paid_social once and social_paid another time, the report will no longer be comparable. The biggest problems do not come from a lack of UTM, but from chaos in naming.

In practice, it is a good idea to establish consistent rules for all five fields. utm_source should indicate where the user came from, for example facebook, newsletter or partner_x. utm_medium should describe the type of channel, for example email, cpc, paid_social or referral. utm_campaign should name the marketing initiative, while utm_content should distinguish the ad variant, button, placement or creative.

A good name should be short, unambiguous and easy to read in the report. It is best to stick to lowercase, one separator and simple schemes, for example wiosna_2026 or black_friday. Case matters, so facebook and Facebook can be recorded as two different sources.

  • Use only the agreed values for source and medium.
  • Do not build overly long campaign names if they will not be analysed later.
  • Use utm_content only where you actually want to compare variants.
  • Check whether the link retains parameters after redirects and shorteners when clicked.
  • Create links in one generator or a spreadsheet with validation, rather than doing it manually.

A UTM link must be technically correct, not just logically correct. It is worth checking the destination URL, character encoding, redirect behaviour and whether the app or CMS removes parameters after entry. If the parameters disappear after clicking, the campaign may work, but the report will be wrong.

It is also worth keeping a close eye on the boundary between campaign tracking and breaking attribution. UTM parameters should describe external traffic, not internal navigation within your own site. Tagging internal links with UTMs can overwrite the session source and assign the conversion to the wrong channel.

If a campaign runs across several channels, it is best to keep a common name in utm_campaign and distinguish source and medium. This makes it possible to assess the whole project and compare channel performance at the same time. It is more convenient than creating a separate campaign name for every placement.

Analysing campaign results using UTM parameters

Analysing results of campaigns using UTM parameters involves comparing traffic, session quality and conversions by source, medium, campaign and content. Clicks or sessions alone are not enough to assess effectiveness. You need to check whether a given channel brings in users who complete the desired actions. The most useful report is the one that combines campaign cost with conversions and traffic quality, not just the number of visits.

In practice, it is best to start the analysis at campaign level. This shows whether the entire marketing activity generated traffic and results aligned with the objective. Only then is it worth drilling down to source and medium to see which channels delivered the best outcome, and finally to content to compare creatives, messages or CTA buttons.

The choice of metrics depends on what the campaign is meant to achieve. In sales, the key metrics are transactions, revenue, acquisition cost and conversion rate. In lead generation, submitted forms, calls, registrations and other events that complete the journey come to the fore. For a reach campaign, it is additionally worth tracking engagement, session quality and further visits to important subpages.

UTM parameters also make it easier to spot data issues. If the report shows similar campaigns under several names, values such as not set, or untagged traffic where it should be tagged, that is a sign the link publishing process needs correcting. Campaign analysis should always include a short data quality audit, because incorrect names can hide the real result.

When interpreting results, you need to take the specifics of the analytics tool into account. In GA4, acquisition reports are based on specific session and user dimensions, so the same traffic may look different depending on the report. On top of that come privacy limitations, script blocking and differences between a click and a recorded session. UTM tidy up the entry source, but they do not close all measurement-related issues.

The most accurate decisions usually come from comparing several levels at once. When a campaign has a strong CTR but weak conversions, the cause is often the landing page or mismatched messaging. If one medium converts better than another within the same campaign, it is often worth shifting the budget there. UTM are most valuable when they lead to a concrete decision: increase, reduce, improve the creative or fix the measurement.

Optimising and auditing data with UTM parameters

Optimising and auditing data with UTM parameters comes down to regularly catching naming errors, missing tags and mismatches between the campaign plan and what ultimately lands in analytics. In practice, the point is to make reports comparable month to month and across channels. Without such control, even correctly launched campaigns start leaving a mess in the data over time. The biggest problem usually is not the UTM themselves, but the lack of ongoing quality control after links are published.

It is better to carry out an audit cyclically rather than wait until the results “do not add up”. The simplest approach is to check before the campaign starts, verify quickly after publication and review traffic acquisition reports regularly. In such a review, you are mainly looking for typos, different variants of the same name, values such as not set or undefined, as well as traffic attributed to the wrong medium.

Solid optimisation starts with organising the naming dictionary. If the reports show facebook, Facebook and FACEBOOK at the same time, those are not three traffic sources but one channel recorded in three variants. Capitalisation, abbreviations and separators should be consistent, because the analytics tool usually recognises such differences as separate rows of data.

In an audit, it is also worth checking whether the parameters disappear along the way. Typical problems are caused by redirects, link shorteners, incorrect landing page settings or in-app mechanisms that trim part of the URL. If the UTM no longer remain in the address after the click or the session reaches analytics without tags, the campaign report loses value even if the placement itself is working perfectly.

Optimisation should end with a change to the process, not just a correction to a single link. When the same mistake keeps coming back like a boomerang, you need to clarify the rules, simplify the naming or implement a link generator with field validation. The less manual UTM entry there is across many people, the lower the risk of fragmenting the data. This is especially important in teams where campaigns are published by marketers, salespeople, partners or agencies.

It is also worth analysing UTM in the context of the whole measurement setup, rather than treating them as the only source of truth. Auto-tagging in ad systems, privacy limitations, cookie consent and script blocking can all affect data completeness. UTM tidy up the entry source, but they do not replace proper analytics configuration and conversion tracking. That is why the best results come from combining consistent tagging, technical tests and regular report audits.

FAQ

Frequently asked questions

How do UTM parameters work in practice?

UTM is additional labelling appended to a URL that tells analytics where the user came from. After clicking the link, the tool reads these parameters and assigns the session to the relevant sources, media and campaigns.

Why is consistent UTM naming so important?

Because without common rules, one campaign can be split into several separate sources due to differences in letters, separators or abbreviations. This makes reports less clear and makes results harder to compare.

How should UTM be implemented correctly in a marketing campaign?

You need to establish one naming convention, assign parameters to channels and test the link before publishing. It is also worth making sure the parameters do not get lost after redirects and link shorteners.

Can UTM be used for internal links on a site?

It is not recommended, because UTM can overwrite the original session source and distort attribution. Events are better for measuring internal navigation.

What are the most common mistakes when using UTM?

The most common issues are inconsistent naming, tagging internal links and mixing manual UTM with auto-tagging without clear rules. Another problem is failing to test before publishing and parameters disappearing after a click.

What is worth checking after launching a campaign with UTM?

You need to check whether traffic is reaching analytics with the correct labels and whether there are any duplicate names or unlabeled values. It is also worth comparing reports with the media plan to quickly catch errors.

Contents