Process Flow
Animated overview of the full workflow
TL;DR
GA4 can export raw event-level data to Google BigQuery for advanced analysis. This gives you access to every event, parameter, and user property without sampling or data retention limits. Set up in Admin > BigQuery Links > Link. Choose daily export (free, processed next day) or streaming export (near real-time, may incur BigQuery costs). You need a Google Cloud project with BigQuery enabled.
Step-by-Step Guide
Follow these 4 steps to complete this guide
- 1
Why Export to BigQuery?
GA4's interface has limitations: data retention caps at 14 months for Explorations, sampling occurs on large datasets, and some analyses are not possible in the UI. BigQuery gives you unlimited historical data, SQL-powered analysis, no sampling, and the ability to join with other data sources.
- 2
Setup
Create a Google Cloud project with billing enabled. Enable the BigQuery API. In GA4, go to Admin > BigQuery Links > Link. Select your Google Cloud project and dataset location. Choose export type: Daily (free, processed overnight) or Streaming (near real-time, costs apply). Select which events to include (all or specific events).
- 3
Querying GA4 Data in BigQuery
GA4 creates tables named `events_YYYYMMDD`. Each row is an event with nested fields for event_params, user_properties, device, geo, and traffic_source. Use UNNEST() to access nested fields.
- 4
Cost Considerations
Daily export storage is relatively cheap. Streaming export incurs BigQuery streaming insert costs. Query costs depend on data scanned — partition your queries by date to control costs.
Was this guide helpful?
Your feedback helps us improve our guides