Real output, nothing staged
A scan result we would rather not show you
Most vendors put their best number on the landing page. This is the only complete scan we have run to date, against our own AWS account, and it came back at 3.4%. That is under the 20% we guarantee, so if this account belonged to a customer we would have told them not to buy the audit.
It is here because you cannot judge a cost audit from a mock screenshot. Every figure below is what the scanner wrote to the database on 12 July 2026. Resource names carry a <redacted> prefix and long IDs are masked in the middle. Nothing else has been touched.
Account spend
$8,747/mo
Regions scanned
5
Checks completed
10 modules
Time taken
58 seconds
What the free scan reported
$293.82/month
Across 105 findings, on $8,746.75 of monthly spend. That works out at 3.4%.
What we would say on the call
This account is already reasonably tight. The savings that exist are real but small, and most of them sit in storage lifecycle rules that an engineer can apply in an afternoon without paying anyone. We would hand over the list and skip the audit. The scan is built to tell you this before money changes hands, which is the only reason a free scan is worth running.
Six months of spend, read from Cost Explorer
March came in at $10,923 against a six month average nearer $8,500. The scanner does not guess at causes like that, it flags the services whose spend is growing and leaves the explanation to whoever knows what shipped that month.
Where the money goes
Top ten services by last month's spend. S3 and EC2 are 62% of the bill between them, which is why the findings cluster there.
Savings by category
Nine of the ten check modules returned something. Categories showing no saving still produced findings, they just could not be priced from the cost APIs.
The findings themselves
The nine largest, in the order the scanner ranked them. Each one carries the resource it came from, the evidence behind the number, and what to do about it. A paying customer gets all 105 in this format with the identifiers unmasked.
5.2No lifecycle policy on a large bucket
$136.85/mo<redacted>-training-data · us-west-2 · costs $342.12/mo · risk: low · effort: hours
No lifecycle configuration. Safe default: Intelligent-Tiering, which needs no retrieval-pattern analysis. For known log or backup buckets, move to IA at 30 days and Glacier at 90, with expiry set to whatever your retention policy requires.
Evidence
{
"sizeGB": 14874.7,
"objects": 437358,
"estimateBasis": "Intelligent-Tiering typically saves 40%+ on cold data"
}4.4Snapshot sprawl (old or orphaned snapshots)
$30.00/mo3 snapshots · us-east-2 · costs $30.00/mo · risk: medium · effort: hours
Snapshots over a year old, or of volumes that no longer exist. Adopt a Data Lifecycle Manager policy such as daily×14 plus monthly×12, then review these for deletion. Deleting them needs your approval, not ours.
Evidence
{
"count": 3,
"totalSizeGiB": 600,
"oldest": "2024-07-05",
"note": "Upper-bound estimate — snapshots are incremental, so actual billed storage is likely lower."
}2.4ElastiCache reserved nodes recommended
$29.20/moelasticache-ri-recommendation · global · costs $0.00/mo · risk: low · effort: minutes
Database workloads are the most stable thing in a typical account, so 1-year no-upfront ElastiCache reservations carry little risk and usually cost 30–40% less. The full option matrix is in the evidence.
Evidence
{
"service": "Amazon ElastiCache",
"bestOption": "1 year, no upfront",
"monthlySavings": 29.2,
"alternatives": {
"partialUpfront": 32.24
}
}4.4Snapshot sprawl (old or orphaned snapshots)
$26.70/mo17 snapshots · us-west-2 · costs $26.70/mo · risk: medium · effort: hours
Same pattern in a second region. The oldest of these dates from September 2020 and backs a volume that no longer exists.
Evidence
{
"count": 17,
"totalSizeGiB": 534,
"oldest": "2020-09-23",
"note": "Upper-bound estimate — snapshots are incremental, so actual billed storage is likely lower."
}3.4Non-production instance running 24/7
$17.17/moi-011e44aa••••••d45 · us-west-2 · costs $24.53/mo · risk: medium · effort: hours
A dev box on a nights-and-weekends schedule of roughly 50 hours a week costs about 70% less. You need to confirm which instances are safe to stop, which is one of the things the call is for.
Evidence
{
"instanceType": "t4g.medium",
"environmentTag": null,
"name": "<redacted>-app-dev-1"
}4.5Orphaned AMI holding snapshots
$7.50/moami-03b5f7de••••cec5 · us-east-2 · costs $7.50/mo · risk: low · effort: minutes
Deregister the AMI and delete its backing snapshots, once you have confirmed no launch template or Auto Scaling group still references it.
Evidence
{
"name": "before ubuntu upgrade",
"createdAt": "2024-02-28",
"backingSnapshotGiB": 150
}5.2No lifecycle policy on a large bucket
$5.15/mo<redacted>-reports · us-west-2 · costs $12.87/mo · risk: low · effort: hours
Same check, smaller bucket. 68,314 objects with no lifecycle rule attached.
Evidence
{
"sizeGB": 559.5,
"objects": 68314
}4.5Orphaned AMI holding snapshots
$3.20/moami-50268f30 · us-west-2 · costs $3.20/mo · risk: low · effort: minutes
An image of a database server built in December 2016, still paying for 64 GiB of snapshot storage nearly ten years later.
Evidence
{
"name": "<redacted>-mongo-prod-2",
"createdAt": "2016-12-03",
"backingSnapshotGiB": 64
}5.4Incomplete multipart uploads never cleaned up
unpriced24 buckets · multiple · costs $0.00/mo · risk: low · effort: minutes
Failed uploads leave parts behind that keep billing and never appear in the object listing. Twenty-four buckets have no abort rule. We price this at zero because the part sizes are not readable through the cost APIs, which is exactly the kind of thing the paid audit measures directly.
Evidence
{
"buckets": 24,
"abortRulePresent": 0
}What the free scan could not work out
66 of the 105 findings came back with no price on them. Incomplete multipart uploads are the clearest case: the parts keep billing and never show up in an object listing, and the cost APIs will not tell you how large they are. An automated pass can only say the abort rule is missing. Measuring the actual bytes takes a person with the account open, which is the difference between the free scan and the paid audit.
So 3.4% is a floor rather than a verdict. On this account we still think the real number is too small to justify the fee, and we would say so.
Your account will not look like this one
This one runs a heavily storage weighted workload and has had its compute reviewed before, which is roughly the worst case for a cost audit. Four inputs will give you a rough figure for yours without connecting anything.