Home/Library/Audit for Waste
How-to · Waste Audit · Updated May 2026

How to Audit a Cloud Environment for Waste

A cloud waste audit turns a vague sense that the bill is too high into a ranked, dollar-quantified list of things to fix. This is the exact sequence we run on every engagement, across AWS, Azure, GCP and OCI, to find the waste and prioritize the cut.

A cloud waste audit is a structured sweep of an environment to find spend that delivers no value: idle resources, oversized provisioning, forgotten infrastructure, and duplicated capacity. Done well, it produces a single ranked list where every line carries a dollar figure and a fix, so the team can work top-down and see savings within the first week rather than debating where to start.

This article anchors a practical corner of our complete guide to cloud rightsizing and waste elimination, the cluster pillar it links up to. An audit is the See step of our See, Cut, Lock, Run method: you cannot cut what you have not measured and ranked.

Rank by dollars, not by count

A thousand untagged tiny resources matter less than three oversized database clusters. The point of the audit is not a long list; it is a sorted list. Always attach a monthly dollar figure to each finding and sort descending, so effort follows money.

Step 1: Build a complete inventory

Start with what exists. Pull a full resource inventory across every account, subscription, and project, because waste loves the corners nobody looks at: an old region, a forgotten sandbox, a separate billing account from an acquisition. Use the provider inventory tools, then reconcile against the cost and usage report so anything that bills but does not appear in your mental model surfaces. Untagged and unowned resources are a category of their own, covered in how to tackle untagged and unowned resources.

Step 2: Find the idle and the zombie

The fastest wins are resources running for nothing. Idle compute, unattached storage volumes, idle load balancers, unused elastic IPs, old snapshots, and databases with no connections are the usual catalogue. The systematic way to surface idle resources across providers is in how to find idle cloud resources across providers; these are almost always safe to delete or stop and convert directly to savings. Distinguish idle (running, no useful work) from zombie (provisioned, entirely abandoned), since zombies can usually be deleted outright.

Want the audit done for you?

Our cloud cost audit sweeps your whole estate, ranks every waste finding by dollars, and hands you a prioritized, safe-to-execute fix plan. On the performance model, you pay only from realized savings. No savings, no fee.

Book a cloud cost audit →

Step 3: Measure utilization to find the oversized

After the obvious idle resources, the next layer is provisioning that is simply too big. Pull at least two weeks of utilization and flag instances, volumes, and databases running far below their provisioned capacity. This feeds directly into the resize work in rightsizing compute. Record each as a finding with the current and target size and the monthly delta, so the resize plan is quantified before anyone touches a console.

Step 4: Check the rate, the storage, and the network

Waste is not only idle compute. Look for on-demand spend that should sit under a commitment, storage on a premium tier that is rarely accessed, snapshots and backups multiplying past any retention need, and egress flows crossing billing boundaries needlessly. Each is a column in the audit. Storage and network in particular are addressed in our companion guide to cloud storage and data cost optimization.

Step 5: Rank, plan, and assign

Consolidate every finding into one sheet: resource, waste type, monthly dollars, risk to fix, and owner. Sort by dollars, group the safe high-value items into a first wave, and assign each line. The audit is only useful if it becomes action, and the discipline that keeps the savings from eroding is in how to stop cloud waste from coming back and the recurring version in building a continuous waste detection process.

Audit layerWhat you are looking forTypical disposition
ZombieAbandoned, no owner, no trafficDelete after a hold period
IdleRunning, no useful workStop, schedule, or delete
OversizedFar below provisioned capacityRightsize one step, canary first
Wrong rateOn-demand steady-state spendCommit after rightsizing
Storage and egressCold data on hot tiers, needless transferTier, lifecycle, cache

Provider inventory and recommendation tools referenced above reflect offerings as of May 2026. Verify current tool names and capabilities in each provider's console before relying on their output.

Set a baseline and a cadence

A one-time audit recovers a burst of savings and then decays as new resources are created and old ones drift. The audit becomes durable only when you record a baseline and re-run it on a schedule. Capture the starting numbers, total monthly spend, spend by waste category, and the dollar value of the findings, so the next audit can show what came back and what stayed fixed. A monthly or quarterly cadence catches new waste while it is small, before a forgotten sandbox or an over-provisioned cluster has billed for half a year. This is where an audit graduates into the operating rhythm described in building a continuous waste detection process, and it is the difference between a project that saved money once and a practice that keeps the unit cost falling, which is the Run step of our method.

Go deeper · free framework

The Cloud Waste Audit Framework is the full downloadable version of this audit: the inventory checklist, the utilization queries, and the dollar-scoring model that ranks every finding. It is the companion to this method.

Delete safely: bring the team along

The fastest way to stall a waste audit is to delete something that turned out to matter. One bad deletion buys months of resistance to every future cleanup. Reduce that risk with a simple disposal protocol rather than bravado. For anything ambiguous, stop or detach the resource first and watch for a hold period before deleting, so a missed dependency surfaces as a stopped service you can restart rather than data you cannot recover. Confirm an owner where one exists, and snapshot stateful resources before removal. Communicate the cleanup wave in advance so teams can flag anything load-bearing. Most waste, the genuine zombies and orphans, carries no such risk and can go quickly; the protocol exists for the small fraction that does. Getting this right is what lets the audit become routine instead of a one-off, the same durability covered in how to stop cloud waste from coming back.

The short version

Inventory everything, find the idle and zombie resources first, measure utilization to catch the oversized, check rate, storage, and network, then rank every finding by dollars and assign it. Run it once and you find the waste; run it on a loop and it never comes back. When you want the audit run across the whole estate at once, that is exactly what our rightsizing and waste elimination service delivers.

The Cloud Cost Brief

Cloud pricing moves. We tell you when it matters.

New commitment instruments, FOCUS changes, hyperscaler pricing shifts, and the plays that actually move a bill. No schedule, no filler.

Subscribe · Work email only