Object storage · Chapter 3 of 3
How storage classes trade cost for performance
Selecting the cheapest storage tier is a false economy if you ignore how often your code reads the data, but learning how retrieval fees work lets you optimise S3 costs without sacrificing performance.
FoundationsBuilds the idea from nothing. No prior AWS assumed.
Choosing a class based on access
How do you choose between storage classes based on access patterns?
An object is stored across three storage classes to optimise storage costs based on access frequency.
- 01
The storage class trade-off
Amazon S3 offers different storage classes to optimise costs. As you move from Standard to Infrequent Access and Glacier, the monthly fee for holding data drops significantly. However, the cost of retrieving that data increases, and retrieval speeds become slower.
- 02
The hidden cost of retrieval
Storing data in an Infrequent Access class looks cheap on paper, but AWS charges a fee per gigabyte read. If you store active log files in Infrequent Access and scan them daily, the retrieval fees will quickly exceed the storage savings.
- 03
Automating with Intelligent-Tiering
When data access patterns are unknown or unpredictable, S3 Intelligent-Tiering is used. It monitors object usage and moves files between frequent and infrequent tiers automatically. This class charges a small monthly monitoring fee per object but carries no retrieval fees.
Check yourself
What is the primary danger of moving active files to an S3 Infrequent Access storage class?
Under the hoodThe same thing from underneath: limits, failure modes, numbers.
Understanding retrieval times and minimum durations
What are the real constraints and charges of S3 archive classes?
An object is stored across three storage classes to optimise storage costs based on access frequency.
- 01
Minimum billable storage duration
AWS enforces a minimum storage duration for colder tiers. If you delete an object from Infrequent Access ten days after uploading it, AWS still bills you for the remaining minimum duration. This makes cold classes poor targets for temporary files.
- 02
Glacier retrieval options
Glacier Flexible Retrieval provides three ways to restore data. Expedited restores return objects within minutes for a premium fee. Standard restores take three to five hours, while Bulk restores are the cheapest option, taking up to twelve hours.
- 03
Minimum object sizes
Cold classes also impose a minimum billable object size. If you store a 10 kilobyte file in Infrequent Access, AWS bills you as if it were a larger size. To avoid this cost, small files must be combined before transition.
The numbers
- S3 Standard storage cost
- $0.023 per GB/monthBaseline pricing for US East (N. Virginia).
- Glacier Deep Archive cost
- $0.00099 per GB/monthUp to 95% cheaper than Standard for long-term backups.
- Minimum billable duration
- 30 days (IA), 90 (Glacier), 180 (Deep Archive)Deleting files early still incurs the cost for the full duration.
- Glacier Flexible restore times
- 1–5 mins (Expedited), 3–5 hours (Standard), 5–12 hours (Bulk)Determines how quickly the data becomes available after a restore request.
- Minimum billable object size
- 128 KB (Infrequent Access)Objects smaller than this are billed at 128 KB.
Check yourself
You upload a 50 KB file to S3 Standard-IA and delete it 10 days later. What will AWS bill you for?
Official references & further reading
These lessons simplify selected behaviors for learning. Verify current service limits, Region support and production requirements with the official references. Experiments describe their own assumptions.
Report an error or suggest a clearer explanation →