0Pricing
AWS Solutions Architect · Lesson

Storage Classes and Lifecycle Policies

Compare S3 Standard, Intelligent-Tiering, Glacier Instant Retrieval, and Deep Archive, and automate transitions with lifecycle rules.

Storage Classes and Lifecycle Policies is a free AWS Solutions Architect lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the AWS Solutions Architect learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

Why S3 Storage Classes Exist

Not all data is accessed with the same frequency. A video file uploaded today may be streamed thousands of times in the first week, then rarely accessed again after a month. S3 storage classes let you match the cost of storage to the access pattern—frequently accessed data uses a more expensive class optimised for retrieval speed, while archival data uses ultra-cheap classes with higher retrieval latency. The SAA-C03 exam regularly asks you to select the right class for a described access pattern.

S3 Standard: The Default Class

S3 Standard is the default general-purpose storage class: 99.99% availability SLA, 11 nines durability, no minimum storage duration, and no retrieval fee. Data is stored across at least three AZs. Use Standard for frequently accessed data—web assets, active datasets, frequently downloaded content. Standard has the highest storage cost per GB but zero retrieval charge, making it ideal when you don't know access patterns or when data is accessed multiple times per month.

# Upload with explicit storage class
aws s3 cp file.dat s3://my-bucket/ --storage-class STANDARD

S3 Intelligent-Tiering

S3 Intelligent-Tiering automatically moves objects between access tiers based on changing access patterns, without performance impact or retrieval fees. It contains up to four tiers: Frequent Access (same performance as Standard), Infrequent Access (objects not accessed for 30 days move here automatically—cost savings of ~40%), Archive Instant Access (90 days without access—another ~50% savings), and optional Deep Archive Access (180 days). A small monthly monitoring and automation fee applies per object. Best for data with unknown or changing access patterns.

aws s3 cp file.dat s3://my-bucket/ --storage-class INTELLIGENT_TIERING

S3 Standard-IA and One Zone-IA

S3 Standard-Infrequent Access (Standard-IA) is designed for data accessed less than once a month—lower storage cost than Standard but with a per-GB retrieval fee and a 30-day minimum storage charge. Data is stored in multiple AZs (same 11 nines durability). S3 One Zone-IA stores data in only one AZ—~20% cheaper than Standard-IA but data is lost if the AZ fails. Use One Zone-IA only for data you can recreate or data that is already replicated elsewhere (e.g., thumbnail images generated from originals stored in Standard).

aws s3 cp backup.tar.gz s3://my-bucket/ --storage-class STANDARD_IA
aws s3 cp thumbnail.jpg s3://my-bucket/ --storage-class ONEZONE_IA

S3 Glacier Instant Retrieval

S3 Glacier Instant Retrieval is designed for archive data that is accessed rarely (quarterly) but requires millisecond retrieval when accessed. Storage cost is much lower than Standard-IA, but the retrieval fee is higher. Minimum storage duration is 90 days. The key differentiator from other Glacier classes is instant access—you retrieve data in milliseconds just like Standard, making it perfect for medical imaging archives or media assets that are rarely needed but must be immediately available when required.

aws s3 cp quarterly-report.pdf s3://archive-bucket/ --storage-class GLACIER_IR

S3 Glacier Flexible Retrieval

S3 Glacier Flexible Retrieval (formerly S3 Glacier) offers three retrieval speed tiers for archival data: Expedited (1-5 minutes, higher cost), Standard (3-5 hours, moderate cost), and Bulk (5-12 hours, lowest cost). Minimum storage duration is 90 days. Best for backup archives, compliance data that is rarely retrieved, and digital preservation where retrieval latency of hours is acceptable. The exam commonly presents this as the solution when the question mentions 'archives accessed a few times per year'.

# Initiate a retrieval job from Glacier Flexible Retrieval
aws s3api restore-object \
  --bucket my-archive-bucket \
  --key old-backup.tar.gz \
  --restore-request '{"Days":5,"GlacierJobParameters":{"Tier":"Standard"}}'

S3 Glacier Deep Archive

S3 Glacier Deep Archive is the lowest-cost S3 storage class, at roughly $1/TB/month. It is designed for data that is retained for 7–10 years and accessed perhaps once or twice a year. Retrieval time is 12 hours (Standard tier) or 48 hours (Bulk tier). Minimum storage duration is 180 days. Use cases: regulatory compliance archives (HIPAA, SEC Rule 17a-4), digital media archiving, genomics data, and long-term research data. Deep Archive is less expensive than tape storage on-premises while being fully managed and remotely accessible.

