Is this only for paid ads?
No. It works for broader campaign link building across paid, organic, creator, email, and local traffic workflows.
What happens if the URL already has query params?
The builder keeps non-UTM query params and replaces old UTM values with the new ones you enter.
Does it work entirely in the browser?
Yes. The link is generated, validated, and copied locally.
Which UTM parameters are actually required?
utm_source, utm_medium and utm_campaign. GA4 will attribute a session with utm_source alone, but without a medium your traffic falls into Unassigned in the default channel grouping, which makes the data useless in practice.
Are UTM parameters case-sensitive?
Yes, in GA4. Facebook and facebook are two distinct sources and will appear as two rows. That is why this builder lowercases every static value before it writes the URL.
What utm_medium values should I use?
Stick to values GA4's default channel grouping already recognises: cpc, paid_social, organic_social, email, referral, affiliate, display. Inventing your own medium is the fastest way to end up with an Unassigned channel.
Will this break the parameters already on my landing page?
No. Non-UTM query parameters are preserved and so is the fragment after the hash. If the URL already carries a utm_ parameter, the value you enter here replaces it, and the tool warns you first.
Should I put UTMs on internal links?
No. A UTM on an internal link restarts the session attribution and overwrites the real source with your own tag, which is how organic traffic mysteriously becomes email traffic. Use UTMs only on links coming from outside your site.