Home/Library/Audit Your Cloud Storage Footprint
How-to · Storage · Updated May 2026

How to Audit Your Cloud Storage Footprint

A cloud storage audit is the inventory step that finds the empty volumes, the forgotten snapshots, the cold data sitting on hot tiers, and the buckets nobody owns. This is the method we run before touching a single resource, the work that turns a vague storage bill into a ranked list of fixes.

A cloud storage audit is a complete inventory of everything you store and what it costs, joined to how that storage is actually used. Storage rarely shows up as a single line you can attack, because it hides across block volumes, object buckets, snapshots, backups, database storage, and log retention, each billed differently and each accumulating quietly. The audit is the work of pulling all of it into one view so you can see the gap between what you pay for and what you use. Done well, it is the difference between guessing and knowing, and it is the first thing we do on any storage engagement.

This article is part of our complete guide to cloud storage and data cost optimization, the cluster pillar it links up to. The audit is the See step of our See, Cut, Lock, Run method applied to storage: you cannot cut what you have not measured, and you cannot rank fixes without dollar figures attached to each one.

The audit produces a ranked list, not a feeling

The output of a storage audit is a spreadsheet of every storage object with provisioned size, used size, tier, age, owner, and monthly cost, sorted by dollars of waste. Everything downstream, the resizing, the lifecycle rules, the deletions, draws from that list.

Step 1: Inventory every storage type, not just buckets

The first mistake in a storage audit is auditing only object storage because it is the easiest to list. The footprint is wider than that. Pull a complete inventory across block volumes attached and unattached, object storage buckets, snapshots of volumes and databases, backup vaults, database and data-warehouse storage, file shares, and log and telemetry retention. Each of these is a separate billing dimension and each hides a different kind of waste. The unattached volume is pure idle cost, the subject of storage waste: snapshots, orphaned disks, and old backups. The over-provisioned attached volume is the subject of storage rightsizing. List them all before you reason about any of them.

Step 2: Join cost to usage for every object

An inventory of sizes is not yet an audit. The audit is the join between what each object costs and how it is used. For block volumes, that means provisioned size against used size and measured IOPS. For object storage, it means total size against access frequency, since data nobody reads is a tiering opportunity. For snapshots and backups, it means age against retention policy, since most estates keep snapshots long past any rule that justifies them. For logs, it means retention window against how far back anyone actually queries. The pattern is the same everywhere: pair the cost with the real usage, and the waste reveals itself as the gap.

Want the storage audit run for you?

Our cloud cost audit inventories every volume, bucket, snapshot and tier across AWS, Azure, GCP and OCI, joins cost to real usage, and hands you a ranked fix list. On the performance model, you pay only from realized savings. No savings, no fee.

Book a cloud cost audit →

Step 3: Flag the recurring waste patterns

Certain patterns turn up on almost every estate, and naming them speeds the audit. Watch for these signals as you work through the inventory.

SignalWhat it usually meansWhere to fix it
Unattached block volumeDisk left behind after an instance was deletedSnapshot then delete
Used far below provisionedVolume over-allocated at creationRightsize the volume
Snapshots older than any retention ruleNo lifecycle policy on snapshotsExpire on a schedule
Cold data on a hot tierWrong tier for access patternLifecycle to cool or archive
Versioned bucket, no expiryEvery prior version kept foreverVersion expiry rule
Incomplete multipart uploadsFragments of failed uploads billing silentlyAbort-incomplete rule
Untagged or unowned storageNobody accountable for the spendTag, then assign an owner

Step 4: Establish ownership before you cut

An audit that finds waste but cannot find an owner stalls. A large share of storage waste is untagged or attached to a team that no longer exists, and you cannot safely delete a volume or shorten a retention window without knowing who depends on it. Resolve ownership as part of the audit: map each significant storage object to a team through tags, and where tags are missing, trace it through the resource that created it. The discipline of fixing tag gaps is covered in how to tackle untagged and unowned resources. Ownership is what lets the audit convert into action rather than a report that sits unread.

Step 5: Rank by dollars and confirm before deleting

With cost, usage, and ownership joined, sort the inventory by monthly dollars of waste and work top down. The largest single line, often a fleet of over-provisioned volumes or a backup vault with no expiry, is usually worth more than the next ten combined. For anything you intend to delete, snapshot first, validate the copy, and keep the rollback obvious, the same care described in storage waste: snapshots, orphaned disks, and old backups. Confirm with the owner before deleting anything you did not create. The audit's value is realized only when the ranked list becomes a sequence of safe, confirmed changes.

Go deeper · free playbook

The Cloud Storage and Egress Cost Playbook includes the inventory queries and the scoring model we use to rank storage waste by dollars. It is the downloadable companion to this audit method.

Make the audit repeatable, not a one-off

Storage grows back. A footprint you cleaned six months ago drifts as new volumes are provisioned generously, new snapshots accumulate, and new buckets fill with versions. The audit you run by hand the first time should become a scheduled query that flags the same patterns automatically, so the inventory stays current and waste surfaces as it appears rather than at the next annual cleanup. This is the Lock step applied to storage, and the lifecycle automation that supports it is in how to build a storage lifecycle policy. Provisioned sizes, snapshot and tier options, and lifecycle features differ across AWS, Azure, GCP and OCI and change. Verify current behavior in each provider's documentation before acting, as of May 2026.

The short version

Inventory every storage type rather than just buckets, join cost to real usage so the waste shows as a gap, flag the recurring patterns, establish ownership, then rank by dollars and confirm before deleting. Once the footprint is clean, the next move is matching each volume to real need in storage rightsizing. When you want the audit run across the whole estate at once, that is 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