aws s3 cp 2016-financial-archive.zip s3://deep-archive-bucket/ \
  --storage-class DEEP_ARCHIVE

S3 Lifecycle Policies

S3 Lifecycle policies automate the transition of objects between storage classes and the expiration of objects based on rules you define. A lifecycle policy is a JSON document attached to the bucket with rules that specify: a filter (by prefix, tag, or object size), a transition action (move to a cheaper class after N days), and/or an expiration action (delete after M days). Lifecycle rules eliminate the need for custom scripts to manage object tiering and deletion at scale.

# Apply a lifecycle policy
aws s3api put-bucket-lifecycle-configuration \
  --bucket my-data-bucket \
  --lifecycle-configuration file://lifecycle.json

Lifecycle Policy Example

A typical tiering lifecycle for log files: objects are kept in S3 Standard for the first 30 days (frequently accessed for debugging), then automatically transitioned to Standard-IA for days 31–90 (occasionally queried), then to Glacier Flexible Retrieval for days 91–365 (compliance hold), and finally deleted after 365 days (retention policy met). This single lifecycle rule replaces a complex cron job and works at any scale without management overhead.

{
  'Rules': [{
    'ID': 'log-tiering',
    'Status': 'Enabled',
    'Filter': {'Prefix': 'logs/'},
    'Transitions': [
      {'Days': 30, 'StorageClass': 'STANDARD_IA'},
      {'Days': 90, 'StorageClass': 'GLACIER'}
    ],
    'Expiration': {'Days': 365}
  }]
}

S3 Storage Class Analysis

S3 Storage Class Analysis observes data access patterns in a bucket and generates recommendations on when to transition objects to Standard-IA. After 30 days of observation, it produces a report (viewable in the console or exported to a CSV file in S3) showing read access frequency by object age. Use these reports to calibrate lifecycle policy transition thresholds before setting them. Storage Class Analysis integrates with S3 Intelligent-Tiering—you can use the analysis output to configure a precise lifecycle policy or simply switch to Intelligent-Tiering.

Comparing Storage Classes: Quick Reference

Storage class decision summary: Standard → active, frequently accessed data; Intelligent-Tiering → unknown or variable access patterns; Standard-IA → infrequent access (monthly), multi-AZ; One Zone-IA → infrequent access, recreatable data, single AZ; Glacier Instant Retrieval → rare access (quarterly), millisecond retrieval; Glacier Flexible Retrieval → rare access, hours retrieval OK; Glacier Deep Archive → 7–10 year retention, 12-48 hour retrieval. Minimum storage durations (30, 30, 90, 90, 180 days) apply fees if deleted early.

Quick Check

Test your understanding of AWS Solutions Architect (SAA-C03) concepts from this lesson.

Lesson Recap

In this lesson you learned: S3 storage classes range from Standard (frequent access, highest cost) through Glacier Deep Archive (infrequent access, lowest cost) and each has specific retrieval times and minimum storage durations, S3 Intelligent-Tiering automates tiering for unknown access patterns, and lifecycle policies automate transitions between classes and object expiration based on age or tags. Next up we explore VPC Architecture and CIDR Blocks.

Frequently asked questions

Is the “Storage Classes and Lifecycle Policies” lesson free?

Yes — the full text of “Storage Classes and Lifecycle Policies” is free to read here on the web, and the AWS Solutions Architect course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the AWS Solutions Architect course, upgrade to CoddyKit PRO.

What will I learn in “Storage Classes and Lifecycle Policies”?

Compare S3 Standard, Intelligent-Tiering, Glacier Instant Retrieval, and Deep Archive, and automate transitions with lifecycle rules. You practise AWS Solutions Architect with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start AWS Solutions Architect?

No prior experience is required. AWS Solutions Architect on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “Storage Classes and Lifecycle Policies” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this AWS Solutions Architect lesson?

Yes. Every AWS Solutions Architect lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. Buckets, Objects, and Regions
  2. S3 Access Control: Bucket Policies and ACLs
  3. Versioning, MFA Delete, and Replication
  4. Storage Classes and Lifecycle Policies
← Back to AWS Solutions Architect