AWS S3 Storage Classes: Choosing the Right Tier

February 13, 2026 | AWS S3 Storage

Map S3 classes to real use cases with lifecycle policies.

S3 Storage Classes Overview

Amazon S3 offers seven storage classes, each optimized for different access patterns and cost profiles. Choosing the right class — and automating transitions — can cut storage costs by 50-80% without any application changes.

Storage Class Comparison

ClassCost/GB/moRetrievalBest For
S3 Standard$0.023NoneFrequently accessed data
S3 Intelligent-Tiering$0.023 → autoNoneUnknown access patterns
S3 Standard-IA$0.0125$0.01/GBInfrequent but fast access needed
S3 One Zone-IA$0.01$0.01/GBReproducible infrequent data
S3 Glacier Instant$0.004$0.03/GBArchive with instant access
S3 Glacier Flexible$0.0036Minutes–hoursArchive, occasional retrieval
S3 Glacier Deep Archive$0.0009912–48 hoursLong-term compliance archive

Lifecycle Policy Example

The most effective cost strategy is automating transitions with lifecycle rules:

{
  "Rules": [{
    "ID": "optimize-storage-costs",
    "Status": "Enabled",
    "Transitions": [
      { "Days": 30, "StorageClass": "STANDARD_IA" },
      { "Days": 90, "StorageClass": "GLACIER_IR" },
      { "Days": 365, "StorageClass": "DEEP_ARCHIVE" }
    ],
    "Expiration": { "Days": 2555 },
    "NoncurrentVersionExpiration": { "NoncurrentDays": 30 }
  }]
}

When to Use Intelligent-Tiering

S3 Intelligent-Tiering is the "set it and forget it" option. It automatically moves objects between frequent and infrequent access tiers based on usage patterns — with no retrieval fees. The trade-off is a small monitoring fee of $0.0025 per 1,000 objects/month.

Use it when: You have unpredictable access patterns, large datasets with mixed usage, or when you don't want to manage lifecycle rules manually.

Cost Optimization Tips

  1. Enable Intelligent-Tiering as the default for new buckets
  2. Add lifecycle rules to transition logs and backups to Glacier after 90 days
  3. Delete incomplete multipart uploads (they consume storage invisibly)
  4. Enable versioning only where needed, and expire old versions aggressively
  5. Use S3 Storage Lens to visualize storage distribution across classes

Eazy SaaS Tip: Run aws s3api list-buckets and audit each bucket's storage class distribution using S3 Storage Lens. We typically find 30-50% of data sitting in S3 Standard that should be in IA or Glacier.