UTM Link Builder

Paste your page URL, fill in the campaign details, and get a clean, properly encoded tracking link for GA4 in one click.

What are UTM parameters?

UTM parameters are five small tags you append to a URL — utm_source, utm_medium, utm_campaign, utm_term and utm_content. When someone clicks the tagged link, your analytics (GA4 included) reads the tags and attributes the session to the right channel and campaign. Without them, traffic from emails, social posts and paid ads lands in vague buckets like "direct" or "referral," and you can't tell which campaigns actually worked.

What each parameter answers

Worked example. Base URL https://example.com/pricing, with source=newsletter, medium=email, campaign=spring-launch:

https://example.com/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=spring-launch

GA4 will report every session from that link under source "newsletter", medium "email", campaign "spring-launch" — so you can compare it directly against your other channels in the traffic acquisition report.

UTM naming tips

Naming-convention mistakes to avoid

Frequently asked questions

Do UTM parameters affect SEO?

Not meaningfully. Google treats UTMs as standard query parameters and is good at identifying the canonical version of a page. To be safe, keep a self-referencing canonical tag on your pages and don't use UTMs on links you want indexed, such as in your sitemap or internal navigation.

Should I tag internal links with UTMs?

No. Tagging links inside your own site overwrites the original session source in GA4, so a visitor who arrived from paid search and then clicked a tagged banner gets re-attributed to the banner. Reserve UTMs for external traffic only — ads, emails, social posts and partner links.

What is the difference between utm_source and utm_medium?

utm_source names where the traffic came from (the referrer, e.g. google, newsletter, facebook), while utm_medium names the marketing channel type (e.g. cpc, email, social). Think of it as: source = who sent it, medium = how it was sent. A useful pattern is utm_source=facebook + utm_medium=paid_social.

Why is my campaign data split into two rows in GA4?

Almost always a casing or spacing inconsistency: "Spring-Launch" and "spring-launch" (or "spring launch" vs "spring_launch") are treated as different campaigns because UTM values are case-sensitive. Pick lowercase, hyphenated names once, write them down, and never deviate.

Do I still need UTMs if my ads use auto-tagging?

Auto-tagging from Google Ads (gclid) and Meta works inside their own reports, but UTMs give you a platform-independent record of source, medium and campaign that survives in GA4 regardless of ad platform. The safest setup is auto-tagging on plus UTMs on every ad URL, so your data stays consistent and auditable.