LinkScaleLinkScale

Free UTM builderfor links that track themselves.

Tag a link so your analytics can tell you where the click came from. Channel presets that pick a medium GA4 actually understands, a batch mode for a whole campaign at once, and a warning when you spell a source two different ways.

100% freeNo sign-upRuns in your browser

The page the link points to. Type it however you like, https:// is added when you leave it out.

Start from where the link will live

Each preset sets a source and a medium that GA4 files under the right channel. The medium is what decides that, and getting it wrong is what puts a campaign in Unassigned.

Where the click comes from: instagram, newsletter, partner name.

The kind of channel: social, email, cpc, referral. This is the one that decides your channel report.

The push this link belongs to: spring_sale, launch_v2.

The keyword you bought. Paid search only, leave it empty otherwise.

Tells two links in the same campaign apart: bio_link and story_sticker, or button and text link.

Conventions

UTM values are case sensitive in reports, so Instagram and instagram become two separate sources. One casing rule, applied to every link, is the only thing that prevents it.

Your tracking link

Fill in a destination and your link appears here.

Turn it into a QR code

Everything runs in your browser. No URL you paste here is sent anywhere, logged or stored on a server.

This tool builds a link and hands it to you. It does not shorten it, host it or redirect it, so nothing here can ever expire.

Why use UTM parameters?

UTM parameters let you know where your visitors come from and which campaigns actually drive clicks. Without them, all your traffic blends together and becomes impossible to analyze.

Know where your clicks come from

Pinpoint the exact platform, campaign and channel behind every visit.

Measure every campaign

Compare Instagram, newsletter, ads or TikTok and see what really drives traffic.

Decide with data

Spend your time and budget where your links actually convert.

How to fill in the UTM fields?

Each parameter has a precise role. Here is how to use them correctly, with an example and the most common mistake to avoid.

ParameterWhat it doesExample
utm_sourceSource

The platform or website the visitor comes from.

Avoid uppercase and spaces: “Instagram” becomes “instagram”.

instagram, newsletter, google
utm_mediumMedium

The type of marketing channel used.

Don’t mix up source and channel: “instagram” is not a medium.

social, email, cpc, referral
utm_campaignCampaign

The name of your campaign or marketing operation.

Keep a consistent naming convention across all your campaigns.

summer_launch, black_friday
utm_termTerm

The targeted keyword, mainly for paid campaigns.

Not needed for most organic campaigns.

running_shoes
utm_contentContent

Tells apart two links pointing to the same place.

Great for A/B testing, otherwise optional.

bio_button, story_link, ad_a

UTM link examples

Ready-to-use combinations for your most common channels.

Instagram bio

utm_source
instagram
utm_medium
social
utm_campaign
bio_link

https://example.com/?utm_source=instagram&utm_medium=social&utm_campaign=bio_link

Newsletter

utm_source
newsletter
utm_medium
email
utm_campaign
weekly_update

https://example.com/?utm_source=newsletter&utm_medium=email&utm_campaign=weekly_update

Google Ads

utm_source
google
utm_medium
cpc
utm_campaign
search_campaign

https://example.com/?utm_source=google&utm_medium=cpc&utm_campaign=search_campaign

TikTok

utm_source
tiktok
utm_medium
social
utm_campaign
creator_launch

https://example.com/?utm_source=tiktok&utm_medium=social&utm_campaign=creator_launch

UTM best practices that survive three months

Most UTM advice is about the first link. The rules that matter are the ones still holding when a second person tags a campaign in a quarter you have half forgotten.

    Decide the medium list before you decide anything else

    social, email, cpc, referral, affiliate, display. Six values, written down, and nothing outside them. The medium is the only parameter that changes which channel a click is grouped into, so an invented one does not fail loudly, it quietly leaves the campaign out of the report you actually read.

    Tag the link once, at the moment you create it

    Tagging later means someone reconstructing where a link was posted from memory. The link that goes into the scheduler, the newsletter and the bio should already carry its parameters, which is why a batch mode matters more than it sounds: ten placements tagged in one pass cannot drift from each other.

    Keep the campaign name stable and put the variation in content

    One campaign name across every channel, then utm_content for what differs. Rename the campaign per channel and you lose the one number you wanted, which is what the whole push did. Source and medium already tell you the channel.

    Never tag an internal link

    A UTM parameter on a link between two of your own pages restarts the session and overwrites the original source. The visitor who arrived from your newsletter becomes a visitor from your own site. This is the single most expensive UTM mistake, and it is always self-inflicted.

    Review the source list every quarter

    Open your source and medium report and read it as a list of spellings rather than a list of channels. Every near-duplicate you find is a rule that was not written down. Fixing the convention takes ten minutes, and unpicking a year of split rows does not.

