# Missed Capacity-Based Pricing for Heavy On-Demand BigQuery Workloads

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/missed-capacity-based-pricing-for-heavy-on-demand-bigquery-workloads

BigQuery bills queries by default on the on-demand model, per TiB of data processed.

By: PointFive

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

The short version

BigQuery bills queries by default on the on-demand model, per TiB of data processed.

PointFive Research

Cloud cost research at PointFive

GCP service

[GCP BigQuery](https://www.pointfive.co/efficiency-hub/cloud-services/gcp-bigquery)

Category

[Databases](https://www.pointfive.co/efficiency-hub/service-category/databases)

Reference

CER-0485

Type

Suboptimal Pricing Model

## Explanation

Why the waste happens and who it affects.

The alternative is capacity pricing through BigQuery editions, where compute is billed per slot-hour with autoscaling and optional baseline and committed slots, independent of how many bytes a query scans. For projects that run a large, steady volume of scheduled transformations, BI dashboards and scan-heavy queries, the same work can cost less as slot-hours than as TiB processed, and Enterprise and Enterprise Plus commitments add a further discount (20% for one year, 40% for three years).

Projects stay on on-demand pricing because it is the default and requires no setup, even after query volume has grown far beyond the free tier. Google's Well-Architected Framework cost pillar recommends reducing query processing costs for steady-state workloads by using capacity-based pricing, and the BigQuery edition slot recommender produces cost-optimized recommendations specifically for on-demand workloads, including the cost of converting projects to the Enterprise edition. The opposite problem, reservations that are larger than the workload needs, is a separate inefficiency.

## Billing model

The pricing dimensions that drive this cost.

BigQuery offers two compute pricing models that can be mixed per project.

On-demand compute

Billed per TiB processed by each query, with the first 1 TiB per month free and up to 2,000 concurrent slots per project

Editions autoscaling

Standard, Enterprise and Enterprise Plus reservations bill autoscaled slots per slot-hour, with a one-minute minimum by default

Baseline and committed slots

Enterprise and Enterprise Plus can add baseline slots and 1-year or 3-year capacity commitments, billed whether or not the slots are used

Project assignment

A project assigned to a reservation stops paying on-demand rates for the job types covered by the assignment

## How to detect

4 checks to find it in your estate.

- Open Workload management, Slot estimator in the BigQuery console and select an on-demand workload to see the edition slot recommender's cost-optimized options (pay as you go, 1-year and 3-year commitments) for the organization or specific projects, based on the past 30 days

- List recommendations from google.bigquery.capacityCommitments.Recommender with gcloud or the Recommender API for on-demand projects

- From INFORMATION\_SCHEMA.JOBS, sum total\_bytes\_billed (on-demand cost driver) and total\_slot\_ms (slot-hours the same work consumed) per project over 30 to 90 days to compare the two models for heavy projects

- Look for projects whose on-demand charges are consistently high and steady month to month rather than spiky

## How to fix

5 ways to remove the waste.

- Model the move with the slot estimator and custom pricing, then create a reservation in the right edition with autoscaling and assign the heavy projects to it; keep spiky or low-volume projects on on-demand, since both models can run side by side

- Choose the edition by required features, not only price: Standard edition has no BigQuery ML, customer-managed keys, row-level security or capacity commitments, so projects that use those need Enterprise or higher

- Add baseline slots or a 1-year or 3-year commitment only for the steady floor of slot usage shown by the recommender, keeping the sum of baselines at or below committed slots; commitments are billed for their full term

- Set a maximum reservation size and review slot utilization after the switch, since capacity pricing replaces a per-query cost with a per-slot-hour cost that must be actively managed

- Combine with query-level savings such as partitioning and clustering, which reduce slot time as well as bytes

## Documentation

Vendor references for pricing and configuration.

- [View edition slot recommendations  docs.cloud.google.com](https://docs.cloud.google.com/bigquery/docs/slot-recommender)

- [Understand BigQuery editions  docs.cloud.google.com](https://docs.cloud.google.com/bigquery/docs/editions-intro)

- [BigQuery pricing  cloud.google.com](https://cloud.google.com/bigquery/pricing)

- [Optimize resource usage  docs.cloud.google.com](https://docs.cloud.google.com/architecture/framework/cost-optimization/optimize-resource-usage)

- [JOBS view  docs.cloud.google.com](https://docs.cloud.google.com/bigquery/docs/information-schema-jobs)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- GCP BigQuery  CER-0488

### [Streaming Ingestion via REST Instead of Storage Write API gRPC in BigQuery](https://www.pointfive.co/efficiency-hub/inefficiencies/streaming-ingestion-via-rest-instead-of-storage-write-api-grpc-in-bigquery)

BigQuery offers two streaming paths. The Storage Write API (REST), previously known as the legacy tabledata.insertAll method, bills streamed data per 200 MiB and counts every row as at least 1 KB. The Storage Write API over gRPC bills per...

Databases

- GCP BigQuery  CER-0295

### [Overselecting Data and Misusing LIMIT for Cost Control in BigQuery](https://www.pointfive.co/efficiency-hub/inefficiencies/overselecting-data-and-misusing-limit-for-cost-control-in-bigquery)

Analysts use SELECT \* (reading more columns than needed) and/or rely on LIMIT as a cost-control mechanism. In BigQuery, projecting excess columns increases the amount of data read and can materially raise query cost, particularly on wide...

Databases

- GCP BigQuery  CER-0226

### [Unoptimized Billing Model for BigQuery Dataset Storage](https://www.pointfive.co/efficiency-hub/inefficiencies/unoptimized-billing-model-for-bigquery-dataset-storage)

Highly compressible datasets, such as those with repeated string fields, nested structures, or uniform rows, can benefit significantly from physical storage billing. Yet most datasets remain on logical storage by default, even when...

Databases

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

