utm link builder.
tag every link with source, medium and campaign
https://yourstore.com/products/bestseller?utm_source=facebook&utm_medium=paid-social&utm_campaign=bfcm-2026
> worked example
A Shopify brand running Black Friday ads selects the Meta preset (source=facebook, medium=paid-social), types the campaign name bfcm-2026, and pastes their hero product URL. The tool instantly renders the full tagged URL: https://yourstore.com/products/bestseller?utm_source=facebook&utm_medium=paid-social&utm_campaign=bfcm-2026. They copy it into Ads Manager, then hit 'copy as QR code' to generate a 256 px PNG for a printed in-store BFCM poster. GA4 and Shopify analytics will attribute all sessions cleanly to that campaign.
takeaway, Picking a channel preset fills source and medium correctly in one click, no hand-typed utm strings, no mis-attributed revenue.
> when operators reach for this
- Performance marketers at Shopify brands tagging every Meta and Google ad URL before Black Friday to ensure clean channel attribution in GA4.
- Email marketers on Klaviyo adding utm_source=klaviyo / utm_medium=email to every CTA link so Shopify and GA4 don't credit sessions to '(direct)'.
- Ecommerce agencies managing multi-brand accounts who need a fast, consistent UTM convention across all client campaigns without a shared spreadsheet.
- Affiliate managers issuing partner-specific utm_content values so individual affiliates' traffic is separated in reporting.
- TikTok Shop sellers generating tagged links for creator briefs so UGC-driven traffic is attributed separately from paid TikTok ads.
> the calculation
- utm url structure
base-url?utm_source=SOURCE&utm_medium=MEDIUM&utm_campaign=CAMPAIGN[&utm_term=TERM][&utm_content=CONTENT]Parameters are appended to any existing query string. Order does not affect attribution. - slugify rule
lowercase → strip non-alphanumeric → spaces to dashes → collapse consecutive dashesApplied automatically to source, medium, campaign, term, and content to prevent case-mismatch splits in GA4. - meta preset
utm_source=facebook · utm_medium=paid-socialUse utm_content to distinguish ad creative variants (e.g. hero-v1 vs carousel-v2). - google preset
utm_source=google · utm_medium=cpcGA4 auto-tags Google Ads by default; manual UTMs override auto-tagging, confirm GCLID is still passed. - klaviyo preset
utm_source=klaviyo · utm_medium=emailKlaviyo appends its own _kx parameter; combine with utm tags for full attribution.