AWS S3 Storage Classes Explained: Standard, Intelligent-Tiering, IA, Glacier & Express One Zone

S3 storage classes are distinct cost and performance tiers for the same storage service. The class you choose determines how much you pay to store data, whether retrieval costs extra, and how fast that data comes back. Quick rule of thumb: Standard for hot data, Intelligent-Tiering for unpredictable access, Standard-IA for rare but instant access, Glacier classes for archives, Express One Zone for ultra-low-latency single-AZ workloads.

Every object in S3 belongs to exactly one storage class. You set the class at upload, and you can change it manually or automatically using lifecycle policies. The classes are all backed by the same S3 infrastructure and the same durability guarantees. The difference is in how AWS stores the data internally and what they charge for that service.

If you are new to S3, start with the Amazon S3 Overview to understand buckets, objects, and how S3 works before diving into classes.

Simple explanation

Analogy

Think of your data as physical files. The ones you open every day live on your desk: instant access, highest cost per square foot. Slightly older files go in a cabinet down the hall: still quick, a little cheaper. Archives go into off-site storage: cheap to keep, but you have to order a retrieval and wait. S3 storage classes work exactly the same way. Moving data further from “the desk” lowers the storage cost, but getting it back takes longer and sometimes costs extra per GB.

The key insight: cheaper storage classes are not worse quality. They are optimised for a different access pattern. A 7-year compliance archive does not need to live on the fastest storage tier. Putting it there is just paying for speed you never use.

Every class except Intelligent-Tiering requires you to decide upfront which tier is appropriate. Get it wrong and you either overpay on storage (too expensive a class for cold data) or overpay on retrieval (wrong class for data you access more than expected). Intelligent-Tiering removes that guesswork at the cost of a small per-object monitoring fee.

How S3 storage classes work

Every storage class involves the same three cost variables:

  • Storage cost per GB: what you pay just to hold the data each month
  • Retrieval cost per GB: what you pay when you read the data back
  • Retrieval speed: how quickly the data is available after a request

Standard has the highest storage cost and no retrieval cost. Deep Archive has the lowest storage cost but the highest retrieval cost and a 12–48 hour wait. Most classes sit somewhere between.

Minimum storage durations add a wrinkle. Several classes charge you as if an object was stored for a minimum period, even if you delete it earlier. Standard-IA has a 30-day minimum; the Glacier classes have 90 or 180-day minimums. Transitioning objects before they have aged enough can make your bill higher, not lower.

Multi-AZ vs single-AZ is the other key variable. Most classes replicate across at least three Availability Zones, giving 99.999999999% (11 nines) durability. One Zone-IA and Express One Zone store data in a single AZ. They are cheaper, but an AZ failure can cause permanent data loss. Only use single-AZ classes for data you can regenerate.

Lifecycle policies are what make storage classes practical at scale. Rather than manually reclassifying objects as they age, you write rules once and S3 handles the transitions. See S3 Lifecycle Policies for how to configure them.

Quick decision guide

  • Use S3 Standard when data is actively used: served to users, processed by pipelines, accessed multiple times per month
  • Use Intelligent-Tiering when access patterns are genuinely unpredictable, object lifetimes are long, and managing manual lifecycle rules is impractical
  • Use Standard-IA when data is accessed rarely but must be available instantly: DR snapshots, backup files, processed reports
  • Use One Zone-IA when data is rarely accessed, can tolerate single-AZ risk, and can be regenerated if lost (thumbnails, derivative files)
  • Use Glacier Instant Retrieval when data is archived for months or years but might be needed urgently: scanned documents, old media, compliance records that occasionally get pulled
  • Use Glacier Flexible Retrieval when data is needed at most a few times per year and a wait of hours is acceptable: annual audits, project archives
  • Use Glacier Deep Archive when data must be retained for years (legal, regulatory) and will almost never be accessed
  • Use S3 Express One Zone when workloads need maximum throughput and single-digit millisecond latency: ML training data, real-time analytics, high-performance compute
Not sure where to start?

For most user-generated content with unpredictable access patterns, Intelligent-Tiering is the safest default. You pay a small per-object monitoring fee, but there are no retrieval fees and no guesswork about when objects go cold. If you can write a lifecycle rule that accurately models the access pattern, that rule is usually cheaper. If you cannot predict it with confidence, Intelligent-Tiering is the right call.

Full storage class comparison

