So you’ve got a shiny new GA4 property set up, and you’re loving the increased flexibility that the event-based data model has had on your tracking implementation.
Keen to see how users are engaging with your website and app, you check out the reports and… Events are missing? Even though you know they’ve been triggered and you see them in the live report?
Here's what's happening
When Google Signals is enabled in the Default Reporting Identity section of your GA4 property settings, GA4 applies a threshold and hides events from your standard and custom reports if you could potentially infer the identity of individual users based on demographics, interests, or other signals present in the data.
This occurs even if the only user-related metric applied to the event is Total Users or Active Users.
In our tests, the threshold kicked in when less than 35 users had triggered the event in the reported date range.
What can you do about it?
If you simply want to understand how many users have triggered an event, apply the Event Count Per User metric instead of Total Users. You can then calculate the number of users (Event Count / Event Count Per User).
Otherwise, to ensure you see all events in your standard and custom reports, you’ll need to choose “By device only” in the Default Reporting Identity section of your GA4 property settings.
We tested turning Google Signals off and keeping the reporting identity set to “By User ID, Google signals, then device” but this didn’t resolve the issue. It seems that, for now at least, enabling Google Signals permanently enforces the threshold regardless of the current setting.
This effectively reverts you to the level of User reporting accuracy that was offered in GA Universal Analytics non-User ID views – read this post from Samantha Chea for more on the differences between UA and GA4 user tracking.
We’re hoping that in the future, GA4 will allow us to enable and disable Google Signals at will, and keep the User ID reporting identity active without imposing a threshold.