When you put the same link into a newsletter, on Facebook and on a poster, the destination site cannot tell who came from where. UTM parameters are the agreed way to tell it: pairs of utm_...=value are appended to the address and the analytics sorts them out.
Three parameters that are enough
| Parameter | Meaning | Example |
|---|---|---|
utm_source | where the visit came from | newsletter, facebook, poster |
utm_medium | the type of channel | email, social, print, qr |
utm_campaign | the campaign name | spring-2026, store-opening |
There are also utm_term (the keyword in paid search) and utm_content (to tell two links in the same medium apart, such as a button and a text link). Most campaigns manage with the first three.
A finished address looks like this:
https://example.com/sale?utm_source=newsletter&utm_medium=email&utm_campaign=spring-2026
Rules that save trouble
- Lowercase, ASCII only.
Facebookandfacebookare two sources to an analytics tool. - One convention for the whole team. Write down the allowed values for
utm_sourceandutm_mediumand do not invent new ones for every campaign. - No UTM on internal links within your own website. They would overwrite the original source of the visit.
- One short link per channel. Then you do not depend on the destination’s analytics alone: the click count sits right next to each link.
UTM parameters inside a short link
A long address with parameters looks ugly in text and does not belong on a poster at all. The fix is to hide it in a short link. On skrat.im open More options and fill in source, medium and campaign. The parameters are appended to the destination and people only see skrat.im/spring.
The API accepts the same fields (utm_source, utm_medium, utm_campaign, utm_term, utm_content), so campaign links can also be generated by a script or by an AI agent over MCP.
Reading the results
The destination site’s analytics shows visits split by source and campaign. On skrat.im, under My links, each link shows clicks per day, countries, devices and the pages people came from. Comparing the two numbers also tells you how many clicks were lost on the way, for example because the destination page loads slowly.
Frequently asked questions
Do I need Google Analytics for UTM parameters to make sense?
No. Most analytics tools read UTM parameters, including Plausible, Matomo and Umami. And skrat.im counts clicks on the short link even without any analytics on the destination site.
Why should utm_source be lowercase?
Analytics tools are case-sensitive: "Facebook" and "facebook" would count as two different sources. Agree on one spelling and stick to it.
Does a long link with UTM parameters hurt click-through?
In text, yes; long addresses with parameters look untrustworthy. That is why UTM parameters are hidden inside a short link: people see skrat.im/spring, the analytics gets the full parameters.