4 Archival Storage with Amazon S3
Compare Amazon S3 archival classes, automate transitions with Lifecycle rules, and plan for restoration time, retention requirements, and total cost.
Choose a class by access needs
The right archival class depends on how often data is accessed and how quickly it must be available. Lower storage costs may come with slower retrieval, retrieval charges, minimum storage periods, or extra per-object overhead.
All three S3 Glacier classes are designed for long-term storage, but they offer different access models. is not an offline archive: objects can be read immediately. Flexible Retrieval and Deep Archive require a restore before reading; Deep Archive generally has the lowest storage price and the longest wait for access.
Compare the archival classes
(GLACIER_IR) provides real-time access with millisecond latency and does not require a . Its is 90 days. It is suited to data accessed roughly quarterly when immediate access is still needed.
(GLACIER) is an archived class whose objects must be restored before reading. Retrieval typically takes minutes to hours, and its is 90 days. It suits backups or archives accessed occasionally when some delay is acceptable.
(DEEP_ARCHIVE) is an archived class whose objects must be restored before reading. Retrieval takes hours, and its is 180 days. It suits long-term retention and preservation accessed rarely, when waiting longer is acceptable.
Automate transitions and expiration
rules can transition objects to a lower-cost storage class after a specified age. A rule can apply to an entire bucket or use filters such as an object prefix or tag. For example, an organization might keep recent reports in S3 Standard, transition older reports to , and move records retained for many years to .
Lifecycle transitions are asynchronous. For Flexible Retrieval and Deep Archive, AWS starts charging the destination-class rate and starts the minimum-duration clock when the rule becomes eligible, even if the physical transition happens later.
Lifecycle rules can also expire objects when the retention period ends. Configure expiration to match legal, business, and recovery requirements. By default, Lifecycle does not transition objects smaller than 128 KB, which helps avoid cases where per-object transition requests outweigh storage savings. Combining many tiny objects into larger objects before archiving may be more economical.
Restore and read archived objects
For , use a normal S3 GET request. For and , submit a and wait for it to complete. The restore creates a temporary readable copy for the number of days specified in the request; the original remains in its archival class, and the temporary copy expires afterward. If data must remain readily accessible, copy the restored object to another S3 storage class.
Retrieval choices and typical times
Flexible Retrieval: Expedited is typically 1–5 minutes; Standard is typically 3–5 hours; Bulk is typically 5–12 hours. Bulk retrievals are free for this class. Expedited retrieval is not guaranteed to be available on demand unless provisioned capacity is purchased.
Deep Archive: Standard retrieval is typically within 12 hours; Bulk retrieval is typically within 48 hours. Expedited retrieval is not available.
These are typical service times, not a substitute for testing recovery procedures. Restoring many objects may require planning and can take longer than restoring a single object.
Account for total archival cost
Storage price is only one part of the total cost. Compare storage, requests, retrieval, and data-transfer charges using current prices for the relevant AWS Region and usage.
Storage duration: Flexible Retrieval has a 90-day minimum, and Deep Archive has a 180-day minimum. Deleting, overwriting, or transitioning an object before its minimum period ends can result in a prorated charge for the remaining time.
Requests and retrievals: Lifecycle transitions incur transition-request charges. Restores can incur request and data-retrieval charges; the amount depends on the class, retrieval tier, and volume retrieved.
Temporary restored copies: While a Flexible Retrieval or Deep Archive object is restored, charges apply for both the archived object and its temporary copy at S3 Standard rates.
Per-object overhead: Flexible Retrieval and Deep Archive add 40 KB of metadata per object: 32 KB billed at the archive-class rate and 8 KB at the S3 Standard rate. Object count therefore matters, especially for archives containing many small files.
Apply archival classes to real needs
Common uses include long-term backups and disaster recovery, compliance and records retention, digital preservation, and infrequently viewed media or reference data. Flexible Retrieval can suit recovery data that may need to be restored within minutes or hours; Deep Archive can suit older recovery copies when a longer wait is acceptable. For records retained for years but rarely consulted, lifecycle expiration and deletion rules should align with applicable retention obligations. Deep Archive favors low storage cost over rapid access for research data, historical media, and other durable records.
Use Instant Retrieval when occasional reads must still be immediate. Use Flexible Retrieval or Deep Archive when a restore delay is acceptable, choosing between them according to the required recovery time and retention needs.
Before archiving important data, test a restore, confirm that the required data can be identified, and account for the time and cost of recovering it.