utm_term or utm_content, what is the difference?

They are the two optional ones, they sound interchangeable, and they are not. The confusion between them is the most common reason a set of UTM parameters produces a report nobody can act on.

utm_term answers "what did they search for"

It exists for paid search. You bought a keyword, someone typed it, the ad appeared, and the term records which keyword it was. On a social post, in a newsletter or on a printed QR code there is no keyword, so there is nothing to put in it. Leaving it empty is the correct answer, not a missing field.

utm_content answers "which one of these did they click"

It separates two links that are otherwise identical. Same campaign, same source, same medium, but one is the button at the top and one is the text link at the bottom. Or the bio link and the story sticker. It is the only parameter that tells you which creative earned the click, which makes it the most useful and the most skipped.

Why does Instagram appear twice in your analytics?

Because it is not one Instagram. It is instagram, Instagram, ig and instagram.com, tagged by four people over six months, and your report shows them as four sources because that is exactly what they are.

Capitals split a source in two

UTM values are compared exactly. Instagram and instagram never merge, and no report will tell you they are the same thing. Lowercase is on by default here for that reason, and the tool warns when you type a spelling you have used differently before.

Separators split it again

spring_sale and spring-sale are two campaigns. Pick one separator, apply it to everything, and never think about it again. The tool applies your choice to every value at once so a single link cannot drift.

Parameters after the hashtag are never read

A URL like yoursite.com/page#pricing?utm_source=x is silently useless: everything after the # stays in the browser and is never sent to the server, so your analytics receives nothing. Parameters have to go before the fragment. This is the quietest bug of the lot, and this builder puts them in the right place for you.

A tag added twice, or added over an existing query

Appending to a link that already has parameters is how you get two utm_source values, or a lost ?ref=. Every link here is rebuilt from scratch each time, so existing parameters are preserved, existing UTM tags are shown to you, and nothing is ever stacked twice or encoded twice.

Campaign URL builder: what Google's tool does and doesn't do

Google publishes a campaign URL builder, and for a single link it is fine. The gap shows up the moment you are tagging more than one link, or a second person starts tagging alongside you.

What it does well

It writes a correct query string. Five fields, the right encoding, the parameters in the right place. If you need one tagged link today and you already know which medium GA4 expects, it is enough and it is authoritative.

It has no memory

It cannot know that you wrote instagram last month and Instagram today, because it never saw last month. Consistency is the whole problem with UTM parameters, and a stateless form cannot help with it. The builder here keeps your past values in your own browser and says something when the new one disagrees.

It builds one link at a time

Ten creators promoting the same launch means running the same form ten times and trusting yourself to change exactly one field each time. That is where typos come from. A batch mode turns the same work into one paste and one download.

It does not tell you what a medium will do

Type newsletter into the medium field and it accepts it. GA4 then files the traffic under Unassigned, because the value it maps to the Email channel is email. Nothing warns you, and you find out weeks later when the channel report looks empty. The presets here set a pair that GA4 groups correctly and say why.

Using this as a Google UTM generator

The parameters are a Google convention, so a UTM generator is only useful if what it produces is what Google Analytics actually reads. Three things matter, and only one of them is the query string.

The medium decides your channel report

GA4 groups traffic by matching the medium against a fixed list. cpc reads as paid, email as Email, social as Organic Social. Anything else is accepted and then grouped nowhere useful.

The four newer GA4 parameters are supported

