Search code examples
google-bigquerygoogle-analyticslooker-studio

What's the optimal way to set up a BigQuery reporting table for GA4 data?


I'm working with GA4 data in BigQuery and have been using Looker Studio to create some dashboards.

This rapidly increased my processing costs as I was pointing these directly at the intraday tables. After some research, I found some vague allusions to creating bespoke reporting tables with date partitioning.

I've been trying to muddle my way through this process, so just wondered if anyone had any advice on best practice?


Solution

  • Welcome, I would say there is no standard solution and what you do will be based on your individual requirements. If you are going to query this data regularly then you may benefit from creating a table from the raw data and partitioning it. Note that the raw tables are sharded, so if you want all the data from a particular day you will only be charged for this day, but even so in GA4 that can be a lot of data!

    If you feel like you may want to cherry pick particular events that you could also cluster your new table on the event name, which can reduce the time and costs of individual queries considerably.

    Obviously there is a cost to building such a table, so you would want to be sure that the benefits make this cost worthwhile.