Storage classBest forRetrieval speedRetrieval feesMin storage durationAZ scopeMain downside
S3 StandardHot data, active workloadsMillisecondsNoneNone≥ 3 AZsHighest storage cost per GB
S3 Intelligent-TieringUnpredictable access patternsMilliseconds (frequent/IA tiers)NoneNone≥ 3 AZsPer-object monitoring fee; poor value for tiny/short-lived objects
S3 Standard-IALong-lived, rarely accessed dataMillisecondsPer GB retrieved30 days≥ 3 AZsRetrieval fee; 30-day minimum
S3 One Zone-IAReproducible, rarely accessed dataMillisecondsPer GB retrieved30 days1 AZ onlyData lost if AZ fails; not for irreplaceable data
S3 Glacier Instant RetrievalArchives accessed occasionally but urgentlyMillisecondsPer GB retrieved90 days≥ 3 AZsHigher retrieval fee than Standard-IA; 90-day minimum
S3 Glacier Flexible RetrievalArchives accessed a few times per year1 min–12 hoursPer GB retrieved90 days≥ 3 AZsNo instant access; 90-day minimum
S3 Glacier Deep ArchiveLong-term retention, rarely accessed12–48 hoursPer GB retrieved180 days≥ 3 AZsSlow retrieval; highest retrieval fee; 180-day minimum
S3 Express One ZoneUltra-low-latency, high-throughput workloadsSingle-digit millisecondsNoneNone1 AZ onlySingle-AZ only; higher storage cost; limited feature support

S3 Standard

S3 Standard is the default class. Data is stored across at least three Availability Zones with 99.999999999% durability. There are no retrieval fees and no minimum storage duration.

Use it when: data is actively in use: user uploads being served, files being processed by Lambda functions, datasets fed into analytics pipelines, assets read on every request.

Avoid it when: data sits unread for months. At that point you are paying Standard prices for cold data. A lifecycle rule to transition to Standard-IA after 30–60 days of inactivity can cut that cost substantially.

Real-world example: A SaaS application stores user-uploaded PDFs in S3 Standard. Users access the files frequently in the first few weeks after upload. Standard has no retrieval fees, so it stays cheap under frequent access. A lifecycle rule moves files to Standard-IA after 90 days of no access.

S3 Intelligent-Tiering

Intelligent-Tiering monitors each object’s access pattern and moves it between internal tiers automatically:

  • Frequent Access tier: same cost as S3 Standard; used for recently or regularly accessed objects
  • Infrequent Access tier: triggered after 30 consecutive days without access; meaningfully lower storage cost
  • Archive Instant Access tier: triggered after 90 days without access; lower still, with millisecond retrieval
  • Archive Access tier (optional): objects not accessed in 90–180+ days; Glacier-range pricing with asynchronous retrieval
  • Deep Archive Access tier (optional): objects not accessed in 180+ days; deepest archive pricing

There are no retrieval fees within Intelligent-Tiering. Instead, AWS charges a small per-object monitoring fee each month. This makes Intelligent-Tiering uneconomical for objects smaller than around 128 KB, or for objects that will be deleted within days of creation, where the monitoring fee exceeds any savings.

Use it when: you have a large bucket of long-lived objects with genuinely unpredictable access patterns. User-uploaded document archives and media libraries are typical candidates. The fee is trivial at scale, and you avoid the manual work of writing lifecycle rules to predict access patterns.

Avoid it when: you already know the access pattern. If logs go cold after 30 days and are deleted after 90, a pair of lifecycle rules is cheaper and simpler than Intelligent-Tiering. See S3 Lifecycle Policies for how to set those up.

Real-world example: A legal firm stores tens of thousands of client documents. Some files get accessed daily during active matters; others are untouched for years. Intelligent-Tiering automatically keeps active files in the frequent tier and moves dormant ones to archive, without any manual effort.

S3 Standard-IA

Standard-IA (Infrequent Access) offers a lower storage cost than Standard in exchange for a per-GB retrieval fee and a 30-day minimum storage duration. Multi-AZ replication is unchanged: still at least three AZs.

Use it when: data is accessed rarely but must be immediately available when requested. Disaster recovery snapshots, monthly billing archives, compliance documents, and long-lived processed datasets are typical use cases. See S3 Security Best Practices for guidance on access controls for these sensitive files.

Avoid it when: data is accessed more than once or twice per month (retrieval fees add up quickly), or when objects are short-lived (the 30-day minimum kicks in).