utm_id, utm_source_platform, utm_creative_format and utm_marketing_tactic are documented by Google and accepted by GA4. Two of them are collected without appearing in any report yet, which is worth knowing before you build a convention on them. They are behind the advanced toggle, with that caveat attached.

utm_id is what joins clicks to cost

If you import ad spend into GA4, the campaign ID is the key that ties the two together. It is the one advanced parameter with an immediate payoff, and the one people skip most often because it looks optional.

Nothing is sent anywhere

The link is assembled in your browser. The destination URL you paste is never transmitted, logged or stored, which matters when the page you are tagging is an unreleased product or a client campaign.

URL builder vs UTM builder: same thing?

In practice, yes. The two names describe the same operation and people search for both. The distinction only becomes real when the URL builder in question is not building campaign parameters at all.

When they mean the same tool

Google's own tool is called the Campaign URL Builder, and every parameter it writes is a UTM parameter. So "url builder", "google url builder" and "utm builder" all land on the same job: adding tracking parameters to a link you already have. If that is what you came for, this page is it.

When a URL builder is something else

The phrase is also used for tools that assemble a path from parts, build a query string for an API, or generate a slug. Those never touch utm_source. If you are looking for one of those, this is the wrong page, and knowing that quickly is more useful than a longer explanation.

UTM link generator, UTM maker, UTM code generator: the same tool under three names

These all describe one operation: take a destination, add campaign parameters, hand back a link. The vocabulary changes with who is asking, not with what the tool does. Here is what each phrasing usually means in practice.

UTM link generator

The most common phrasing among people who tag social and newsletter links. It emphasises the output, a finished link ready to paste. This page was that tool until the two were merged, and the presets, batch mode and consistency check all came from it.

UTM maker

Usually someone who wants the shortest path to one working link, with no explanation attached. Fill in the destination, pick where it will live, copy. Everything below the tool is optional reading.

UTM code generator

The word code here means the parameter string, not something you install. There is no script, no snippet and no tag manager involved: a UTM code is text on the end of a URL, and it works the moment the link is clicked.

Campaign URL builder

Google's own name for it, and the one you will see in analytics documentation. Same five parameters, same convention. It is the phrase to use when you want to be understood by someone who lives in GA4.

How do you name campaigns so the reports stay readable?

Not a style question. Every one of these rules exists because breaking it produces a report that splits one number across several rows, and there is no way to merge them back afterwards.

Lowercase everything, no exceptions

The cheapest rule and the one that saves the most. Decide once, apply it to source, medium, campaign and content, and never rely on anyone remembering.

One separator, chosen once

Underscores or hyphens, it genuinely does not matter which. What matters is that the same person does not use both in the same quarter.

Medium comes from a short fixed list

social, email, cpc, referral, affiliate, display. If you are about to invent a medium, you probably want utm_source or utm_content instead. An invented medium does not fail loudly, it just stops being grouped.

Campaign names carry a date or a version

spring_sale is ambiguous by the second year. spring_sale_2026 is not. You will thank yourself the first time you compare two runs of the same push.

Write the convention down somewhere

The history in this tool is per browser and per person, so it catches your own drift, not your colleague's. A shared note with the six mediums you allow is what makes it hold across a team.

The logical next step

Why manage your UTM links with LinkScale?

Creating a UTM link is only the first step. With LinkScale, you turn that link into a real marketing asset: shortened, branded, tracked and analyzed.

Shorten your UTM links

Turn a long tracking URL into a short, readable link.

Create branded links

Use your own domain name to build trust.

Track clicks in real time

See every click, by country, device and source.

Analyze your sources

Understand where your best traffic comes from, no complex setup.

Organize your campaigns

Group and find all your marketing links in one place.

Link in bio & landing pages

Reuse your UTM links in your bio page or landing pages.

Frequently asked questions

Still have questions?

Online
Ask us anything about links, pages or pricing…

Real humans, usually replying in a few minutes.

A UTM link is a URL that contains parameters letting you track where a click comes from in your analytics tools, like Google Analytics.

Create cleaner links with LinkScale

Generate your UTM URLs, shorten your links, track clicks and organize all your campaigns from a single platform.

+100% conversion