UTM parameters are short tags added to the end of a link, like ?utm_source=whatsapp&utm_medium=broadcast&utm_campaign=diwali_sale, that tell GA4 and other analytics tools exactly where a visitor came from. Tag every link you share outside your website (ads, WhatsApp broadcasts, emails, social bios, QR codes) using a consistent lowercase naming convention, and your reports will finally show which campaigns make money.
The five UTM parameters
| Parameter | Required? | What it means | Example |
|---|---|---|---|
| utm_source | Yes | Where the traffic comes from | whatsapp, instagram, newsletter |
| utm_medium | Yes | The type of channel | broadcast, paid_social, email, qr |
| utm_campaign | Yes | The specific campaign | diwali_sale_2026 |
| utm_content | Optional | Which creative or link | reel_a, button_top |
| utm_term | Optional | Keyword (mostly paid search) | crm_software |
Build one in 30 seconds
Use our free UTM builder: paste your URL, fill in the fields, copy the link. Then shorten it for WhatsApp or SMS, or turn it into a QR code with the QR code generator.
A naming convention that stays clean
- Lowercase only, with underscores instead of spaces
- Fixed source list: google, meta, instagram, facebook, linkedin, youtube, whatsapp, email, sms, rcs, qr, partner
- Fixed medium list: cpc, paid_social, organic_social, broadcast, email, sms, qr, referral
- Campaign format:
goal_offer_month_year, e.g.leads_freeaudit_oct_2026 - Document it in a shared sheet your whole team uses
Examples by channel
| Channel | Example tags |
|---|---|
| WhatsApp broadcast | source=whatsapp · medium=broadcast · campaign=festive_offer_oct_2026 |
| Instagram bio | source=instagram · medium=organic_social · campaign=bio_link |
| Meta ad | source=meta · medium=paid_social · campaign=leads_demo_oct_2026 · content=ugc_reel_1 |
| Newsletter | source=newsletter · medium=email · campaign=product_update_oct_2026 |
| Printed QR on packaging | source=packaging · medium=qr · campaign=reorder_2026 |
| RCS message | source=rcs · medium=rich_card · campaign=cart_recovery |
Reading UTMs in GA4
Go to Reports → Acquisition → Traffic acquisition and switch the dimension to Session campaign or Session source / medium. Combine it with conversions (form submits, WhatsApp clicks, purchases) to see revenue by campaign.
Common mistakes
- Tagging internal links: this resets sessions and breaks attribution
- Mixed case: "Instagram" vs "instagram"
- Vague campaigns: "test1", "new"
- Forgetting WhatsApp and QR links: they show up as direct traffic
- Leaking personal data in UTMs: never put phone numbers or emails in URLs
Pro tips
- Use utm_content to A/B test buttons or creatives in the same email or broadcast.
- Add a campaign ID that matches your ad platform naming.
- Review tagged traffic weekly and prune unused campaign names.
Related: Google Ads cost in India and the glossary entry for UTM parameters.




