Worth 5 Minutes This Week: UTM-Tag Every Link You Control
Here is the whole tip up front: make a list of every store link you control — Instagram bio, email footer, QR codes, YouTube descriptions — and add UTM tags to each one. It takes about five minutes, costs nothing, and permanently moves a slice of your revenue from "no idea where this came from" to a source you can double down on.
The rest of this article is the checklist, a naming convention that will not fall apart in three months, and the mistakes that quietly undo the work.
Why Your Own Links Show Up as "(direct)"
When someone clicks a link with no UTM parameters, your analytics tool has to guess where they came from. Sometimes the browser passes a referrer and the guess is good. Often — especially from mobile apps like Instagram, or from a QR code scan — there is no referrer at all, and the visit lands in the "(direct)" bucket next to people who typed your URL by hand.
That means the links working hardest for you — the bio link your followers tap, the footer link in every order confirmation, the QR code on your packaging insert — are often the least visible in your reports. Not because the data is broken, but because nobody labeled the links. (For what analytics tools can and cannot recover from referrers, see why so much Shopify traffic shows as (direct).)
The Audit: Links You Probably Control Right Now
Go through this list and note every one that points at your store untagged:
- Social bios — Instagram, TikTok, Pinterest, X, Facebook page, and any Linktree-style page sitting behind them (tag both the Linktree URL and the buttons inside it).
- Email — your personal signature, your support signature, and the store links inside transactional and marketing email templates.
- QR codes — packaging inserts, thank-you cards, event banners, market stall signage. A QR code is just a URL; regenerate it from the tagged version.
- Video descriptions — YouTube, TikTok, and podcast show notes.
- Profiles and directories — Google Business Profile, marketplace seller pages, industry directories, your press kit.
- Partners — links you hand to affiliates, ambassadors, or wholesale partners. If you give someone a link, give them a tagged one.
A Naming Convention That Holds Up
UTM values are case-sensitive text, and reports group them literally —
Instagram, instagram, and IG become three separate
rows. Pick one convention and write it down. A simple one that works:
- utm_source — where the link lives, lowercase:
instagram,tiktok,youtube,email,packaging. - utm_medium — the kind of placement:
bio,signature,qr,description,partner. - utm_campaign — the specific placement or push:
profile-link,order-confirmation,insert-card-v2.
So an Instagram bio link becomes
?utm_source=instagram&utm_medium=bio&utm_campaign=profile-link, and the
QR code on your insert card becomes
?utm_source=packaging&utm_medium=qr&utm_campaign=insert-card-v2. Version
the campaign value when you redesign a card or insert — that is how you find out whether the
new one actually gets scanned more.
Three Mistakes That Undo the Work
- Inconsistent casing and spelling.
IGone month andinstagramthe next splits one channel into fragments. Lowercase everything, always. - Tagging internal links. Never add UTM parameters to links within your own store (menus, banners, product cross-links). A visitor who arrived from a Meta ad and then clicks an internally tagged link gets re-attributed to that internal "campaign", overwriting the source that deserved the credit.
- Updating the link but not the QR code. The printed code still encodes the old untagged URL. Regenerate and reprint, or the packaging channel stays invisible.
How to Tell It Worked
Give it a week or two, then compare: the "(direct)" row should shrink, and named rows — instagram / bio, email / signature, packaging / qr — should appear with the sessions and revenue that used to be anonymous. Now the interesting decisions become possible: if the packaging QR code drives repeat purchases, print it bigger; if the bio link converts better than paid social, feature it harder.
If you use Converlay, the Campaigns page picks these tags up automatically, and the campaign link builder and UTM doctor can generate consistent links and flag messy ones for you. But the audit itself needs no particular tool — any analytics that reads UTM parameters benefits from it.
What Will Still Show as "(direct)"
Some traffic is genuinely direct: typed URLs, bookmarks, and clicks from apps that strip referrers on links you do not control. That remainder is fine — the goal was never an empty "(direct)" row, just an honest one. Tag what you control, let referrer classification handle what you cannot, and the mystery bucket becomes what it should have been all along: the smallest row on the page.