
June 18, 2025
Google Analytics Not Working? Here are the solutions
It is one of the most frustrating moments for any marketer or analyst: you log in to your Google Analytics account, ready to check your data, only to find that it’s missing, incomplete, or just plain wrong. Seeing Google Analytics not working as expected can be alarming, leaving you to wonder where the problem is and how to fix it without wasting hours of your time.
The good news is you’ve come to the right place. Your GA4 setup may be experiencing issues for various reasons, ranging from simple configuration oversights to more complex technical problems. It could be something as straightforward as a developer accidentally removing the tracking code, or something more nuanced, like a Content Security Policy on your website blocking the data from being sent to Google’s servers.
In this guide, I’ll walk you through a comprehensive checklist of potential problems and their solutions. We will cover everything from the basics, like making sure GA4 is installed correctly and you’re looking at the right property, to more advanced topics like consent mode settings, server-side tagging issues, and problems with e-commerce transactions. Think of this as your go-to troubleshooting manual to methodically figure out what’s wrong.
Table of Contents
Here’s what you will learn in this article
- #1. Google Analytics 4 is not installed properly
- #2. Wrong Google Analytics 4 property
- #3. Google Tag Manager is not published
- #4. Content security policy is blocking GA (or GTM)
- #5. Consent
- #6. ga-disable-XXXXXX
- #7. (data not available)
- #8. (not set) values in your reports
- #9. Not enough time has passed
- #10. Incorrect date range
- #11. Data retention settings
- #12. Google signals are not working
- #13. Conflicting scripts on a website
- #14. GA4 Debugview is not working
- #15. Real-time reports are not working
- #16. Cross-domain tracking not working?
- #17. iFrames
- #18. gtag does not send events to Google Analytics 4
- #19. Server-side tagging issues
- #20. Key events are not working?
- #21. Traffic acquisition reports are showing nonsense?
- #22. Missing transactions or revenue?
- #23. Missing demographic data?
- #24. Very rare: Google Analytics is down
- Final Words

#1. Google Analytics 4 is not installed properly
Sometimes bad luck happens, and Google Analytics 4 might not be installed at all (or maybe developers accidentally removed it from the website without your knowledge?).
To rule this out, check if GA4 is installed on all pages of your site. If you’re not sure where to start, I wrote an article on three different ways to set up Google Analytics 4. Once you identify which method was used for your installation, there are several ways to check that GA4 was properly installed.
Use Google Tag Assistant (Chrome Extension)
- What it does: Google Tag Assistant helps you quickly check whether GA4 (or any other Google tags) are installed on a webpage.
- How to use it:
- Install the Google Tag Assistant Chrome extension.
- Visit the page where the key event is supposed to occur.
- Click the Tag Assistant icon in your browser toolbar, and it will show you the tags firing on the page.
- Look for the GA4 configuration tag to confirm that GA4 is present.
Use the Browser Developer Tools (Console)
- What it does: This method allows you to check whether the GA4 tag is firing by inspecting network requests.
- How to use it:
- Open the page in Google Chrome.
- Right-click anywhere on the page and select “Inspect” to open the Developer Tools.
- Navigate to the Network tab.
- In the filter box, type “collect” to filter for GA4 network requests.
- Refresh the page, and if GA4 is installed, you should see network requests sent to https://www.google-analytics.com/g/collect.
However, if you are using server-side tagging, the request URL might look like this: your.owndomain.com/g/collect.
Check the DebugView
- What it does: DebugView in GA4 lets you see real-time events sent to GA4.
- How to use it:
- In GA4, navigate to Admin > Data display > DebugView.
- Ensure Debug mode is enabled on the page (you can do this using the Google Tag Manager’s Preview Mode or downloading the Google Analytics Debugger Chrome extension).
- Visit the page where the key event occurs and trigger the event.
- If GA4 is installed and correctly configured, the event should appear in the DebugView in real-time. A regular event will have a blue icon, and a key event will have a green flag icon (more on this later).
What should you do if any of these options show that GA4 may not work?
Assuming you had the help of a developer to complete the installation of GA4 (either through GTM or gtag), I would recommend going back to that person or team and asking them to review the implementation process. Show them the page(s) that appear to be missing code to see if that helps them narrow down their workload.
If you installed GA4 with Google Tag Manager, you should also check the GA4 configuration tag to make sure that elements like the measurement ID and triggers are correct.
Want to learn more ways to check if Google Analytics 4 is installed on a website? Read this, too.

