Quick answer. If GA4 shows no data, work through these seven causes in order: the tag isn't on every page, the wrong ID is installed (a UA- tag instead of G-), the tag is in the body instead of the head, your site is password-protected or behind a login, an ad blocker or un-granted consent is blocking the tag, you're checking standard reports too early instead of Realtime, or duplicate tags and internal-traffic filters are hiding your visits. Use Realtime and DebugView to confirm the fix, they show data instantly.
Seven things break GA4 tracking. They're always the same seven. Work through them in order and you'll find yours.
What you'll need
- Access to your site's code or platform settings.
- GA4 open, with Realtime and DebugView handy.
The 7 culprits, in order
- Tag missing on some pages. It must load on every page, not just the homepage. Use a site-wide head include, not a per-page paste.
- Wrong ID. Confirm your installed ID starts with G-. A UA- tag is dead and sends nothing. Check you didn't paste a different property's ID.
- Tag in the wrong place. The gtag.js snippet belongs in the head. In the body or footer it may not fire reliably.
- Site not public. Password protection (common on Shopify and staging sites) or a login wall blocks tracking. Remove the password or test a public page.
- Ad blocker or consent. Your own ad blocker can hide your test visits. And if you use Consent Mode, GA4 holds until the visitor accepts. Test in a clean browser and accept consent.
- Checking too early. Standard reports lag 24 to 48 hours. A blank report today is normal. Use Realtime or DebugView to prove it's firing now.
- Duplicates or filters. Two tags can double-count, and an internal-traffic filter or IP exclusion can hide your own visits during testing. Check for a second tag and review your data filters.
Do it with AI
Not sure what's wrong? Let Claude or ChatGPT diagnose it.
Debug why my GA4 isn't tracking
My Google Analytics 4 isn't recording data. My setup: - Platform/framework: [____] - How I installed the tag: [plugin / custom code / app] - Here's my <head> or install code: [paste] Check it against the common GA4 tracking failures: tag not on every page, wrong or UA ID, tag in the wrong place, site not public, consent/ad-blocker, and duplicate tags. Tell me the most likely cause and the exact fix, then how to confirm in Realtime.
How to check it worked
Open GA4 Realtime, visit your site in a clean browser (no ad blocker), and look for yourself as an active user. For events, use DebugView. If you appear, tracking is fixed, even if standard reports are still catching up.
Common mistakes
- Judging it by an empty standard report on day one. Always confirm with Realtime first.
- Testing with an ad blocker on. Then assuming the tag is broken.
- Fixing one cause and stopping. It's common to have two at once, for example a password-protected site AND a duplicate tag.
FAQ
- Why is my GA4 not showing any data?
- Most often the tag isn't on every page, the site is password-protected, or you're checking standard reports too early. Use Realtime to test, it shows data instantly.
- How do I know if my GA4 tag is firing?
- Open Realtime and visit your site in a clean browser. If you appear as an active user, the tag is firing. Use DebugView for events.
- Why does GA4 work in Realtime but reports are empty?
- Standard reports lag 24 to 48 hours. Realtime working means your setup is fine, the reports just need time.
Once it's tracking, the next chore is reading it.
Holy Bucket reads your GA4 for you and tells you what's leaking, in plain English.