Build tagged campaign URLs with utm_source, utm_medium and utm_campaign — correctly encoded, in your browser.
A UTM-tagged URL is your normal link plus a handful of query parameters that analytics tools read as campaign metadata. utm_source says where the visit came from (google, newsletter, instagram), utm_medium says what kind of channel it was (cpc, email, social) and utm_campaign names the initiative (black-friday). Two optional ones complete the set: utm_term for the paid keyword and utm_content to tell two creatives apart. GA4, Matomo, Plausible and most other platforms look for exactly these parameter names and group traffic by their values — which is why one capital letter or a stray space can split a single campaign into three separate lines in your report.
This builder handles the fiddly part correctly. It keeps whatever query string and #fragment the destination URL already has, appends parameters after a ? or an & depending on what is already there, and runs every value through encodeURIComponent — so an ampersand inside a campaign name becomes %26 instead of quietly starting a new parameter, and an accented word becomes valid percent-encoded UTF-8. If a utm parameter you are filling in already exists in the pasted URL, the old value is replaced rather than duplicated. The normalisation switch lowercases values and turns spaces into underscores, the convention most teams adopt after their first messy report.
Use it for paid ads, for the link in a bio, for a newsletter button, for the QR code on a flyer — anywhere you will later want to answer "where did these people actually come from?". One catch: tagged URLs are long and visibly instrumented, and people hesitate before clicking them. Shortening the finished link on Vai.la keeps every UTM parameter intact through the redirect while showing something clean and presentable, and adds its own click statistics on top. Everything on this page runs as JavaScript on your device: the URLs you build are never sent to a server.
final URL = base URL + (? if it has no query, otherwise &) + utm_key=encodeURIComponent(value), joined by &, with the original #fragment moved back to the end.
utm_source, utm_medium and utm_campaign are the three that matter — analytics reports are built around them. utm_term and utm_content are optional refinements for paid keywords and creative variants.
Yes, as a rule. GA4 treats "Facebook" and "facebook" as two different sources, so mixed capitalisation fragments your reports. The normalisation option here lowercases values and replaces spaces with underscores.
Not in practice, as long as the tagged pages declare a canonical URL without the parameters. Search engines treat query strings as potential duplicates, and the canonical tag tells them which version to index.
Yes. A short link redirects to the full URL, parameters included, so analytics still records source, medium and campaign — you just stop showing a 200-character link to your audience.
No. The URL is assembled by JavaScript running on your device. Nothing is uploaded, logged or stored by this page.
Vai.la turns any URL into a short link with click statistics, QR Code and your own biolink.
Vai.la is not responsible for how the tools are used or for decisions made based on their results.