#data

Google BigQuery Pricing: How Much Does BigQuery Cost?

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.

Nikola Gemes
Nikola Gemes

Jan 24, 2023 5 min read

bqpricing

What is Google BigQuery? 

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. 

Google BigQuery cost: two main factors

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. 

Google BigQuery storage costs

Storage costs are what BigQuery charges for storing your business data. There are charges for both active storage and long-term storage

  • Active storage: Tables and partitions that have been updated in the past 90 days. At the moment, BigQuery has a fixed monthly fee of $0.02 per GB of stored data. 
  • Long-term storage: Tables and partitions that haven’t been updated within the last 90 days. After 90 days, the storage cost drops by 50%, from $0.02 to $0.01 per GB per month. 

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.

Data type Size
INT64 8 bytes
FLOAT 8 bytes
NUMERIC 16 bytes
Bool 1 byte
STRING 2 bytes
Date 8 bytes
Datatime 8 bytes
Time 8 bytes
Timestamp 8 bytes
Interval 16 bytes

 

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.   

Google BigQuery analysis costs

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:

  • On-demand pricing: You pay based on the size of each query and the number of bytes handled by each query. You’re not charged if the query fails. The first terabyte of processed query data each month is free of charge. 
  • Flat-rate pricing: You pay a set fee no matter how much data your queries handle. This is the best option for users who need a fixed monthly fee within a set spending limit. 

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. 

How to know how much you will pay for Google BigQuery? 

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

40 data sources

How to calculate Google BigQuery query costs?

To estimate costs for different use cases, you can use one of the following techniques: 

  • The query validator in the cloud console. It shows how many bytes the query will process. 
  • The -dry run option in the BigQuery command-line tool — Use the -dry run flag to estimate the number of bytes read when using the command-line tool or -dry run when working with API or client libraries. 
  • The Google Cloud Platform (GCP) Pricing Calculator — Google’s tool for estimating how much money you’ll spend on the resources you need. 

Using the BigQuery cost calculator.

On-demand pricing

  1. Go to the main page of your BigQuery console
  2. Enter a query, and the query validator estimates how many bytes it will process
  3. Access the GCP Pricing Calculator.
  4. Choose BigQuery as your product and on-demand pricing method
  5. Fill in the on-screen form with all the necessary information

Flat-rate pricing:

  • Repeat the steps above and pick flat-rate pricing in the GCP calculator.

Keep in mind that the costs estimated by the methods above may differ from the actual expenses for two reasons:

  • A query clause that performs data filtering, such as a WHERE might significantly reduce the amount of data read.
  • Additional or deleted data might alter the number of bytes when the actual query is performed. 

How to estimate BigQuery storage and query costs?

Factors that impact your BigQuery storage and query costs are:

  • Number of users
  • Number of queries
  • Average data usage

For example, let’s say you have a dataset that you want to move from Google Ads into BigQuery using Whatagraph.

ga-to-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 import data costs

Data ingestion

BigQuery has two data ingestion methods:

  • You load data into one or more BigQuery tables in a single batch
  • You stream one record at a time or in tiny batches. 

40+ data

Data extraction 

BigQuery has two data extraction methods: 

  • Export data from tables to Cloud Storage in bulk.
  • Stream exports of table data using the Storage Read API.  

Bulk imports into BigQuery and exporting data from BigQuery don’t cost anything by default, as these tasks use a shared resource pool. 

BigQuery API costs

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

How to optimize your BigQuery costs?

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. 

BigQuery clustering

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.

classic-vs-partitioned

Source

This way, you execute queries on subsets of data relevant to your query and reduce the query cost

BigQuery custom cost control

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. 

Can you stream data into BigQuery free of charge?

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. 

cross-channel reports

Wrapping up

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 BY

Nikola Gemes

Read more awesome articles

Enter your email and get curated content straight to your inbox!

Only the best content & no spam. Pinky promise.
By submitting this form, you agree to our Privacy policy