How much will the GA4 BigQuery Export cost?

James Standen GA4, Google BigQuery

One of the best new things about GA4 is that the BigQuery detailed events export is available to everyone.  This provides a much more sophisticated and useful level of access to your GA4 data. In fact, if you are seeing “(other)” in your reports and in tools using the Data API, BigQuery is the way to avoid it.

But we’ve found that many companies are concerned about potential BigQuery costs, often unnecessarily.  BigQuery is a remarkably cost effective way to query huge amounts of data and for smaller and medium amounts of data costs almost nothing.  In fact, Google includes 1 TB of processing and 10 GB of storage for free! 

Still, every site is different, so in this post, we’ll explore how to calculate the GA4 BigQuery export cost for your site, and how some simple techniques can save you 90% or more on your BigQuery bill.

BigQuery GA4 export costs - typical cost breakdown

How to calculate GA4 BigQuery Export Cost

There are two components of BigQuery cost:

  1. Storage - the total storage used by your tables about $15 per TB per month ($0.02/gb/mo of active storage, and $0.01/gb/mo for long term storage). 

  2. Query Processing - the bytes that are processed by the queries you run, billed at $5 per TB queried per month.  Bytes are calculated by looking at the data stored in the columns used for the date range queried.

GA4 BigQuery Storage Costs

Storage Calculation: (Events Per Day) x (365 days in a year) x (bytes per event) x 1073741824 bytes/GB x ($0.0125 per GB per Month)

Storage is generally a very small cost.  The main driver for storage is how many events you have per day, and how big those events are. We make a conservative estimate 2,000 bytes per event, and 100,000 events per day. You can calculate the number of bytes per event by dividing the table size by the number of rows.

Using the storage calculation above and our conservative estimates for total events and event size,  if you have a GA4 property that records 100,000 events per day at 2,000 bytes per event, after a year your GA4 BigQuery export cost for storage is $0.85 per month.   

In the calculation, the $0.0125 per GB is the average cost as the last 90 days will bill at $0.02 per GB per month.  After that, tables are charged at just $0.01 per GB per month for long term storage. As a result, the average actually falls as more years are added. 

The bottom line is, storage of the raw GA4 data does not cost much.

GA4 BigQuery Processing Costs

Query Processing Calculation: $5 per TB per month, where the bytes are the total bytes stored in all the columns required within the query. If the table is partitioned or sharded, only the bytes in the partition or shards are counted.

Query processing is likely to be the larger factor but still reasonable. Using the same example for the underlying data, imagine you run 1000 queries a month and that each query accesses about 10% of your year's data.  

That means in the above example that about 6.6 TB would be queried, and it would cost about $30 a month for those 1000 queries.  

In other words, 100,000 events per day x 2000 bytes per event x 365 days of data x 10% of data used in the query x 1,000 runs of that query = 7,300,000,000,000 bytes.  This is 6.6391 TB queried in the month x $5/TB in processing charges = $33.20 in query processing costs. 

Those queries can be made from anywhere, including the BigQuery console or your BI tools. Each query counts for every user (and every agency, and every consultant) who is hitting the raw tables.

Overall the cost is reasonable, however that's just 1 query.  What happens when you have a dashboard with multiple charts and tables that is being accessed by multiple users, some of whom are interacting with the dashboard?  Well, potentially, each user is causing a full refresh and each interaction is causing even more queries.  This is where your costs will really start to add up!!  

But I’ve heard horror stories about HUGE BigQuery costs, what’s that about?

There is a lot of uncertainty and fear around runaway BigQuery costs, and certainly when someone gets a huge unexpected bill, the story often spreads.  The most common reason for an overly large bill is an issue with repeated, high frequency queries involving all the history.  Here are some other reasons for high BigQuery costs: 

  • automation that is set to run too often
  • a badly written script 
  • a reporting tool that generates a lot of queries from very large tables for each person who views the report (ahem, Data Studio)
  • inexperienced users writing bad SQL 
  • development activity that is querying the entire dataset instead of a small sample
  • production reporting that is hitting the raw event tables 

BigQuery does have budget control features, which can limit any issues. Setting these up properly will ensure you avoid any large and unexpected costs.  

Controlling GA4 BigQuery Export costs

The number one way to minimize BigQuery costs is to make smaller summary tables and update them incrementally. The image below illustrates a typical example of querying the raw event tables vs an incrementally loaded summary table. 

other in GA4 reports

Here are some other easy techniques to keep your query costs in check:

  1. Do not constantly re-query the raw event_yyyymmdd tables as this queries the maximum amount of data each time.  Instead, create summary tables for routine reports that are loaded incrementally (just with fresh + reprocessed data) and query against those.  For ad-hoc reporting, land queries into summary tables and continue the analysis against these smaller tables, rather than against the raw event tables.

  2. Limit access to the raw event tables. If users can only query against the smaller, curated summary tables, you eliminate the risk of them querying over the full data set. 

  3. Implement your BigQuery cost controls in the Google Cloud Console to ensure no one can blow your budget.

  4. Use data-prep and reporting tools that have cost controls built-in. This allows more seasoned users to have more quota available, and limits new users to smaller queries that won’t break the bank.

  5. Use data-prep and reporting tools that are designed to minimize your BigQuery costs by
    1. landing your data in curated, date-partitioned summary tables
    2. providing an environment for all users to work with the curated summary tables 
    3. querying only what is required, when it is required
GA4 other

Controlling GA4 BigQuery Export Costs with Analytics Canvas

Analytics Canvas gives you an easy to use, visual query builder for querying against the raw event tables.  It then lands those queries into summary tables, incrementally loads them, and makes them available to other users within your subscription. 

For further data profiling and processing, Canvas provides a block-and-connector based model that allows analysts to develop queries visually all while minimizing the number of queries made. As an added benefit, the Canvas is a fully auditable trail that shows how the data is processed for reporting.

Better still, for Starter, Pro, and Premium plan customers, the only direct BigQuery cost is the query that generates the summary tables.  All further processing done within Canvas is covered by your subscription and doesn't charge your BigQuery account!

For reporting and visualization, Canvas offers connectors to Data Studio and Tableau which generate extracts.  These extracts are queried in your reports and do not incur BigQuery processing or storage costs. 

Wrapping Up

While there is a cost to the GA4 BigQuery export, the incredible level of detail is worth it.  What’s more, the costs will generally be very low, especially if you’re using the techniques outlined above.  Incrementally load data for routine reports into summary tables, land ad-hoc queries into summary tables for exploration and processing, and whatever you do, don’t point your reporting and visualization tools at the raw export tables!

The GA4 connectors in Analytics Canvas are built by data engineers with over a decade of experience working with GA and Analytics360 data. With an Analytics Canvas subscription, you can minimize your BigQuery costs and enjoy all the benefits of our Data Prep software. Choose from our Starter, Pro, Premium or Enterprise plans based on the needs of your business.   

Next Steps

Whenever you’re ready… here are 3 ways Canvas can help you with your GA4 reporting challenges:

  1. Extract data from all your properties using the API or BigQuery without writing code
  2. Profile, analyse, and prepare data for reporting in a visual, no-code editor
  3. Publish your data into summary tables for reporting for maximum performance and minimum cost. 

Ready for the next step?

  • Start an instant 30 day risk-free trial. No credit card or sales call required. 
  • Schedule a demo for you and your team.
  • Contact us to discuss plans and pricing or activate your subscription 

Wondering if Canvas is right for you? Check out the related articles to learn more about our GA4 connectors.