Real-world example: A company keeps nightly database backups in Standard-IA. Restores happen maybe twice a year, but when needed the restore must start immediately. Standard-IA handles both requirements at lower cost than Standard.

S3 One Zone-IA

One Zone-IA has the same retrieval speed and fee structure as Standard-IA, but stores data in a single Availability Zone. This makes it roughly 20% cheaper than Standard-IA, but an AZ failure results in permanent data loss.

Use it when: the data is reproducible from another source. Thumbnails generated from originals stored in Standard, resized images derived from user uploads, or cached processing outputs are all appropriate.

Avoid it when: the data is irreplaceable. One Zone-IA is not appropriate for database backups, user-uploaded originals, compliance records, or anything else you cannot regenerate.

One Zone-IA is not safe for backups

The 11-nines durability figure for One Zone-IA applies within a single AZ only. If that AZ experiences a physical failure (rare, but possible according to AWS), the data is permanently gone. Do not store original user content, backups, or anything without another copy in One Zone-IA.

Real-world example: A media platform stores image thumbnails in One Zone-IA. The originals are in S3 Standard. If the AZ fails and thumbnails are lost, the platform regenerates them from the originals. No data is permanently lost and storage costs are lower.

S3 Glacier Instant Retrieval

Glacier Instant Retrieval delivers archival pricing with millisecond retrieval speed. It has a 90-day minimum storage duration, higher retrieval fees than Standard-IA, and multi-AZ replication.

Use it when: data is archived for months or years but might be pulled urgently. Scanned medical records, old customer documents, historical financial records, and compliance files that occasionally get requested during audits all fit this pattern.

Avoid it when: data is accessed more than once or twice per quarter (the retrieval fee becomes expensive), or when objects might be deleted before 90 days.

Real-world example: A hospital stores patient scans older than two years in Glacier Instant Retrieval. Most scans are never accessed again, but occasionally a doctor needs a scan from five years ago during an appointment. Millisecond retrieval means the workflow is not disrupted.

S3 Glacier Flexible Retrieval

Glacier Flexible Retrieval is cheaper than Glacier Instant Retrieval but adds retrieval delay. You choose from three retrieval modes:

  • Expedited: 1–5 minutes (highest retrieval fee)
  • Standard: 3–5 hours
  • Bulk: 5–12 hours (lowest retrieval fee)

The 90-day minimum storage duration applies. For more detail on Glacier retrieval options, vault locks, and compliance use cases, see AWS Glacier Overview.

Use it when: data is needed at most a few times per year and you can plan the retrieval in advance. Annual audit records, project archives, and historical datasets that analysts occasionally need are typical candidates.

Avoid it when: there is any chance the data will be needed urgently.

Do not rely on Glacier for incident response

If an on-call engineer might need a restore at 2am, Glacier Flexible Retrieval is the wrong class. Even Expedited retrieval takes up to 5 minutes, and that is the most expensive option. For anything that could be needed during an outage, keep it in Standard-IA or Glacier Instant Retrieval.

Real-world example: A software company keeps previous-year project deliverables in Glacier Flexible Retrieval. Occasionally a client requests a file from a closed project. A standard retrieval is initiated and the file is ready within a few hours.

S3 Glacier Deep Archive

Deep Archive is the lowest-cost storage class AWS offers. Retrieval takes 12–48 hours (standard is 12 hours; bulk is 48 hours), retrieval fees are significant, and the minimum storage duration is 180 days.

Use it when: regulatory or legal requirements mandate long-term retention of data you are highly unlikely to ever retrieve. Seven-year GDPR retention archives, regulatory filing records, and long-term audit trails are common use cases.

Avoid it when: there is any realistic chance you will need the data within the next six months, or if you have not confirmed that the retention requirement actually needs this level of archiving.

Real-world example: A financial institution is required to retain transaction records for seven years. The records are almost never accessed after year one. Glacier Deep Archive keeps costs minimal over the retention period, and the retrieval delay is acceptable for a once-in-seven-years access pattern.

S3 Express One Zone

S3 Express One Zone is a distinct storage class designed for the highest-performance storage workloads. It uses a different bucket type called a directory bucket rather than a general-purpose bucket, and delivers consistent single-digit millisecond latency with higher throughput than standard S3.

