The short answer
Your email platform tells you someone clicked. It does not tell you whether that person bought, signed up or left after five seconds. If you want to know how to track email campaign clicks with UTM tags, the fix is simple: add a few tags to the end of every link in the email so your analytics tool knows the visit came from that exact send.
Here is the version most people need. Set utm_medium=email on every link. Use utm_source for the list or newsletter name, utm_campaign for the send, and utm_content to tell links inside the same email apart. Keep everything lowercase. Then send yourself a real test and check that the visit shows up in GA4 under the Email channel.
The rest of this guide covers why those values matter, how to build the links, whether to shorten them, and why your email report and GA4 will never show the same number.
Why email clicks go missing without tags
When someone clicks a link on a website, the browser usually passes along the page they came from. Email doesn't work that way. Desktop mail apps open links with no referring page at all, and many webmail services hide it on purpose for privacy.
So an untagged email click often lands in GA4 as (direct) / (none). Your newsletter did the work, and "Direct" gets the credit. UTM tags fix that because the information travels inside the link itself, not in the browser's referrer.
What to put in each tag for email
GA4 decides which channel a visit belongs to with fixed rules. According to Google's default channel group documentation, a visit counts as Email when the source or the medium is email, e-mail, e_mail or e mail. Anything else, like newsletter or klaviyo in the medium with no "email" anywhere, ends up in Unassigned.
That gives you a safe pattern:
| Tag | What it answers | Good email value |
|---|---|---|
| utm_medium | What kind of channel? | email (always) |
| utm_source | Which list or sender? | newsletter, customers, trial-users |
| utm_campaign | Which send or promotion? | holiday-gifts-2026 |
| utm_content | Which link in the email? | hero-button, footer-link |
| utm_term | Usually skipped for email | leave empty |
If you mix up source and medium a lot, our guide on the difference between UTM source and UTM medium explains it with more examples.
One trap worth knowing: GA4 checks its channel rules in a set order, and Organic Social is checked before Email. If you tag an email link with utm_source=facebook because the email promotes your Facebook group, the visit can be filed as social. Keep the source about your list, not the destination.
How to track email campaign clicks with UTM tags, step by step
Let's use a worked example. Say you run a small online shop and you're sending a holiday gift guide to your newsletter list on November 20. The email has a big button at the top and a text link near the bottom. Both go to the same page.
- Copy the landing page URL. In this case, https://example.com/gift-guide.
- Open a UTM builder. You can use the free Freeurl UTM builder so you don't have to type question marks and ampersands by hand. Typos in raw URLs are the most common reason tags fail.
- Fill in the fields. Source: newsletter. Medium: email. Campaign: holiday-gifts-2026. Content: hero-button.
- Copy the result. You'll get something like:
https://example.com/gift-guide?utm_source=newsletter&utm_medium=email&utm_campaign=holiday-gifts-2026&utm_content=hero-button - Build the second link. Change only the content value to footer-link. Everything else stays the same.
- Paste each link behind its button or text in your email editor. Readers see "Shop the gift guide," not the long URL.
A week later, you can open GA4 and see whether the top button or the footer link drove more sales. That's the real payoff of utm_content: it shows you which part of the email works, not just whether the email worked.
If several people on your team send email, agree on the values before anyone builds links. "Newsletter," "Newsletter" and "news-letter" show up as three different sources in reports. Our UTM naming convention template gives you a ready-made set of rules to copy.
Should you let your email platform add the tags?
Many email tools can add UTM tags for you. That's handy, but check what they actually add.
Kit (formerly ConvertKit), for example, has a setting that automatically adds utm_source, utm_medium and utm_campaign to links in broadcasts and sequences. Its help article says the campaign value is built from the subject line and campaign ID, and that any tag you add by hand stays as you wrote it. It also notes the automatic tags are not added to preview emails, so you need a real test send to see final links.
Mailchimp has a similar Google Analytics link tracking option that builds the campaign value from your Mailchimp campaign name. If that name doesn't match how you name campaigns elsewhere, your reports get messy.
A practical rule: if you send one newsletter and don't care about naming, the automatic option is fine. If you run ads, social posts and email for the same promotion and want them grouped under one campaign name, build the links yourself and turn off auto-tagging for that send, or confirm that your manual tags override the automatic ones.
Should you shorten UTM links in an email?
Usually, no. And we're a URL shortener, so here's the honest reason.
In an HTML email, the long URL sits behind a button or a word. Nobody sees it, so making it shorter buys you nothing. Most email platforms also wrap every link in their own click-tracking redirect. Put a short link inside that and you get two redirects in a row, which is slower and gives spam filters one more thing to inspect.
Public short-link domains also carry a shared reputation. Deliverability folks commonly warn against generic shorteners in email for that reason. If a short link is what you need, use one on your own domain, so the reputation is yours alone. Here's how to use your own domain for short links.
Where a short link does make sense:
- Plain-text emails, where the full URL is visible and a 150-character tagged link looks suspicious.
- Email signatures, where a clean, branded link reads better.
- Links people will copy and pass on, like a referral link in a welcome email.
In those cases, build the tagged URL first, then shorten the whole thing with the Freeurl link shortener on your custom domain. The tags survive the redirect, and you also get Freeurl's click counts as a second view of the same link.
Test the links before you hit send
Five minutes of testing saves a campaign's worth of bad data.
- Send a real test email to yourself, not just a preview.
- Click each link and look at the address bar. The utm_ values should still be there after the page loads. If they disappear, your site may be redirecting (for example, from http to https or adding a trailing slash) and dropping the query string.
- In GA4, open Reports > Realtime and look for your visit with the right source and medium.
- Check that the link goes to the right page on mobile too.
If your own test click doesn't show up in Realtime, check whether you've declined your site's cookie banner or run an ad blocker. Both can hide your visit from GA4 even when the tags are perfect.
Where to find email clicks in GA4
Once the email goes out, give it a day for data to settle. Then:
- Go to Reports > Acquisition > Traffic acquisition.
- Look at the Session default channel group column and find the Email row.
- To see individual sends, click the dropdown above the first column and switch it to Session campaign.
- To compare links inside one email, add a secondary dimension of Session manual ad content, which is where utm_content values appear.
If you already have old links tagged with a medium like newsletter, you don't have to fix past data by hand. You can create a custom channel group in GA4 admin with a rule that puts that medium into Email. For new links, just switch to email.
Why your email report and GA4 never match
Expect the numbers to differ. That's normal, and it's not a tagging problem.
- Security scanners click links. Corporate email filters and mailbox providers often open every link in a message to check it for phishing. Your email platform may count those as clicks. GA4 usually doesn't see them as real sessions, so the email report runs higher, especially for B2B lists.
- Not every click becomes a session. If someone clicks and closes the tab before the page loads, the email tool counts a click and GA4 records nothing.
- Consent and blockers. Visitors who decline analytics cookies or use blockers may never reach GA4.
- Different counting. Email tools count clicks. GA4 counts sessions and events. One person clicking twice in a few minutes may be two clicks but one session.
The trade-off is plain: UTM tags tell you what happened after people arrived, but they can't tell you about people who never arrived. Use your email tool for delivery and click trends, and GA4 for what those visits were worth.
Mistakes that break email tracking
- Tagging internal links. Only tag links in the email. Never add UTM tags to links between pages on your own site, or you'll restart sessions and wipe out the real source.
- Using spaces or capitals. Use dashes. Write everything in lowercase so one campaign doesn't split into several rows.
- Forgetting the medium. A link with source and campaign but no medium can still fall into Unassigned.
- Putting personal data in tags. Never put a subscriber's email address or name in a UTM value. It ends up in your analytics, which is a privacy problem and against Google's policies.
- Reusing last month's campaign value. Copying an old email template is fine. Copying its links without updating utm_campaign mixes two sends together.
Frequently asked questions
What should utm_medium be for email?
Use email, in lowercase. GA4 puts a visit in its Email channel when the source or medium is email, e-mail, e_mail or e mail. Values like newsletter on their own end up in Unassigned.
Do UTM tags affect email deliverability?
The tags themselves are just text at the end of a link and are not known to cause filtering. What matters more is the link's domain. Avoid shared public short-link domains in email; use full links behind buttons or short links on your own domain.
Why does my email platform show more clicks than Google Analytics?
Security scanners often click every link in an email to check for threats, and email tools can count those. GA4 also misses people who close the page before it loads, decline analytics cookies or use blockers. Some gap is normal.
Should every link in an email have UTM tags?
Yes, every link that goes to your own site should have them, with the same source, medium and campaign. Use a different utm_content value for each link so you can see which one people clicked. Links to other websites don't need your tags.