Skip to content
Cloudreason

Google Cloud cost optimisation: the bill lives in the data

The same query on the same data can cost pennies or hundreds of euros. The design decides.

Google Cloud Cost Optimisation · Google Cloud

Published

Google Cloud estates concentrate their cost differently from AWS and Azure. Compute is rarely why a GCP bill hurts; data is. BigQuery, storage and the movement between them dominate real-world Google Cloud spend, and they respond to design decisions more than to any tuning dashboard. Our largest single percentage result anywhere came on this platform: a music technology startup’s projected €1 million a year cut by more than 90%, almost entirely through re-architecting BigQuery and storage.

BigQuery: the architecture is the bill

BigQuery’s on-demand model charges for the data each query scans — currently $6.25 per terabyte — and it scans every row of every column a query touches unless the table design tells it not to. That single fact drives almost everything about BigQuery cost:

  • Partition and cluster deliberately. Partitioning by date and clustering by the columns queries filter on lets the engine skip data that cannot contain the answer. It routinely cuts scanned volume by well over half, and it is a schema decision, not a query optimisation.
  • Stop paying the SELECT * tax. Columnar storage means you pay for every column you touch. Selecting only needed columns, previewing tables instead of querying them, and setting per-query byte limits are free disciplines.
  • Move to capacity pricing when spend justifies it. Once analytical spend is steady, BigQuery editions buy dedicated slot capacity at a predictable price and cap the blast radius of any single bad query. The on-demand versus capacity decision should be recalculated as usage grows.
  • Watch storage as well as compute. Long-term storage pricing discounts tables untouched for 90 days automatically, but partition expiry and dataset retention still need setting, or history accumulates forever.

Compute: discounts you must design for

Google Cloud’s compute pricing rewards attention in three layers. Sustained use discounts apply automatically to eligible machine types, up to around 30%, and custom machine types let you size VMs to the workload instead of the nearest catalogue shape. Committed use discounts are the deliberate instrument: one or three year, resource-based or spend-based, reaching up to around 57% on general-purpose compute and more on some families; the sizing strategy is the same as every platform’s and is covered in our commitment guide. Spot VMs run interruption-tolerant work at 60 to 91% off, and on GKE the equivalent discipline is honest pod resource requests — whether you run standard clusters, where requests drive bin-packing, or Autopilot, where requests are the bill.

Storage and movement

Cloud Storage runs Standard, Nearline, Coldline and Archive, with Autoclass moving objects automatically as access patterns change; the tiering logic, lifecycle rules and retrieval traps are the same on every platform and live in our storage costs guide. The Google-specific habit worth building early is watching data movement: egress to the internet and traffic between regions are billed per gigabyte, and a chatty multi-region design pays for its chattiness every hour.

The billing export is a gift — use it

One genuine Google Cloud advantage: the billing export to BigQuery gives you the raw material for cost allocation in the same tool your analysts already use. Combined with a disciplined project structure — projects are GCP’s natural allocation boundary, as accounts are on AWS — it makes showback cheaper to build here than on any other platform. Allocation is the foundation everything else stands on, on GCP as everywhere.

The layers are the same as on AWS: hygiene, then pricing, then architecture, and then someone has to own it continuously, because every one of these gains erodes if nobody does. That ownership is our Managed FinOps service, and the three-day Cloud Cost Health Check will tell you what your Google Cloud estate should cost before you commit to anything ongoing. Or simply talk to us.

← Managed FinOps at Cloudreason

Frequently asked questions

Why is BigQuery so expensive?

It usually isn't BigQuery that is expensive; it is the table design. On-demand pricing charges for the data each query scans, and BigQuery scans every row of every column a query touches unless partitioning and clustering tell it not to. Well-structured tables routinely cut scanned volume by more than half, often far more, for exactly the same answers.

Should we use BigQuery on-demand or capacity pricing?

On-demand is right while query spend is modest or unpredictable: no commitment, pay per terabyte scanned. Once analytical spend is steady, capacity pricing through BigQuery editions buys dedicated slots at a predictable cost and caps the damage any single query can do. The crossover is a calculation worth redoing as usage grows, not a decision to make once.

What discounts does Google Cloud offer on compute?

Three main ones. Sustained use discounts apply automatically to eligible machine types the longer an instance runs in a month, up to around 30%. Committed use discounts are the deliberate instrument: one or three year commitments, resource-based or spend-based, reaching up to around 57% on general-purpose compute and more on some families. Spot VMs run interruption-tolerant work at discounts of 60 to 91%.

Is GKE Autopilot cheaper than standard GKE?

It depends what you are wasting. Autopilot bills per pod resource request, which eliminates the empty-node waste that dominates most self-managed clusters, in exchange for a higher per-unit rate. If your requests are honest, Autopilot is often cheaper in practice; if your requests are inflated, you have moved the waste, not removed it. Either way, right-sizing requests is where the money is.

Want to know what your estate should cost?

The Cloud Cost Health Check answers that in three days: fixed scope, fixed price, and a plan you can act on with or without us.