UTM link builder
Tag a link for Google Analytics in seconds, with presets for Instagram, TikTok, Snapchat, WhatsApp, email and print. It catches the mistakes that split a campaign’s numbers, and shows which GA4 channel the visits will land in.
Your link
Paste the page you are sending people to, then choose where the link goes.
Five tags, one campaign you can actually measure
| Tag | Required | What it is for |
|---|---|---|
| utm_source | Yes | Where the visit comes from: instagram, newsletter, google |
| utm_medium | Yes | The kind of traffic: social, paid_social, email, cpc |
| utm_campaign | Yes | The campaign's name: ramadan_2027, spring_launch |
| utm_content | No | Which ad, post or link: story_1, bio_link, video_a |
| utm_term | No | The search keyword, for paid search |
| utm_id | No | Only if you import cost data into GA4 |
The presets, and where GA4 files them
Each preset uses a medium GA4 recognises, so the visits land in the right channel instead of Unassigned.
| Preset | Source | Medium | GA4 channel |
|---|---|---|---|
| Instagram bio | social | Organic Social | |
| Instagram story | social | Organic Social | |
| Instagram ad | paid_social | Paid Social | |
| TikTok bio | tiktok | social | Organic Social |
| TikTok ad | tiktok | paid_social | Paid Social |
| Snapchat ad | snapchat | paid_social | Paid Social |
| Facebook ad | paid_social | Paid Social | |
| LinkedIn post | social | Organic Social | |
| X post | x | social | Organic Social |
| YouTube description | youtube | video | Organic Video |
| Influencer post | social | Organic Social | |
| WhatsApp message | social | Organic Social | |
| Email newsletter | newsletter | ||
| SMS | sms | sms | SMS |
| Print or QR code | poster | qr | Unassigned |
What splits a campaign's numbers
- Capitals and spaces. Analytics treats Instagram and instagram as two sources. Keep every value lowercase, with underscores.
- Tagging links inside your own site. A UTM link from one of your pages to another starts a new session and wipes out where the visitor really came from. Tag links that come from outside only.
- A made-up medium. Anything GA4 does not recognise lands in Unassigned. Stick to social, paid_social, email, cpc, referral and the others it knows.
- No naming rule. Agree one way to name campaigns (ramadan_2027, not Ramadan27 one week and ramadan-offer the next) and write it down for the whole team.
From tagged links to a client report
Tags make the numbers trustworthy; the report is where they earn their keep. Wiro runs influencer campaigns, PR and paid media per client, and brings the results into one monthly report.
More free tools
No sign-up on any of them. Check a creator before the brief goes out, not after the invoice comes in.
QR code generator
Links, WhatsApp, Wi-Fi and contact cards, in your colours with your logo. Static codes that never expire.
Try it freeAd mockup generator
See your ad as people will, on Meta, TikTok, Snapchat, YouTube, X, LinkedIn, Pinterest and Google Display, before it runs.
Try it freeAd metrics calculator
CPM, CPC, CTR, CPA and ROAS from your numbers, the break-even ROAS for your margin, and a budget split by platform.
Try it freeLink preview checker
See how a link will look on WhatsApp, LinkedIn, X and Facebook, and the tags to fix before you share it.
Try it freeGCC working days calculator
Count working days or find a deadline, with each Gulf country's weekend and public holidays taken out.
Try it freeCampaign naming builder
One naming rule for campaigns, ad sets and ads, the names built from it, and a checker for the ones you have.
Try it freeCommon questions
What are UTM parameters?
Tags added to the end of a link (utm_source, utm_medium, utm_campaign and a few optional ones) that tell Google Analytics where a visit came from. Without them, a click from an Instagram story, a WhatsApp message and a newsletter can all look the same.
Which UTM parameters are required?
Source, medium and campaign. Content, term and campaign ID are optional: content tells apart two links in the same campaign, term is for paid search keywords, and ID is only needed if you import cost data into GA4.
Why does my campaign show up twice in Google Analytics?
Usually capital letters or spaces. Analytics is case sensitive, so Instagram and instagram are two sources, and Ramadan Sale and ramadan_sale are two campaigns. The builder lowercases everything and swaps spaces for underscores unless you turn that off.
Why is my traffic showing as Unassigned in GA4?
GA4 sorts visits into channels by source and medium, and a medium it does not recognise lands in Unassigned. Use a standard one: social or paid_social for social media, email for newsletters, cpc for paid search. The builder shows the channel each link will land in before you use it.
Should influencer links use UTM tags?
Yes, one link per creator. Put the platform in source, social in medium, the campaign in campaign and the creator's handle in content, and you can see which creator sent the visits and the sales.
Is anything I type saved?
Only on your device. The link is built in your browser, and the last few links you copied are kept in this browser so you can copy them again. Nothing is sent to Wiro.