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.

$7,381Jan
$7,504Feb
$10,923Mar
$8,066Apr
$8,401May
$8,747Jun

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.

S3$3,015
EC2 – Compute$2,408
Translate$373
Redshift$360
CloudSearch$342
Savings Plans$300
QuickSight$269
ECS$257
MQ$248
CloudFront$215

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.

S3 storage66$148/mo
EBS & snapshots18$96/mo
Savings Plans & reservations2$29/mo
EC2 compute2$18/mo
Databases1$2/mo
Spend profile8unpriced
Observability & logging4unpriced
Everything else3unpriced
Serverless & containers1unpriced

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/mo

3 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/mo

elasticache-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/mo

17 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/mo

i-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/mo

ami-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/mo

ami-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

unpriced

24 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.