Build consistent GA4 campaign URLs with validated parameters, channel presets, and local campaign memory. Existing non-UTM query parameters stay intact.
Runs entirely in your browser. Your links never leave this page.
Composes live. Paste an already-tagged URL and its parameters get lifted into the fields.
Two clicks for the common channels, and the naming rules that keep reports readable.
Fills source and medium with the conventional pair; your campaign name stays put.
The five rules that decide whether your reports are readable in six months.
GA4 is case-sensitive. Email, EMAIL, and email land as three separate rows in every report, forever.
spring-launch survives encoding, copy-paste, and spreadsheets. spring%20launch does not.
newsletter / email / spring-launch reads instantly. Keep each parameter answering exactly one question.
A UTM on a link between your own pages overwrites the visitor’s real acquisition source mid-session.
One shared page of allowed sources and mediums beats every clever tag. Consistency is the whole game - collected data cannot be retagged.
Every number this tool shows, and where it comes from.
The parameters. utm_source (where the click came from), utm_medium (the channel type), utm_campaign (the specific push), plus optional utm_id, utm_term, and utm_content for manual campaign IDs, paid keywords, and creative variants. Reference: Google’s campaign URL documentation.
How composition works. The tool parses your URL with the browser’s URL API, keeps every existing non-UTM query parameter, replaces any UTM parameters with the field values, and percent-encodes as the spec requires. Paste a pre-tagged link and its UTM values are lifted into the fields so you can see and fix them.
Why medium matters more than it looks. GA4’s default channel grouping buckets traffic by pattern-matching source and medium - email, cpc, social, referral. A misspelled medium lands the whole campaign in “Unassigned,” and collected data cannot be retagged after the fact. Reference: GA4 default channel groups.
Campaign memory. Your last source, medium, and campaign persist in this browser’s localStorage so a batch of links stays consistent across visits. Nothing is sent anywhere; clear your browser storage and it is gone.
What this tool is not. It composes URLs - it does not shorten them, track clicks, or report on results. The tracking happens in your analytics tool; this page just makes sure what arrives there is clean.
Parameter behavior last verified against GA4 documentation 2026-07-03.
The rest of the toolkit runs in your browser too.
Open Orbit to keep CRM updates, outreach drafts, follow-ups, and approvals in one place.
500 trial credits. Card required. $0 charged today.