Back to blog
FILE 0x6E·COSTWATCH: 25 AUTOMATED SCANNERS FOR AWS WASTE YOU'RE ALREAD

CostWatch: 25 automated scanners for AWS waste you're already paying for

June 27, 2026 · aws, cost-optimization, costwatch, cloud, devops

I've been building a tool called CostWatch for the last few weeks. The premise is simple: AWS accounts accumulate waste over time, and most of it is invisible until someone looks.

Here's what a typical AWS account looks like after 18 months of active development:

None of this shows up as a budget alert. AWS Cost Explorer tells you what you spent — not what you wasted.

The scanner list

CostWatch now has 25+ scanners, organized by service:

Compute

Database / Caching

Storage

Networking

Messaging / Streaming

Serverless / API

Security / Compliance

Unified output

How it's built

Each scanner is a standalone Lambda function, scheduled via SAM. They write findings to individual DynamoDB tables. A separate aggregator reads all tables and sends the weekly SES email.

The costwatch:ignore=true tag suppresses any resource from future scans — useful for intentional standby infrastructure.

The test suite has 1,490+ tests covering every scanner. Each test uses injectable mocks for the AWS clients so there's no live AWS access in CI.

The design choice that matters

CostWatch is read-only, always. No write permissions, no IAM role modifications, no persistent session tokens. It looks, reports, and stops.

This matters because cost optimization tools with write access are a supply chain risk. If a scanner can delete EBS volumes, a bug (or a compromise) can delete your data. CostWatch surfaces the findings; you decide what to act on.

What it finds in a typical account

The average first scan on a 12-month-old AWS account finds $800–$1,200/mo in waste. The distribution is usually:

The $19/mo Solo plan pays for itself on the first month if it catches one idle ElastiCache cluster.

CostWatch is in early access at costwatch.io.