Dev owns a bakery-café that does a steady side business in catering. On Monday he sends a newsletter about holiday orders. On Wednesday he boosts an Instagram post with the same menu. On Friday he opens his analytics to decide where next month's small ad budget should go. The biggest source of visits is a bucket labeled "Direct," and it is bigger than everything else combined. Dev doesn't believe that hundreds of people typed his web address from memory. He has to choose between cutting Instagram and cutting the newsletter, and the report can't tell him which one earned the visits.
Dev's problem is the usual one. Analytics can only report what a link tells it. A link with no tags gets a guess, and the guess is often "direct." UTM parameters are short labels added to the end of a web address so the visit arrives with its origin attached. The best practices are less about the tags and more about consistency: labels that are spelled the same way every time, by everyone, for as long as you want to compare results.
Why untagged links turn into "direct"
Some clicks carry no origin information. Links inside email apps, messaging apps, PDFs and QR codes often arrive without a referrer, and analytics files them under direct or leaves them unassigned. Tags fix this because they travel inside the link, not in the browser's handoff. That is why the newsletter, the boosted post and the flyer with the QR code are the first things to tag. They are the places where you control the link and where the default report is most likely to be wrong.
The parameters and what goes in them
| Parameter | What it answers | Example value | Needed? |
|---|---|---|---|
| utm_source | Which site, list or platform sent the visit | newsletter, instagram, flyer | Yes |
| utm_medium | The kind of channel | email, paid-social, qr | Yes |
| utm_campaign | The push this belongs to | holiday-catering | Yes |
| utm_content | Which version of the message or link | menu-photo, button-link | Only when testing versions |
| utm_term | The keyword, mainly for paid search | catering-near-me | Rarely for a small business |
Naming rules that survive a year of use
Write everything in lowercase. Analytics treats "Email" and "email" as different values, so one capital letter splits a channel into two rows. Use hyphens instead of spaces, because spaces turn into ugly codes inside a web address. Pick a short, fixed list of medium names (email, paid-social, organic-social, qr, referral) and refuse to invent new ones on the fly. Name campaigns by purpose and season, not by date format, so they stay readable in a report. Never put a customer's name or email address in a tag, since the address ends up in logs, browser history and forwarded messages. Don't tag links that point from one page of your own site to another. Doing so can overwrite the record of how the visitor really arrived. Finally, if you run Google Ads, leave auto-tagging on. Add manual tags there only if you understand how they interact with it.
Test before you send
Build the link, click it yourself, and watch the real-time report in your analytics tool. You should see one visit with the source, medium and campaign you typed. Then check the same link on a phone, since that is where most newsletter and QR clicks happen. A week after launch, open the traffic acquisition report and look for rows that don't belong: a misspelled source, a medium you never defined, or a large "unassigned" bucket. Each one is a link that went out untagged or tagged differently than the sheet says. If your setup itself is unreliable, tags won't rescue it, so it's worth confirming that conversions are being recorded at all before you interpret channel comparisons.
Who searches for this, and when
The whole cluster of related searches is small: about 70 searches a month combined, spread across 6 distinct queries. Over the last 12 months the exact phrase peaked at 70 a month in 2025-09 and dropped to 10 a month in 2025-12. That looks like people who search when they are in the middle of a task, most likely when a campaign is being planned or a report has just stopped making sense, and not people browsing out of curiosity. The highest top-of-page bid advertisers pay for this topic is $110.26. That is not a price you will pay, but it shows that software and service providers consider these readers valuable. You don't need any of them to fix your links. You need a sheet and an afternoon.
Where outside help fits
Most owners can handle tagging themselves. Help becomes reasonable in specific situations: several people are publishing links and nobody owns the sheet, your ad platforms and analytics disagree about results and you can't tell why, or a purchase or booking isn't being recorded so tags have nothing to attach to. In those cases a short review of your setup is usually enough, not a rebuild. If you talk to an agency, ask them to show you the naming sheet and the test they would run, and to explain what would change your budget decision. Dev's answer, once his newsletter links were tagged, turned out to be a simple comparison he could read himself.