Skip to content
PostRoost

UTM link builder for social media posts

Add campaign parameters to the links you post, so your web analytics can tell which network and campaign each visit came from. Builds, encodes and copies the link in one step.

The page people should land on, e.g. https://example.com/spring-menu

Where the click comes from, e.g. instagram, linkedin, newsletter.

The channel type, e.g. social, paid_social, email.

The promotion, e.g. spring_launch_2026.

Optional ID that matches your campaign records.

Optional: tells two links in the same post or carousel apart.

Optional: mainly for paid keywords.

The parameters

ParameterRequired hereUse it forExample
utm_sourceYesWhere the click comes frominstagram, linkedin, newsletter
utm_mediumYesThe type of channelsocial, paid_social, email
utm_campaignYesThe promotion or campaignspring_launch_2026
utm_idNoA campaign ID that matches your recordssl26
utm_contentNoTelling two links in the same post or carousel apartfirst_image, bio_link
utm_termNoPaid keywords; rarely needed for organic social

Google Analytics recommends always setting source, medium and campaign, and treats values as case sensitive: “Instagram” and “instagram” become two different sources. That is why the builder lower-cases values by default.

What the builder does with your link

Pick a naming scheme once (for example source = network name, medium = social) and keep it, or your reports will split the same traffic into several rows. Nothing you type leaves your browser.

Sources

Facts on this page were checked against the sources below on . Networks change their limits; we re-check these sources whenever we update the tool.

Frequently asked questions

10 questions

What are UTM parameters?

Tags added to the end of a link that tell web analytics where a visit came from: the source, the medium and the campaign, plus optional details.

Which parameters do I need?

utm_source, utm_medium and utm_campaign. Google Analytics recommends always setting all three; the others are optional.

Why does the builder lower-case my values?

Google Analytics treats values as case sensitive, so "Instagram" and "instagram" become two sources. Lower-casing keeps reports tidy; you can switch it off.

What should I use as the medium for social posts?

Use one consistent value such as social for organic posts and something like paid_social for ads, so the two never mix.

Will UTM tags break a link that already has parameters?

No. The builder keeps existing query parameters and any #fragment, and replaces utm_ parameters with the same names, telling you when it does.

Do UTM tags work in Instagram or TikTok captions?

Caption links are not clickable there, so tag the link on your profile instead. On Pinterest, Facebook, LinkedIn and X, tag the post's link.

Do long tagged links waste space on X?

No. X counts every link as 23 characters, however long it is.

When should I use utm_content?

When one post or carousel has several links, or to tell a bio link apart from a post link. Give each a short, distinct value.

Does PostRoost add UTM tags automatically?

No. Build the link here and paste it into the composer's Link field or your spreadsheet before you upload.

Is the link I build sent to PostRoost?

No. The builder works entirely in your browser.

Get your next month of posts approved and scheduled

Start on the Free plan with one client. Upgrade when you need approvals, more people or more clients.

The PostRoost calendar on a laptop and the approvals list on a phone, with demo data

Latest from the blog

View all articles