Universal Analytics is long gone and GA4 is what everyone has, whether they chose it or not. Most of the setups I am handed were configured in a hurry during the migration and have not been looked at properly since.
Here are the six checks I run first. They take an afternoon between them, and they usually find the reason two people in the same company quote different numbers.
1. Is anything counted twice?
Open your key conversion event and compare event count against the number of actual transactions or bookings in your own database. Not close — exact.
If you’re tracking #GoogleAnalytics4 on a SPA website with #googletagmanager, you can update the Google Tag config upon route changes with the “update” field set to “true”. This is crucial for updating page_location and page_referrer for new page states
If you have a single-page app, that is the mechanism behind most of the double counts I see. Simo Ahava’s blog is the place to read up on it properly.
Double-firing is the single most common fault I find, and single-page apps are the usual culprit: the event is bound to a route change that fires twice, or to a component that remounts. It inflates everything downstream, including the conversion rate you are reporting to your board.
2. Is your own traffic in there?
Internal traffic filters are easy to set up and easy to forget. Check whether your office and your team’s home IPs are excluded, and whether the filter is actually active rather than sitting in testing mode, which is where a surprising number of them live.
On a low-volume B2B site your own team can be a meaningful share of sessions.
3. How much is landing in (not set) or direct?
Pull your traffic by source and medium and look at the size of (not set), (direct) and (other).
A large direct bucket rarely means people are typing your URL. It usually means UTMs are missing or malformed somewhere, redirects are stripping parameters, or a campaign was launched without tagging. If a third of your acquisition is unattributed, every channel comparison you make is guesswork.
4. Is consent doing something you did not intend?
If you have visitors in the EEA or the UK, your consent banner is shaping your data, and this is where I find the biggest surprises.
Check what happens before consent is given, what is sent after it is refused, and whether Consent Mode is configured at all. Then check the shape of your data against the shape of your traffic — if your analytics says almost nobody visits from Germany and your server logs disagree, you have found something.
Worth saying plainly: Google shut the Privacy Sandbox down in October 2025 and third-party cookies are staying in Chrome. The surviving pieces solve narrow problems. If your measurement plan was built around Topics or Protected Audience, it needs rewriting — those are being removed from Chrome entirely.
5. Do your events carry anything useful?
An event that fires is not the same as an event that tells you something.
Look at a key event and ask what you can segment it by. If purchase arrives with no plan, no value, no source and no step, you can count conversions and nothing else. You cannot ask which plan converts better, or whether the third step is the problem.
Properties are where the answers live. Events on their own are just a tally.
6. Does the funnel report match reality?
Build the funnel for your main journey and look at the step-to-step numbers rather than the overall rate.
If a step shows a 98% pass rate, it is probably not a wildly effective step — it is probably firing on page load rather than on the action. If a step shows more completions than the step before it, the ordering is wrong or something fires out of sequence.
The end-to-end number is the one everybody quotes. The step-to-step numbers are the ones that tell you where to work.
What to do with what you find
Write it down before fixing anything. Every fault, what it affects, and whether historical data can be trusted either side of the fix — because when the numbers move after the fix, someone will ask whether things got better or whether you changed the counting. You want that answer written down in advance.
Then fix in order of blast radius. Double-counting first, because it corrupts everything. Attribution gaps next. Properties last, since that is additive rather than corrective.
a dashboard you cannot trust — is worse than none at all
Questions people ask
How do I see events in GA4 as they happen?
Can I fix historical data once I find a fault?
Should I move off GA4?
Written September 2026. Platform facts checked at the time of writing; if you are reading this much later, check them again.