It’s entirely possible to (needlessly) run up your storage costs using AWS. With metered usage including a variety of inputs, it makes sense to look for ways to control your Amazon S3 costs without losing the many benefits of using these tools. We explain what those inputs are, ways to manage them, and what tools you have available to keep an eye on Amazon S3 costs.
Amazon S3 Cost Inputs
First, it’s important to see what the meters track.
- Amount of data stored during the month (GB).
- Size of data retrieved and number of requests.
- How many access operations (e.g., GET, LIST, COPY, POST, SELECT) completed.
- Data transfer fees (bandwidth out from Amazon S3)
The storage class used also impacts costs. It’s important to understand the S3 classes and their use cases.
- S3 Standard: for normal storage of regularly accessed data.
- S3 One Zone – Infrequent Access (IA): low-cost storage classes for data that users don’t access frequently in one zone.
- S3 Standard — Infrequent Access (IA): low-cost storage classes for data that users don’t access frequently.
- S3 Standard Intelligent Tiering: stores data with changing patterns.
- S3 Glacier: to archive and store long-term backup data.
- S3 Glacier Deep Archive: to archive and store (very) long-term backup data.
How to Control Your Amazon S3 Costs
1. Map Your Application Requirements
The first step is an assessment. What do you have? How are you using it today?
2. Analyze Your S3 Pricing Bill
Call this the “before” photo of your weight loss program. Take stock of your application requirements versus what you’re paying for.
3. Organize Your Data
Using analysis from #2, you need to understand how your usage relates to your charges.
4. Analyze & Optimize
- Review the cost of individual buckets.
- Delete entire S3 buckets if no longer needed.
- Remove objects that you no longer need.
- Delete incomplete multipart uploads.
- Review your data retrieval costs.
- Review requests made to your bucket.
- Verify (and correct as needed) that you’re using the right AWS region for your S3 buckets.
- Compress data before you send it to S3 (fewer + smaller files lowers transfer costs)
- For S3 versioned buckets, use the “lifecycle” feature to delete old versions.
5. Continuously Rightsize & Tune
Lather. Rinse. Repeat. Re-run your analysis on a monthly or quarterly basis to ensure you’re not overspending. Set up CloudWatch alerts for areas that add to cost (e.g., third party systems that upload objects). Storage cost optimization is not something to set and forget.
Additional Tools to Control S3 Costs
S3 Intelligent Tiering
S3 Intelligent Tiering can transparently manage the tiering aspect. For a small monthly object monitoring & automation charge, it optimizes your storage costs by automatically moving data to the most cost-effective access tier when access patterns change.
S3 Storage Lens
S3 Storage Lens helps you can see aggregate usage and activity data so you can optimize storage configurations and costs. The dashboard lets you explore your metrics to see how your storage is being used.
Amazon S3 Storage Class Analysis
If you don’t use S3 Intelligent Tiering, you can try Storage Class Analysis to help you know when it’s wise to transition STANDARD storage to the STANDARD_IA (IA, for infrequent access) storage class.
Leave A Comment