How it works
UTM parameters are tags appended to URLs that tell Google Analytics which campaign, source, and medium drove a visit. Without UTM parameters, social traffic appears as "Direct" in GA4, making it impossible to attribute ROI to specific campaigns. The UTM Builder generates tagged URLs from your base URL and campaign details — and saves a history of past UTMs in the browser for reuse.
UTM parameter fields: - utm_source (required): the traffic source — e.g., "instagram", "newsletter", "youtube", "linkedin" - utm_medium (required): the marketing channel — e.g., "social", "email", "cpc", "organic" - utm_campaign (required): the specific campaign name — e.g., "spring-sale-2025", "product-launch-v2", "weekly-digest-apr" - utm_content (optional): differentiates between links in the same campaign — e.g., "bio-link", "story-swipe-up", "header-button" — essential for A/B testing - utm_term (optional): used for paid search, identifies the keyword that triggered the ad
How to use: 1. Enter your destination URL. 2. Fill in the required fields (source, medium, campaign). 3. The tagged URL is generated — with automatic lowercase conversion and space-to-hyphen normalisation (Google Analytics is case-sensitive; inconsistent capitalisation fragments your data into separate rows). 4. Click to copy the full URL. 5. Saved UTMs appear in the history panel below — click any past entry to reload the form with those parameters.
Naming conventions: establish a team standard before building UTMs at scale. "Instagram" vs "instagram" vs "IG" all create separate rows in GA4. Stick to lowercase, hyphen-separated values.
Privacy: UTM history is saved in browser localStorage. No URLs are transmitted.
Frequently Asked Questions
- utm_source identifies where the traffic comes from (the specific referring entity): 'instagram', 'newsletter', 'google', 'youtube'. utm_medium identifies the type of marketing channel (the mechanism of delivery): 'social', 'email', 'cpc', 'organic'. For a link in a Twitter/X post: source = 'twitter', medium = 'social'. For a link in a Google paid ad: source = 'google', medium = 'cpc'. The distinction enables GA4 to group sources by medium for channel-level analysis.
- No. UTM parameters are stripped by Google before canonicalisation for SEO purposes — they don't fragment your canonical URL or create duplicate content issues. Google recognises that the base URL and the UTM-tagged URL are the same page. However, if users share UTM-tagged URLs (e.g., a blog post with campaign parameters), those inbound links pass link equity to the base URL correctly.
- GA4 treats UTM values as case-sensitive strings. 'Instagram' and 'instagram' are recorded as two separate source values. This fragments your channel data — traffic appears spread across multiple rows instead of consolidated in one. The tool enforces automatic lowercase conversion on all UTM fields to prevent this. Establish a team naming convention (all lowercase, hyphens instead of spaces) and document it before building UTMs at scale.
- Yes, with one exception: do not add UTM parameters to your canonical URLs if you're sharing the content itself (like your homepage or a blog post) — users who then share those links will spread the UTM-tagged version, polluting your analytics with campaign parameters on organic shares. Use UTM parameters on specific deep links (product pages, landing pages, signup forms) where you specifically need to track which campaign drove the conversion.