SimAWSby ShahriarLabs
Search

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.

15 min2 sectionsBack to Object storage

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?

App ClientS3 StandardFree retrievalS3 Standard-IA$0.01/GB retrieveS3 Glacier FlexRestore requiredS3 storage classes trade lower storage costs for higher retrieval fees and latency, with Glacier requiring a multi-hour restore process before access.

An object is stored across three storage classes to optimise storage costs based on access frequency.

1/6
  1. 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.

  2. 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.

  3. 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?

App ClientS3 StandardFree retrievalS3 Standard-IA$0.01/GB retrieveS3 Glacier FlexRestore requiredS3 storage classes trade lower storage costs for higher retrieval fees and latency, with Glacier requiring a multi-hour restore process before access.

An object is stored across three storage classes to optimise storage costs based on access frequency.

1/6
  1. 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.

  2. 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.

  3. 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 →