BigQuery allows you to focus on getting insights from your big data instead of managing your physical infrastructure. However, taking into account the vast capabilities of this data warehouse, you need to pay attention to your costs. Let’s break apart BigQuery’s pricing model and help you choose the services that meet your needs.
Google BigQuery is a fully-managed serverless data warehouse based on the Google Cloud Platform that allows users to store and query petabytes of data within minutes. BigQuery uses the standard SQL and has machine learning capabilities.
Two major factors determine your costs as an end-user — storage and analysis.
Let’s take a closer look at what each of them includes.
Storage costs are what BigQuery charges for storing your business data. There are charges for both active storage and long-term storage.
In terms of performance, security, and availability, there are no differences between active and long-term storage.
So what does it cost to store data in BigQuery?
Storage costs depend on the total amount of data you put into BigQuery. Here’s how much space different BigQuery data types take.
BigQuery cost per 1 GB
BigQuery keeps your data in active storage for $0.02 per GB per month. So if you keep a 200GB table for one month, you’ll pay just $4.
But, with the free 10GB every month, you’’ get a total of 210GB for $4.
Long-term storage costs even less than active storage. A 200GB table will cost $2 for one month. If you update the table, it becomes active storage, and the 90-day period resets.
|Type of storage||Price||Free tier|
|Active storage||$0.02 per GB||The first 10 GB are free each month|
|Long-term storage||$0.01 per GB||The first 10 GB are free each month|
Keep in mind that the storage pricing varies by location. For example, choosing south Asia as a storage location costs $0.023, while using the US or EU costs $0.02 per GB of data.
Analysis costs include the cost of running queries, including SQL queries, user-defined functions, and scripts.
When it comes to executing queries, BigQuery has two distinct price levels:
You can access flat-rate query pricing by purchasing BigQuery slots — virtual CPUs that BigQuery uses to execute SQL queries.
The slot capacity you buy dictates the query processing power reserved for all your queries at any given time.
If your requests overflow your dedicated capacity, BigQuery queues individual work units and waits for slots to become available.
Slots figure both in flat-rate and on-demand pricing models and flat-rate pricing. However, the flat-rate model gives you specific control over slots and analytics capacity.
Now that you know how much BigQuery charges for data storage and query costs, let’s estimate your actual expenses for those activities. Let’s begin with calculating your query and storage costs.
To estimate costs for different use cases, you can use one of the following techniques:
Using the BigQuery cost calculator.
Keep in mind that the costs estimated by the methods above may differ from the actual expenses for two reasons:
Factors that impact your BigQuery storage and query costs are:
For example, let’s say you have a dataset that you want to move from Google Ads into BigQuery using Whatagraph.
The dataset is used by 7 users per day, each running 4 queries per day, with average data usage of 3GB per query. We’re going to calculate the cost per month, which has 30 days.
Monthly query data used = 7 × 4 × 3GB × 30 = 2,520GB = 2.5 terabytes
To calculate the BigQuery storage price, with query data of 2.5TB per month, we need the storage price, which is $20 per 1TB at the time of writing.
Multiply 2.5TB by $20, and you get the monthly storage cost.
2.5 × 20 = $50
To calculate on-demand query pricing using the same query data, the price is $5 for 1TB. So multiply 2.5TB by $5 to get the monthly cost for on-demand queries.
2.5 × 5 = $12.5
BigQuery has two data ingestion methods:
BigQuery has two data extraction methods:
Bulk imports into BigQuery and exporting data from BigQuery don’t cost anything by default, as these tasks use a shared resource pool.
The Storage Read API uses the on-demand pricing model, with all customers reconvening a complimentary tier of 300TB per month.
However, you’re charged per-data-read in bytes from temporary tables, as they don't belong to the 300TB free tier.
If you’re on the on-demand pricing model, there are ways to cut down on the amount of data a query needs without compromising performance.
The same is true with flat-rate pricing. No matter how many flex slots you buy — you can optimize your queries and cut down on slot use.
By clustering and partitioning, you can reduce the amount of data processed by queries.
To limit the number of partitions scanned when querying clustered or partitioned tables, use a predicate filter.
This way, you execute queries on subsets of data relevant to your query and reduce the query cost.
If your BigQuery account has many projects and users, you can control expenses by setting a custom quota e limit — the amount of query data users can process each day.
Custom quotas restrict the total amount of data that all users switching that project may use. You can also add custom user quotas to individual users or service accounts within a project.
No, you can’t. Streaming data into BigQuery comes with a fee, so you should use streaming inserts only when you need to access your data quickly. However, you can load data into BigQuery for free.
Unless you need to access your data instantly, it’s always better to load it than to stream it.
BigQuery pricing for warehousing services is not one-size-fits-all, so you can easily find the most cost-effective model.
Whether you import data from your sources using Whatagraph or using one of BigQuery’s multiple integrations, it pays to know how to optimize BigQuery Costs.
With Whatagraph, you can load your data into BigQuery in real-time and create insightful data visualizations from any data source with only a few clicks.
Book a demo call with our product manager and learn how to visualize your BigQuery data using interactive reporting dashboards.
Published on Jan 24, 2023
WRITTEN BYNikola Gemes
Enter your email and get curated content straight to your inbox!
Only the best content & no spam.