UTM Link Builder
Add utm_source, utm_medium, utm_campaign and other UTM parameters to a URL. The tool keeps existing parameters and #fragments and encodes values.
Existing parameters and any #fragment are kept.
91 characters · 3 UTM parameters
https://example.com/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale
The referrer: who sends the traffic.
The marketing medium. In Google Analytics 4 "email" maps to Email.
Product, slogan or promo code.
Paid keyword.
Tells creatives or links apart, such as two links in one email.
Identifies a specific campaign or promotion.
Links from this session (0)
A link is added when you copy it. The list is kept in this page’s memory only: it is not saved or sent anywhere, and reloading clears it.
The link is built in your browser. The URL and values are not sent to our server.
01 · Definition
What is a UTM builder?
A UTM builder adds campaign parameters such as utm_source, utm_medium and utm_campaign to a link, so that analytics tools can report which email, ad or post a visit came from. The parameters are ordinary query-string values: they do not change the page that opens, only how the visit is labelled in reports.
02 · Overview
How the UTM Link Builder works
The tool builds a campaign URL from a page address and up to six UTM parameters: utm_source, utm_medium, utm_campaign, utm_term, utm_content and utm_id. The address is parsed with the browser's URL API, so parameters that are already there are kept, a UTM parameter that is already there is replaced rather than duplicated, and everything goes before the #fragment. Values are percent-encoded, lower-cased by default, and spaces become underscores, hyphens or %20. Medium presets fill in common values, bulk mode tags up to 200 URLs at once, and links you copy are listed for the rest of the session. The link is built in your browser and is not sent to our server.
03 · Guide
UTM parameters explained
The descriptions are Google's, from the Analytics help page on URL builders, as are the examples where Google gives one. Google says to always use utm_source, utm_medium and utm_campaign when you add parameters. None is technically required, and they can be in any order.
Google lists three more parameters that this tool has no fields for: utm_source_platform, utm_creative_format and utm_marketing_tactic. Google notes that the last two are not currently reported in Analytics. If you type them into the page URL, they are kept.
| Parameter | Google's description | Example |
|---|---|---|
| utm_source | Referrer | google, newsletter4, billboard |
| utm_medium | Marketing medium | cpc, banner, email |
| utm_campaign | Product, slogan, promo code | spring_sale |
| utm_term | Paid keyword | None given |
| utm_content | Use to differentiate creatives | toplink |
| utm_id | Campaign ID, to identify a specific campaign or promotion | None given |
04 · Guide
utm_medium values and Google Analytics 4 channels
Google Analytics 4 sorts traffic into default channel groups with fixed rules, and most of those rules read utm_medium. A value the rules do not know is reported as Unassigned. The presets in this tool use values the rules recognise, except qr, which has no rule: it is a common convention for printed codes and needs a custom channel group to show up as its own channel.
| utm_medium | Default channel | Rule |
|---|---|---|
| Medium is email, e-mail, e_mail or e mail | ||
| cpc | Paid Search, Paid Social or Paid Other | Medium contains cp, is ppc or retargeting, or starts with paid; the source decides which |
| social | Organic Social | Medium is social, social-network, social-media, sm, or the source is a known social site |
| referral | Referral | Medium is referral, app or link |
| display | Display | Medium is display, banner, expandable, interstitial or cpm |
| affiliate | Affiliates | Medium is affiliate |
| sms | SMS | Medium or source is sms |
| qr | Unassigned | No default rule |
05 · Use cases
When to use the UTM Link Builder
- 01
Tag the links in a newsletter so its visits show up under Email
- 02
Give each ad or social post its own utm_content to compare them
- 03
Tag a URL before turning it into a QR code for print
- 04
Tag a list of landing pages for one campaign in bulk
06 · Examples
UTM Link Builder examples
https://example.com/pricing + source newsletter, medium email, campaign spring_sale
ex 01https://example.com/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale
The three parameters Google says to always use.
https://example.com/pricing?plan=pro#faq with the same values
ex 02https://example.com/pricing?plan=pro&utm_source=newsletter&utm_medium=email&utm_campaign=spring_sale#faq
plan=pro is kept, and the UTM parameters go before #faq so the page still scrolls to that section.
Campaign “50% off + more”, spaces as underscores
ex 03utm_campaign=50%25_off_%2B_more
Characters with a meaning in URLs are percent-encoded, so the value reads back exactly as typed.
https://example.com/?utm_source=old&x=1 + source new
ex 04https://example.com/?x=1&utm_source=new
A UTM parameter that was already in the URL is replaced, not added a second time. The tool says which one it replaced.
07 · FAQ
UTM Builder: frequently asked questions
Which UTM parameters are required?
Are UTM values case-sensitive?
What happens to parameters and fragments already in my URL?
How are spaces and special characters handled?
Does the order of UTM parameters matter?
Which utm_medium should I use?
Is my link history saved?
Are my URLs sent to your server?
08 · Reference
Specs and further reading
These are the primary sources this tool follows. Where a specification defines the behaviour, we link the specification, not a summary of it.
- URL builders: Collect campaign data with custom URLs
Google Analytics Help. Defines each UTM parameter, says which three to always use, and states that values are case sensitive.
- Default channel group
Google Analytics Help. The rules that map utm_medium and utm_source values to GA4 channels.
- RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
IETF. Defines the query as running from the first ? to the #, which is why parameters go before the fragment.
- encodeURIComponent()
MDN Web Docs. The function used to encode each value, and the characters it leaves unescaped.
09 · More
Tools that pair with UTM Builder
QR Code Generator
Make a QR code for a URL, text, a WiFi network or a vCard contact. Download as SVG or PNG up to 2,048 px. Codes are static, with no redirect or expiry.
Slug Generator
Convert a title into a URL slug as you type. Choose hyphen or underscore, case and a maximum length; accents become ASCII. One title per line for bulk.
Meta Tags Generator
Generate the SEO, Open Graph and Twitter Card meta tags for a page, with a link preview. An AI model can suggest the title and description from a brief.
Robots.txt Generator
Build a robots.txt file with Allow and Disallow rules per crawler, sitemap lines and presets for blocking AI training bots. Copy or download it.