The Hidden Cost of Forgotten AWS Resources (And How to Find Them)
Orphaned EBS volumes, unused Elastic IPs, old snapshots, and idle load balancers silently drain your AWS budget. Learn how to find and eliminate these hidden costs.
The Hidden Cost of Forgotten AWS Resources
The resources you forgot about are still on your bill
Every AWS account has them: resources that were created for a project that ended, a test that finished, or an instance that was terminated. They sit quietly in your account, generating charges month after month, while nobody remembers they exist.
The average AWS account wastes 20-35% of its budget on forgotten resources. Here's how to find them and stop the bleeding.
The Usual Suspects: Resources That Hide on Your Bill
Unattached EBS Volumes
When you terminate an EC2 instance, AWS doesn't automatically delete its EBS volumes (unless you explicitly configured it to). These orphaned volumes continue to incur storage charges.
How to find them:
Old EBS Snapshots
Automated backups create snapshots daily, but many retention policies never delete old ones. After a year, you could have 365 snapshots per volume—most of which you'll never need.
Snapshot Math
Retention Strategy
Find snapshots older than 90 days:
Unassociated Elastic IPs
AWS charges for Elastic IP addresses that aren't attached to running instances. It's a small charge per IP, but organizations often have dozens of these forgotten addresses.
Find unassociated Elastic IPs:
Idle Load Balancers
Application Load Balancers charge per hour regardless of traffic. Load balancers created for projects that ended continue to incur charges even with zero traffic.
Find load balancers with no healthy targets:
Unused NAT Gateways
NAT Gateways are expensive and often over-provisioned. If you've deleted the private subnets or instances that used them, the NAT Gateway keeps charging.
Idle RDS Instances
Test databases, staging environments from old projects, or development databases that nobody uses anymore. RDS instances are some of the most expensive forgotten resources.
Signs of an idle RDS instance:
- • Zero database connections for days
- • CPU utilization consistently below 1%
- • No recent query logs
- • Named "test", "dev", "staging", or "backup"
Calculate Your Hidden Costs
Use these numbers to estimate how much you might be wasting:
| Resource Type | Typical Count | Unit Cost | Monthly Waste |
|---|---|---|---|
| Unattached EBS Volumes (500GB avg) | 5-20 | $40 each | $200-800 |
| Old Snapshots (>90 days, 1TB) | 100-500 | $50/TB | $100-500 |
| Unassociated Elastic IPs | 5-20 | $3.65 each | $18-73 |
| Idle Load Balancers | 2-5 | $16 each | $32-80 |
| Unused NAT Gateways | 1-3 | $33 each | $33-99 |
| Idle RDS Instances | 1-3 | $50-350 each | $50-1,050 |
| Estimated Monthly Waste | $433-2,602 | ||
The Safe Cleanup Process
Identify
Find all unused resources using AWS CLI or Cost Explorer
- • Export resource list
- • Note creation dates
- • Check tags for owners
Verify
Confirm resources aren't needed before deletion
- • Check CloudWatch metrics
- • Contact resource owners
- • Review access logs
Backup
Create final backups of anything uncertain
- • Snapshot volumes
- • Export configurations
- • Document settings
Delete
Remove resources and verify cost reduction
- • Delete in batches
- • Monitor for issues
- • Verify in Cost Explorer
Safety Tip
Never delete resources in production accounts without proper verification. When in doubt, tag resources as "pending-deletion" and wait 2 weeks before actually deleting.
Prevent Future Resource Sprawl
Governance Rules
- Mandatory tagging: Require Owner, Project, and Environment tags on all resources
- Expiration dates: Set TTL tags for temporary resources
- Terminate-on-delete: Configure EBS volumes to delete with instances
- Snapshot lifecycle: Use AWS Backup with retention policies
Automation
- Weekly reports: Automated list of unused resources
- Budget alerts: Notify when costs exceed thresholds
- Lambda cleanup: Auto-delete untagged resources after 7 days
- Infrastructure as Code: Destroy resources with terraform destroy
Find Your Forgotten Resources Automatically
Upload your AWS Cost Explorer CSV and our free analyzer will identify orphaned volumes, old snapshots, unused IPs, and other hidden costs in minutes.
Find My Hidden Costs FreeNo credit card required • Instant results • 100% free
The Bottom Line
Forgotten resources are the most wasteful cloud costs because they provide zero value. Unlike over-provisioned instances that at least do something, orphaned volumes and unused IPs serve no purpose—they're pure waste.