It stores data in a single Availability Zone. There are no retrieval fees and no minimum storage duration. Storage cost per GB is higher than Standard, but request costs are lower, which makes it cost-effective for workloads with very high read/write rates.

Use it when: your workload is latency-sensitive and throughput-intensive. The primary use cases are ML training jobs reading large datasets repeatedly, real-time analytics pipelines, and interactive compute workloads where storage latency directly increases EC2 or SageMaker costs.

Avoid it when: multi-AZ resilience matters, you need S3 features like versioning or cross-region replication, or the workload is not actually latency-sensitive. For most standard object storage, S3 Standard is the better fit. Express One Zone is a specialist class for specific performance workloads, not a general upgrade.

Note: directory buckets have different API behaviour

Directory buckets (used by Express One Zone) have different API semantics and feature constraints than general-purpose buckets. Not all S3 SDK operations behave identically. Review the AWS documentation for Express One Zone before designing a workload around it.

Real-world example: A machine learning team reads a 500 GB training dataset hundreds of times per day during model development. Switching from Standard to Express One Zone reduces per-request latency and cuts training time, which directly reduces EC2 compute costs.

S3 Standard vs Intelligent-Tiering

These two classes are often compared because both serve active data with millisecond retrieval and no retrieval fees.

Choose Standard if:

  • The data stays hot: accessed frequently and consistently
  • Objects are small (under ~128 KB) and the per-object monitoring fee in Intelligent-Tiering would exceed savings
  • Objects are short-lived (created and deleted within days)
  • You already have lifecycle rules that handle the transition to IA automatically

Choose Intelligent-Tiering if:

  • Access patterns are genuinely unpredictable: some objects go cold, others stay active, and you cannot reliably predict which
  • Object lifetimes are long (months or years)
  • The bucket is large and managing individual lifecycle rules per prefix is unwieldy
  • You want zero retrieval fees across all access patterns

The monitoring fee in Intelligent-Tiering is small per object, but across millions of tiny, short-lived objects it can outweigh any storage savings.

Rule of thumb

If objects live longer than a few months and you cannot reliably predict access, Intelligent-Tiering is the safer default. If you can write a lifecycle rule that accurately describes the pattern, the rule is usually cheaper. When in doubt for user-generated content, pick Intelligent-Tiering.

When to use each class: real scenarios

ScenarioRecommended classReason
User-uploaded profile photosS3 StandardAccessed on every page load
User-uploaded documents (mixed access)Intelligent-TieringAccess after initial activity is unpredictable
Nightly database backupsStandard-IARarely accessed, instant restore needed
Image thumbnails (regenerable)One Zone-IACan recreate if lost; rarely accessed
Medical imaging archives (may be needed urgently)Glacier Instant RetrievalArchival pricing, no wait time
Annual compliance audit filesGlacier Flexible RetrievalAccessed at most once a year; delay acceptable
7-year financial retention archiveGlacier Deep ArchiveLowest cost; almost never accessed
Application access logs (short-term)S3 StandardActive analysis; no retrieval fees
ML training datasets (accessed in bursts)S3 Express One ZoneHigh throughput, low latency critical
S3 versioned object historyStandard-IA or GlacierOld versions are rarely accessed

For S3 versioning, it is common to leave current versions in Standard and use lifecycle rules to push noncurrent versions to Standard-IA after 30 days and Glacier after 90 days. This alone can cut versioning costs significantly.

For pre-signed URL workflows, keep the objects in Standard or Standard-IA. Pre-signed URLs still incur retrieval fees for IA classes.

Lifecycle policy and cost gotchas

Lifecycle policies can save significant money. Used carelessly, they create surprises on your bill.

The early deletion trap

If you move an object to Standard-IA on day 5 and delete it on day 20, you are billed for 30 days in Standard-IA regardless. The same logic applies to Glacier classes with their 90 and 180-day minimums. Always ask: will this object actually stay in this class long enough to justify the transition? If not, leave it in Standard.

Transition fees are sometimes overlooked. Transitioning objects between classes is not free. AWS charges a per-object transition request fee. For millions of tiny objects, these fees can surprise you. Consider setting minimum object size filters in your lifecycle rules to skip objects too small to benefit from transitioning.

Access patterns can fool you. A lifecycle rule that moves everything to IA after 30 days assumes objects go cold after 30 days. If some objects are still accessed at day 45, you will pay retrieval fees on those objects. Intelligent-Tiering handles this case better.

