The fastest way to lose a cost-cutting initiative is to start by turning things off. Engineers stop trusting you, and the savings evaporate the moment something breaks. The version that works starts somewhere far less dramatic: knowing what you actually pay for.

Step one: an inventory, not a dashboard

Before touching a single instance, I built a plain inventory — every GCP service and every third-party SaaS tied to the platform, with its monthly cost and an owner. Not a fancy dashboard; a table a human can read in one sitting.

Two categories of waste fell out immediately:

You can’t optimize a bill you can’t read. Half the savings is just attribution.

Step two: commit to what’s actually steady

The single biggest lever was committed-use discounts. The catch is you have to be honest about your real baseline — committing to capacity you don’t use is just a different way to overpay. The inventory made the baseline obvious, so the commitment was a calculation, not a gamble.

Note: Commit to your floor, not your average. Let autoscaling and on-demand absorb the peaks; pay the discounted rate for the capacity you never drop below.

Step three: storage nobody was watching

Storage is where money quietly accumulates. Old snapshots, unattached disks, logs with no retention policy, and hot-tier buckets full of cold data. Lifecycle rules and a retention policy turned a slowly-growing line item into a flat one.

Why it didn’t slow anyone down

Not one of these moves touched a developer’s workflow:

  1. Cancelling unused third-party services is invisible to the people shipping code.
  2. Committed-use discounts are a billing construct — the infrastructure runs identically.
  3. Storage lifecycle rules operate on data nobody was reading anyway.

That’s the whole philosophy: find the spend that buys you nothing, and only then have the harder conversations. Roughly 30% came off the bill, and engineering never felt a thing — which is exactly why the savings stuck.