Google Analytics tracking to BigQuery now for free

First, let me highlight that this is the first time that tracking and granular data access have become so free and easy. This opens the door to data usage for the smaller companies that could not previously justify the 6 figure yearly tracking cost that the alternatives bring.


A new feature released by google now allows users to push data from GA to Bigquery by simply configuring it in their accounts.

Provided you have a new property type (can tell by DATA STREAMS being present), you can add a stream to bigquery.

Under “bigquery linking” select your BQ data set (some permissions may be needed) and data will start arriving after up to 24h (you can check if you tracking works OK by checking if you get data under the current traffic view in analytics).

Once the data reaches your database you will see it comes in a sharded structure.

The data in the tables is on event level and contains the usual fields. Here is an example


data types:


I assume you want to unnest this so you can analyse it easily. Unnesting the BQ data stucture is kind of like cross joining a sub table

from `myproject***.analytics_24******8.events_20201011`,
unnest(event_params) as event_params;


  1. Granular tracking as opposed to aggregated reports allows more easily to create hypotheses based on data and verify them.
  2. Arranging data for analysis. An analytic data model typically models the data after a process (such as traversing a conversion funnel). In GA, the data is modelled for a pre-defined set of analyses about the process of browsing! (not about your process of conversion). So in order to understand the user behaviour, the data needs to be unpacked and re-arranged into meaningful tables based on the events they contain.
  3. Linking to other data points: For example, by pushing and using a logged in user-id we are able to link browsing users across devices. Or we could link those purchased products to our product information management system.
  4. Input for CRM or data science (for the kind that is useful). Knowing the browsing sequences of users allows you to detect problem items, next best action (recommendation) conversion propensity, churn propensity (now you know if they read the cancellation terms), allowing you to create personalised CRM campaigns based on browsing behaviour.


Do you have any questions or other use case suggestions? Or do you need help with your current set-up ? Write me an email to adrian at

Leave a comment

Your email address will not be published. Required fields are marked *