Real results

What we find in real AWS accounts.

Every audit below is based on real patterns from production AWS environments. Company names anonymized on request.

Series B SaaS Company · 45 employees · $14,800/mo AWS bill

Before
$14,800/mo
Waste found
$2,340/mo
Annual saving
$28,080
Duration
5 days
Stage
Series B · 45 employees
Monthly AWS Spend
$14,800/month
Primary Services
ECS Fargate, RDS PostgreSQL, S3, ALB, CloudWatch
Infrastructure Owner
1 backend engineer, no dedicated DevOps/SRE
IaC Setup
Mix of Terraform and manual console changes
Why They Came to Us
AWS bill grew 40% in 6 months, board asked questions

6 issues. $2,340/month in waste.

Finding 01
NAT Gateway data processing charges
$840/mo

ECS tasks in private subnets routing all traffic (including S3, DynamoDB, SSM calls) through NAT Gateway at $0.045/GB. S3 calls alone = $520/month. Internal AWS service traffic never needs to leave the VPC.

Fix

Add VPC Gateway Endpoints for S3 and DynamoDB (free). Add Interface Endpoints for SSM and ECR.

Saving: $720–840/month Effort: 2–3 hours
Finding 02
RDS over-provisioned 3×
$580/mo

db.r6g.2xlarge running at 12% average CPU, peak 34%, memory never above 18GB. Upsized 8 months ago during a traffic spike, never reviewed.

Fix

Downsize to db.r6g.large. Run parallel for 72 hours with Performance Insights to validate before cutover.

Saving: $518/month Effort: 4 hours including validation
Finding 03
CloudWatch log retention set to "Never Expire"
$320/mo

23 log groups, no retention policy, 2.4TB of logs going back 3 years at $0.03/GB/month. 90% of logs older than 30 days never queried. Debug logging enabled in production.

Fix

30-day retention on app logs, 90-day on audit logs. Switch ECS tasks from DEBUG to INFO.

Saving: $290–320/month Effort: 1 hour (Terraform change)
Finding 04
Orphaned ALBs and Elastic IPs
$210/mo

2 Application Load Balancers from a deprecated staging environment ($16.43/mo each). 3 unattached Elastic IPs ($3.65/mo each). Zero traffic for 90+ days.

Fix

Delete idle ALBs, release unattached Elastic IPs. Add monthly orphaned-resource review to ops checklist.

Saving: $210/month Effort: 30 minutes
Finding 05
ECS Fargate tasks sized for peak, no auto-scaling
$240/mo

6 Fargate tasks at 1 vCPU/2GB running 24/7. 70% of traffic between 9am–7pm weekdays. Overnight/weekend CPU under 5%. No Application Auto Scaling configured.

Fix

ECS Application Auto Scaling with CPU target tracking (60%). Min 2 tasks overnight, max 10 at peak.

Saving: $200–240/month Effort: 2 hours
Finding 06
S3 in Standard tier, no lifecycle policy
$150/mo

4.2TB in S3 Standard ($0.023/GB). 80% of objects not accessed in 90+ days — processed batch files with no expiry.

Fix

Lifecycle policy: Standard-IA after 30 days, Glacier Instant Retrieval after 90 days.

Saving: $130–150/month Effort: 1 hour
$2,340/mo
Monthly savings
$28,080/yr
Annual savings
18.7×
ROI on $1,500 audit
<2 days
To implement all fixes
"We knew we were probably wasting something on AWS, but couldn't find it ourselves. Runtimez found $2,300/month in 5 days — the NAT Gateway finding alone was worth 10× the fee."
— CTO, Series B SaaS company (anonymized on request)

Architecture risks (not cost)

  • RDS had no read replica — single AZ failure = full database outage
  • ECS task IAM roles had wildcard S3 permissions across all buckets
  • No CloudWatch alarms for ECS task failures — silent crashes going undetected
Fintech startup · Series A

Found $1,200/month in EC2 Reserved Instance waste and missing Savings Plans coverage.

Full write-up coming soon
E-commerce platform · 80 employees

Identified 4 architecture risks including a single-AZ RDS with no automated backups.

Full write-up coming soon

Want us to find what's in your bill?

$1,500 flat · 5 business days · free 30-min scoping call first

Book a scoping call