Data & Tracking
The Tracking Errors That Quietly Make Your GA4 Data Useless
Copy for AI
Before you make a marketing decision based on your GA4 numbers, you need to be sure those numbers are right. And often they are not. The most common google analytics tracking errors are untagged campaigns that end up in “direct”, duplicate tracking tags that artificially lower your bounce rate, and self-referrals where your own domain shows up as a traffic source. The annoying part: your data simply looks plausible, so you only notice once you have drawn the wrong conclusions. In this article we show you how to spot and fix these errors, so you steer on real customers instead of on polluted numbers.
Honest upfront: this is not a sexy topic. But as a small team that acts fast, we know clean tracking is the foundation of every good decision. A beautiful dashboard built on broken data is more dangerous than no dashboard at all.
Why are tracking errors so dangerous for your decisions?
The problem with faulty tracking is not that you have no data. You do have data, and it looks convincing. That is where the poison sits. A polluted report leads to a confident conclusion that is simply wrong.
Picture this: you see that 60% of your leads come from “direct traffic”. Logical reaction: “apparently people know our brand, we can invest less in campaigns.” But if that direct bucket is full of untagged newsletter and ad clicks, you are cutting exactly the channels that do deliver leads. You optimise yourself in the wrong direction.
For B2B this weighs even heavier. Your sales cycle runs over weeks, with multiple touchpoints. One wrong attribution at the start of that journey distorts your entire picture of what works. Want to understand what tracking actually involves before you go deeper? Then also read our piece on what tracking is.
We set up the measurement foundation for you via data analytics, so your decisions rest on numbers that are right.
How do you recognise duplicate tracking tags?
This is silent killer number one. When your GA4 snippet accidentally sits on your site twice (for example once hardcoded in the template and once via Google Tag Manager), GA4 records every page view twice. The result: your traffic looks higher than it is, and your bounce rate plummets to unrealistically low values.
How do you spot it? Look at your bounce rate equivalent and your engagement. Keep in mind that a “healthy” bounce rate differs strongly per page type and sector, so a fixed target number does not exist. But if your bounce rate is structurally suspiciously low (think: well below the values you would expect for your type of site), that often points to duplicate tracking snippets or extra hits being sent by accident. A suspiciously low bounce rate is therefore no reason to celebrate, but a red warning light.
A quick check:
- Open the source code of a page and search for your measurement ID (it starts with G-). If it appears more than once, you have found your culprit.
- Use a browser extension such as Google Tag Assistant to see which tags fire on a page view.
- Check whether your GA4 tag sits both in GTM and directly in the site. Pick one, not both.
The fix is usually simple: remove the duplicate implementation and keep one source of truth, preferably via Google Tag Manager. Your data then normalises within a few days.
Why does so much traffic end up in “direct” (and what does that say about your campaigns)?
An inflated “direct” channel is almost always a symptom, not a cause. Direct traffic should contain the visitors who type your URL straight in or arrive via a bookmark. In practice it becomes a catch-all for everything GA4 cannot place.
The biggest offender: untagged campaigns. If you send a newsletter, run a paid ad or share a link in a PDF without UTM parameters, GA4 does not know where that click came from. It does not guess, it dumps the visitor into “direct”. That is how the proof that your email campaign did deliver leads disappears, and it looks as if people just drop by spontaneously.
The solution is consistent tagging with UTM parameters on everything you send out into the world yourself: email links, ads, social posts, QR codes, links in documents. How to do that neatly and uniformly is something we explain in our guide on UTM parameters. One agreement about capitalisation and naming saves you months of puzzling afterwards.
Important B2B detail: switching from http to https, or a mail client that passes no referrer information, can also push traffic into direct. Clean UTMs solve the lion’s share.
What are self-referrals and how do you stop them?
A self-referral is traffic that GA4 attributes to your own domain as the referring source. You then see your own website back in the referral list, which of course makes no sense. It often happens with subdomains (think of a separate shop, blog or payment environment) or with external payment and booking tools that briefly send the visitor away and bring them back.
The problem: every time a visitor jumps between your main domain and such a subdomain or external tool, GA4 can start a new session and lose the original source. Your conversion is then attributed to “yourself” or to the payment provider, instead of to the campaign that really brought the visitor in.
The fix in GA4:
- Add your own domains and relevant subdomains to the list of unwanted referrals (the “unwanted referrals” setting in your data stream), as Google’s guide to data collection issues explains.
- Configure cross-domain tracking if you use multiple domains or a separate booking or payment environment.
- After setting it up, check your referral report again; your own domain should no longer be in it.
That way you keep the attribution chain intact and see which channel truly deserves the lead.
Why do you need to be extra careful with filters in GA4?
Filters feel handy: quickly filter out your own IP address or that of your agency so internal visits do not pollute your numbers. Good idea in principle, but there is a catch that many people discover too late.
Filters in GA4 do not take effect immediately (count on roughly 24 to 36 hours), and data that has once been filtered out is irreversibly lost (according to the documentation of Google Analytics 4). So you cannot retrieve filtered data. Set your filter up wrong (for example a rule that is too broad and also excludes real visitors) and that data is gone for good.
That is why we always advise: test in “testing” mode first before you switch a filter on, and keep at least one unfiltered data view as a safety net. That way you experiment safely without the risk of accidentally shredding a week of lead data. Honest advice from a small team that would rather prevent this kind of error than repair it, because here repairing is literally impossible.
How do you know your tracking is right now?
You recognise clean tracking by a few down-to-earth checks. Does your bounce rate match what is realistic for your type of site instead of being suspiciously low? Is your own domain absent from your referral report? Do your campaigns split out neatly instead of clumping together in “direct”? And does the total traffic in GA4 roughly match a second source, such as your server logs or another analytics tool?
It all comes down to one principle that runs through all of these fixes: steer on customers and revenue, not on vanity metrics. A number that is right and modest beats an impressive number that is hot air. How you then express those real results as a ratio is something you can read in our wiki on conversion rate.
A healthy measurement foundation is not a one-off project but a maintenance job. Every new campaign, every new subdomain and every website change is a chance for a new leak. Which is why a short monthly check is often worth more than a one-time perfect setup.
Frequently asked questions about google analytics tracking errors
How do I know if my GA4 tag is on the site twice?
Open the source code of a page and search for your measurement ID (G-XXXXXXX). If it appears more than once, or if your tag fires twice according to Google Tag Assistant, you have duplicate tracking. An unrealistically low bounce rate (under 20%) is often the first signal.
Why is so much of my traffic under “direct”?
Usually because your campaigns are untagged. Emails, ads and links in documents without UTM parameters cannot be placed by GA4, so they end up in direct. Tag everything you send out yourself consistently with UTMs and the channel clears up.
Can I retrieve filtered-out GA4 data?
No. Data removed by a filter is irreversibly gone, and a filter does not take effect immediately (count on roughly 24 to 36 hours before it is active). So always test in testing mode first and keep an unfiltered data view as a safety net.
What exactly is a self-referral?
It is traffic that GA4 attributes to your own domain as the referring source, often caused by subdomains or external payment and booking tools. Add your own domains to the unwanted referrals list and set up cross-domain tracking to solve it.
Do I need to bring in a specialist for this?
Not necessarily for the basic checks. But for reliable event tracking, cross-domain setups and safely configuring filters, experience helps. If in doubt, you are better off outsourcing the setup than basing decisions on data you are not sure about.
Ready to steer on data that is really right?
Tracking errors are silent but expensive: they make you invest in the wrong channels and cut what does work. With clean UTMs, one tracking tag, cleaned-up self-referrals and careful filters, you lay a measurement foundation you dare to decide on. No vanity metrics, just numbers that are right.
We check your GA4 setup from A to Z and repair what leaks, tuned to your B2B sales process. Honest advice, a small team that acts fast, and no noise. Schedule your free intake.
Free website scan
Enter your website and get an automatic scan within minutes, with concrete technical and SEO improvements. No sales pitch.
We only use your details for your scan. No spam, unsubscribe anytime.