Glacier retrieval costs for unexpected access are real. Glacier is very cheap to store but meaningful to retrieve. If a team assumes they will never need certain archived data and then needs it urgently during an incident, an Expedited retrieval of hundreds of gigabytes can generate a notable charge. Budget for this if there is any chance of unplanned retrieval.

See S3 Lifecycle Policies for a full guide to writing rules, handling versioned buckets, and testing lifecycle configurations before production use.

Common mistakes

  1. Transitioning short-lived objects to IA or Glacier. If an object is only kept for a few weeks, the minimum storage duration charge in Standard-IA (30 days) or Glacier classes (90–180 days) can cost more than leaving it in Standard. Always check expected object lifetime before setting lifecycle transitions.
  2. Using One Zone-IA for irreplaceable data. One Zone-IA is appropriate only for data you can regenerate. If the single AZ fails, the data is permanently lost. Never store backups, user-uploaded originals, or compliance records in One Zone-IA.
  3. Using Glacier for data that needs frequent retrieval. Glacier classes are cheap to store but expensive and slow to retrieve. If data is accessed monthly or even quarterly, the retrieval fees can exceed what you save on storage. Use Standard-IA or Glacier Instant Retrieval instead.
  4. Using Intelligent-Tiering for tiny or very short-lived objects. The per-object monitoring fee makes Intelligent-Tiering uneconomical for objects under ~128 KB or objects deleted within days of creation. At that size and lifetime, the fee outweighs the savings from tier transitions.
  5. Forgetting that Express One Zone is single-AZ and workload-specific. Express One Zone is not a general upgrade to Standard. It is a specialist class for high-performance workloads. Using it for standard object storage adds cost without benefit, and the single-AZ design adds risk.
  6. Not accounting for transition request fees. Moving large numbers of small objects between storage classes costs money per object. If your lifecycle rule targets millions of tiny files, calculate whether the transition fees are worth the storage savings.

Frequently asked questions

What is the cheapest S3 storage class?

S3 Glacier Deep Archive has the lowest storage cost per GB. The trade-off is that retrieving data takes 12–48 hours and incurs retrieval fees. It only makes sense for data you plan to hold for years and almost never need to access.

Which S3 storage class should I use for backups?

For backups you need to restore quickly, use S3 Standard-IA. It has a low storage cost, no retrieval delay, and just a per-GB retrieval fee. For disaster recovery archives where a multi-hour delay is acceptable, use Glacier Instant Retrieval or Glacier Flexible Retrieval. Never use One Zone-IA for backups of irreplaceable data: a single AZ failure would cause permanent data loss.

When should I use S3 Intelligent-Tiering?

Intelligent-Tiering works best for large buckets with genuinely unpredictable access patterns: user-uploaded documents, media archives, or data that is busy immediately after creation but accessed rarely thereafter. Avoid it for objects smaller than around 128 KB, objects deleted within a few days of creation, or buckets where lifecycle rules already give you predictable control.

What is the difference between Glacier Instant Retrieval and Glacier Flexible Retrieval?

Both are archival classes with 90-day minimum storage durations and per-GB retrieval fees. The key difference is speed: Glacier Instant Retrieval delivers data in milliseconds, the same as Standard. Glacier Flexible Retrieval takes 1–5 minutes (expedited), 3–5 hours (standard), or 5–12 hours (bulk). Use Instant Retrieval when you need archival pricing but cannot wait; use Flexible Retrieval when you can plan ahead and want lower costs.

What is S3 Express One Zone and when should I use it?

S3 Express One Zone is a high-performance storage class for latency-sensitive, high-throughput workloads. It uses directory buckets and delivers consistent single-digit millisecond latency. It stores data in a single AZ, so it is not suitable for anything requiring multi-AZ resilience. Use it for ML training data, large-scale analytics pipelines, or interactive workloads where retrieval speed directly impacts compute costs.

Does S3 charge for deleting objects early?

Yes, if the object is in a class with a minimum storage duration. Standard-IA and One Zone-IA have a 30-day minimum. Glacier Instant Retrieval and Glacier Flexible Retrieval have a 90-day minimum. Glacier Deep Archive has a 180-day minimum. Delete before those thresholds and AWS bills you for the remaining time. S3 Standard and Intelligent-Tiering have no early deletion charges.

Last verified: 5 April 2026 Cloud services change frequently. Verify details against official documentation before making infrastructure decisions.