Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

GA4>BQ streaming export, users_ table missing rows

Hi there,

Until June 18 - streaming export creates events_, pseudo- and users_ tables as intended, no difference in user_ids count between events_ and users_.

June 18 - trial ends, project goes into sandbox mode. Since we activated billing account, streaming export has resumed and both events_ and pseudo rows volume has returned to normal. But users_ table almost empty (10-14 rows instead of 300k+). I checked GA4 user_id collection, user_ids present in events table as before, but not in the users_

We have exceeding limit of 1kk events per day, but this wasn't an issue before with streaming enabled. Please direct me a way how to solve this issue.

3 1 240
1 REPLY 1

Hi @Arkess It seems the problem started after your project was moved to sandbox mode and streaming export was reactivated. While the events_ and pseudo tables are working correctly, the users_ table isn’t populating as expected. Here’s a breakdown of potential causes and solutions to help you address this issue:

1. Check Your GA4 Configuration

Make sure everything in your GA4 property is set up properly:

  • User ID Collection: Confirm that user IDs are consistently being collected in GA4. Since you mentioned they appear in the events_ table, this might not be the primary issue, but it’s worth verifying.
  • Streaming Export Settings: Ensure the export settings include the users_ table. Head to the BigQuery Settings in your GA4 Admin panel to double-check if the users_ table is enabled.

2. Investigate Quota Limits

The fact that you’re processing over 1M events per day might also be contributing to the issue:

  • Streaming Limitations: While sandbox mode itself might not directly affect this, exceeding event limits could disrupt the export of user data.
  • GA4 API Restrictions: After reactivating your billing account, some configurations for user-level data export might not have reset correctly.

Solution:


Enable daily exports in addition to streaming. Daily exports are more stable and less likely to be affected by quota limits, ensuring data consistency.

3. Review the BigQuery Schema

The schema of the users_ table in BigQuery could also be an issue. If the schema was altered during the transition to sandbox mode, it may no longer match the data being streamed.

Run the following query to check the table:

 

 
SELECT * FROM `your_project.your_dataset.users_` LIMIT 10;

If the structure seems incorrect or incomplete, consider reinitializing the streaming export settings in GA4.

4. Explore Third-Party Tools

If the problem persists, third-party tools can offer a more reliable way to manage your data pipeline:

  • Windsor.ai: This platform provides advanced data integration capabilities, including better control over GA4 exports.
  • Windsor.ai can overcome some of the limitations of native GA4 exports, ensuring your user-level data is fully captured and imported into BigQuery without disruptions.

5. Additional Debugging Steps

If none of the above resolves the issue, try these extra steps:

  • Check Google Cloud Logs for errors related to streaming export.
  • Test the export on a smaller dataset to isolate the problem.
  • Reach out to Google Support if the issue persists, as backend adjustments might be required.

Summary:

To get this resolved:

  • Double-check your GA4 and BigQuery configurations.
  • Monitor your quota usage to prevent interruptions.
  • Consider third-party tools like Windsor.ai to simplify and enhance data export reliability. 

Greetings!