#2. Wrong Google Analytics 4 property
We’re all human, and sometimes, we make mistakes. One of the first things I would check is the GA4 measurement ID. Are you looking at the correct Google Analytics 4 property?
Go to Admin > Data Streams and check the Measurement ID there. It starts with “G-”
Now check where your Google Analytics 4 is installed on a website (it might be a GTAG code snippet, installation with Google Tag Manager, or maybe your CMS has a dedicated field for Google Analytics ID (like WIX has). If they match, you’re good. If they don’t match, you’re looking at an incorrect property.
How to find the right property? That is not easy. When I write this blog post, the search in GA property picker (see the screenshot below) does not support GA4 measurement ID.
So you will need to manually check properties (and their data streams) one by one until you find the correct one.
#3. Google Tag Manager is not published
If you choose to install Google Analytics 4 via Google Tag Manager, make sure that changes in your container are published. Every time you change something in the GTM container and test it, you have to publish the container. Only then will these changes go live for your website visitors, too.
Log in to your Google Tag Manager container > Overview and look at the Workspace changes.
If you see anything there, those changes are not published. If you see a Google tag (a.k.a. Configuration tag), this might be why GA4 real-time reports are not working for you. Test that the Google Tag Manager setup (with a preview mode) and then publish (by clicking the Submit button in the top-right corner).
#4. Content security policy is blocking GA (or GTM)
If your website has a Content Security Policy, it might block Google Analytics requests. You can identify this by going to your browser’s developer console (On Windows, Chrome, you should go to Browser’s Menu > More Tools > Developer Tools > Console).
Then refresh the page. If you can find an error that looks like this (or something similar), this means that you are dealing with the Content Security Policy.
But in this case, the URL of the error in the screenshot above should contain google-analytics.com.
What does that mean? Your developers will have to update the CSP of the website. There are no workarounds. You can’t avoid developers here. Here are the instructions on what they should do.
In 2022, Google changed the URL of where GA sends the data. Previously, it was just www.google-analytics.com; now, it might be region1.google-analytics.com (or something similar). So it would be most convenient if developers updated the CSP to support all domains containing google-analytics.com.
This means that CSP should add *.google-analytics.com and *.analytics.google.com to their “connect-src” and “img-src” instructions in their content security policy (*. at the start is important).
#5. Consent
This one is full of nuances, and, unfortunately, I won’t be able to provide you with specific instructions (because the setup on every website can be different).
In a nutshell, the problem goes like this: check if you have a cookie consent popup on your website. What happens after you reject cookies in that popup? Normally, the Google Analytics 4 tracking code should not be activated (unless you have implemented Advanced Consent mode), which means that no events will be tracked.
Another situation might be that maybe you have implemented Advanced Google Consent Mode. If the visitor does not give consent for tracking, your GA4 tracking codes are still activated. However, the data sent to Google Analytics 4 is limited, and you won’t see such events in the DebugView or Realtime reports (it’s impossible to see them there).
One more idea that comes to my mind is that maybe your cookie consent popup uses an auto-blocking feature that automatically blocks all tracking codes on the site and does not let them work properly.
How to troubleshoot this? It’s complicated. And as I have said, things can differ on various websites. To learn more about cookie consent popups and Google Consent Mode, take a look at my Google Tag Manager course for beginners.
Oh, one more thing. If you have implemented advanced consent mode, check the consent states after you click “I agree” in the consent pop-up. If they remain “denied” (in reality, they should be “granted”), this will also prevent Google Analytics from functioning correctly.
#6. ga-disable-XXXXXX
This reason happens rarely, but it’s still completely possible.
Check the source code of your website. For example, you can do that with a right-click on your page’s background > View page source. Search for “ga-disable”.
gtag.js library (used by Google Analytics) supports a feature that allows disabling Google Analytics on a page programmatically. This code is usually placed high in the source code, above gtag.js or the Google Tag Manager container snippet.
That feature looks like this:
window['ga-disable-GA_MEASUREMENT_ID'] = true;
GA_MEASURMENT_ID should be replaced with the ID that is used on your website, e.g., G-123456789, for example:
<script> window['ga-disable-G-123456789'] = true; </script> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-123456"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-123456789'); </script>
If you found window[‘ga-disable-GA_MEASUREMENT_ID’] = true in your source code, that’s the reason why Google Analytics is not working at all, because this feature disables GA completely. What to do? Remove that line of code or ask the developer to do it.
#7. (data not available)
Usually, Google Analytics takes 24-48 hours to process the data. If you look at today’s/yesterday’s data, chances are you’ll notice (data not available).
While this is not a bug (but just an indicator), Google Analytics beginners might think that their setup is not working. But don’t worry. Usually, (data not available) is displayed when the data has not been processed yet.
So, be a bit more patient and check that data in 1-2 days.
#8. (not set) values in your reports
This is an extensive topic, and there are many reasons why you might see (not set) in Google Analytics reports. Some reasons are related to incorrect setups, while others are inherent limitations or nuances of GA.
If you want to dive deeper into this topic, read the blog post here. There, I will cover things like:
- (not set) in the Landing page dimension
- (not set) traffic sources
- Unassigned channel, etc.
#9. Not enough time has passed
Google Analytics reports (excluding real-time and debugview) are pretty slow to process and display the data. It’s normal to wait 24-48 hours.
So if you have sent some events to GA4 reports and waited just for several hours, that is not enough. Check your data tomorrow. If that still does not work, wait one more day. If that does not help, then your GA4 events are not showing up because of some other reason (then check other tips in this blog post).
#10. Incorrect date range
I recommend double-checking that you have selected the correct date range in your reports. Maybe you are looking at the date when Google Analytics was not even installed, yet. Yes, I know it sounds silly. But mistakes can happen even to the best of us.
You can change the date range in the top-left corner of Explorations or in the top-right corner of the standard GA4 reports.
#11. Data retention settings
If you are working with Explorations but can see data only for the last two months, it means that you have not changed the data retention settings.
Read this guide to learn the next steps.
#12. Google signals are not working
When enabled in GA4, Google Signals collects additional data about your website visitors: demographics (age, gender) and interests. Sounds great, right?
However, the feature is disabled by default, and to enable it, you need to complete/check multiple steps.
I have written a guide on how to troubleshoot Google Signals. This includes:
- IP redaction
- Missing location headers in your server-side GTM setup
- ad_storage is disabled
- allow_google_signals is disabled in gtag or Google Tag Manager, etc.

#13. Conflicting scripts on a website
Conflicting scripts on a website, while not very common, can sometimes interfere with GA4.
If you suspect a script might be causing issues with Google Analytics, you can troubleshoot using your browser’s developer tools. Here’s how you can check:
- Open the developer tools in your browser (right-click and select “Inspect”) and go to the Network tab.
- Use the filter to narrow down the list to only JavaScript files by selecting “JS”.
- One by one, block each script (right-click and select “Block request URL”).
- After blocking each script, check if cross-domain tracking starts working.
If, at some point, Google Analytics starts to work after blocking a specific script, that script is likely causing the issue. In that case, you should consult with your website’s developers to see if anything can be done, such as modifying the script or adjusting its behavior to allow GA4 tracking to function properly.
#14. GA4 Debugview is not working
DebugView is a great feature in Google Analytics 4 and is a solid improvement compared to GA3 (Universal Analytics). It allows you to debug incoming data at a very granular level. However, sometimes it just does not work.
When you were looking for resources matching the keyword “Google Analytics not working”, maybe you meant “Debugview is not working”? If yes, read this troubleshooting guide.
#15. Real-time reports are not working
Another place where you can view the incoming data in near real-time is the Real-time Reports. Just as with DebugView, these reports may sometimes not work (or perhaps they don’t display events originating from your browser?).
If that’s your case, read this troubleshooting guide.
While some tips in that blog post will overlap with what you learned here, you will definitely find something new as well, including:
- Ad blockers
- Google Analytics is blocked in developer tools
- Opt-out extension
- Internal/developer filters, and more.
#16. Cross-domain tracking not working?
Cross-domain tracking in GA4 is a built-in workaround that allows you to send user information from one domain to another, preserving session data across domains. This makes sure that the same user is consistently tracked across multiple websites, enabling more accurate and unified analytics.
But sometimes, it can get tricky.
I have written a blog post explaining common (and not-so-common) reasons why GA4 cross-domain tracking might not work, including:
- Server-redirects
- JavaScript redirects
- Missing tracking code on the 2nd website
- Incorrectly configured domain in Google Analytics data stream, etc.
#17. iFrames
If you have installed Google Analytics in an iframe, it may cause unexpected behavior and wreak havoc.
When an iframe on your site is on a different domain, event data will not be shared with the parent page, and Google Tag Manager and Google Analytics 4 on the parent page will not be able to detect the event without proper setup.
To resolve this, you can add a GTM container inside the iframe to track events directly within it. If the iframe is hosted on a different domain, you need to install GTM in the iframe (if you have access to do so) and use window.postMessage() to send data from the iframe to the parent page. Additionally, ensure that events within the iframe are pushed to the data layer, allowing GTM on the parent page to capture them and trigger the appropriate tags.
If you want a more comprehensive explanation of how to track iframes with GTM, this topic is available in my Intermediate/Advanced Google Tag Manager course.

#18. gtag does not send events to Google Analytics 4
If the Google tag (gtag.js, also known as the Google Analytics tracking code) is not sending an event to GA4, several common pitfalls in the setup may be causing the error. Some things to check are:
- Make sure that the gtag.js snippet is added correctly to the <head> section of the website code.
- Any event tracking must not fire before the gtag.js snippet is loaded (any gtag() function needs to occur after this).
- Double-check that the GA4 measurement ID is (1) in the snippet and (2) the right one (maybe the tracking works, but it’s being sent somewhere else).
- Review the event name (make sure it’s the same as what you set up as a key event).
You can review my article on how to track events with Google Tag to check that you followed all the steps properly.
#19. Server-side tagging issues
With server-side tagging, if there’s no GA4 client to accept the request or no GA4 tag to forward the data, the event data won’t be sent to GA4. Server-side tagging processes the data on your own server instead of directly in the browser, and for this setup to work, you need both the correct GA4 client and GA4 tag properly configured on your server.
In your SGTM container, you should check that you have a GA4 tag and that the trigger for it includes the following condition:
This article introduces how to set up server-side using Google Tag Manager, and it can help you review the entire server-side process.
#20. Key events are not working?
Maybe most of your events work fine, but the problem is mainly related just to key events (previously known as conversions)? If yes, then read my other blog post where I explain how to troubleshoot and fix key events.
Some tips there will overlap with what you learned in this guide, but there are also some new things for you to verify, for example:
- broken data layer
- typos
- “Modify event” feature, etc.
#21. Traffic acquisition reports are showing nonsense?
One of the top reports that marketers often visit in Google Analytics is the Acquisition reports (e.g., Traffic Acquisition). However, many things can go wrong there. Some channels might be displayed as Unassigned. UTM parameter data might not be captured, etc.
To help you with that, I have prepared several blog posts for you to dig deeper:
- Unassigned in Google Analytics 4 (and how to fix it)
- Not set in Google Analytics (and how to fix it)
- UTM parameters are not working in Google Analytics (and how to fix them)

#22. Missing transactions or revenue?
Here’s a situation. You implement GA4 ecommerce tracking, check the reports after a while, and see that revenue is missing or incomplete. Why? This can happen for various reasons, such as incorrect event configuration, missing or invalid parameters, data processing issues, etc.
Luckily, I have written a couple of blog posts explaining them in great detail:
#23. Missing demographic data?
Google Analytics 4 reports have a section called Demographics that provides insights into your audiences, such as their age or gender.
But it’s pretty common (especially among GA4 beginners) that those reports have no data. Why? I have written a blog post that explores possible reasons why you have missing demographic data in Google Analytics 4 and what can be done to fix the issues.
#24. Very rare: Google Analytics is down
Even though this rarely happens, it’s still worth a shot to check. Sometimes, Google also might have bad days that can disrupt Google Analytics. One of the first places where I would check is this status dashboard. See what the status of Google Analytics is there.
Also, you can google “Google Analytics status” and check other search results.
On some websites, people can vote/report if they are having issues. If you see multiple people reporting issues at the same time, there might be an outage that Google hasn’t publicly announced yet.
Google Analytics Not Working: Final Words
Trying to figure out why Google Analytics isn’t working can definitely feel like searching for a needle in a haystack, but hopefully, this guide has shown you that a step-by-step approach can lead you to the answer.
We’ve walked through a lot of potential culprits. Sometimes, the issue is a foundational setup error, like an improper installation, the wrong Measurement ID, or an unpublished Google Tag Manager container. Other times, the problem is more technical, like a restrictive Content Security Policy or an issue with your consent management setup.
We also covered common points of confusion within GA4 itself. These can include the normal 24- to 48-hour data processing delay, what (not set) values mean in your reports, and how default data retention settings can hide older information in your explorations.
By working through these common pitfalls one by one, you have a clear path to getting things fixed. Always remember to be patient, especially with GA4’s data delays, and double-check the simple things first, as they are often the source of the problem. Hopefully, you’ve now found the solution and can return to what matters most: using your data to make informed decisions.

0 COMMENTS