Amazon S3 Cost Optimization
S3 costs creep up gradually. Data gets uploaded and never deleted. Default storage classes are used when cheaper tiers would work fine. Incomplete multipart uploads accumulate silently. Without lifecycle policies, storage grows monotonically — it only ever goes up.
Common S3 cost waste patterns
No lifecycle policies
Data sitting in S3 Standard forever when it could be transitioned to Infrequent Access or Glacier after a set period, or deleted entirely.
Incomplete multipart uploads
Failed or abandoned multipart uploads leave partial objects in your bucket. These fragments are invisible in the console but still incur storage charges.
Wrong storage class
Logs, backups, and archives stored in S3 Standard when S3 Glacier or S3 Glacier Deep Archive would be 60-95% cheaper for infrequently accessed data.
Versioned buckets without expiration rules
Versioned buckets retaining every historical version of objects indefinitely. Without expiration rules for non-current versions, version history grows unbounded.
How to reduce your S3 costs
Implement lifecycle policies
Save 40-70% easyTransition objects to S3-IA after 30 days, Glacier after 90 days, and delete after a year (adjust based on your retention requirements). This single change often delivers the biggest S3 savings.
Clean up incomplete multipart uploads
Save 5-10% easyAdd a lifecycle rule to abort incomplete multipart uploads after 7 days. This is a one-time bucket configuration that prevents waste accumulation.
Enable S3 Intelligent-Tiering
Save 20-40% easyFor buckets with unpredictable access patterns, Intelligent-Tiering automatically moves objects between frequent and infrequent access tiers based on access frequency. No retrieval fees for the automatic tiers.
Expire old object versions
Save 10-30% easyAdd lifecycle rules to delete non-current versions after a set number of days. Keep enough versions for recovery but not unlimited history.
How ZapStack finds S3 waste
ZapStack automatically scans your AWS environment and surfaces S3 cost savings you can action immediately.
- Identifies buckets without lifecycle policies
- Detects incomplete multipart uploads
- Flags buckets using expensive storage classes for cold data
- Finds versioned buckets with unbounded version history
- Estimates savings from storage class transitions
Frequently asked questions about S3 costs
Related AWS services
EBS Cost Optimization
Elastic Block Store provides persistent block-level storage volumes for EC2 instances.
CloudFront Cost Optimization
Content delivery network (CDN) that speeds up distribution of static and dynamic web content.
Lambda Cost Optimization
Serverless compute service that runs code in response to events without managing servers.