TL;DR: The classic compliance-archive tier, around since 2012: ~$0.0036/GB-month (roughly $4/TB), 82% below Standard, with a choice of retrieval speed per request — expedited (1–5 min), standard (3–5 h), or bulk (5–12 h, nearly free). For backups, closed projects, and audit archives where you can plan a few hours ahead, the savings are enormous.
The numbers
- Storage: ~$4/TB-month vs ~$23/TB on Standard
- Retrieval options: Expedited 1–5 min (
$0.03/GB + $10/1,000 requests) · Standard 3–5 h ($0.01/GB) · Bulk 5–12 h (~$0.0025/GB) - Minimums: 90-day storage duration; 40 KB per object
- Durability: 11 nines, 3+ AZs — same as Standard
Worked examples: 1 PB of genomics archives = $4,000/month vs $23,000 on Standard ($220k+/year saved). 10 TB of logs = $41/month vs $235; even the year you restore a full TB for an audit ($100 retrieval + egress), you're still far ahead.
Do this
-
Transition by age with a lifecycle rule — nobody uploads to Glacier manually:
aws s3api put-bucket-lifecycle-configuration --bucket YOUR-BUCKET \ --lifecycle-configuration '{"Rules":[{"ID":"archive-old","Status":"Enabled", "Filter":{"Prefix":"backups/"}, "Transitions":[{"Days":90,"StorageClass":"GLACIER"}]}]}' -
Restores are jobs, not downloads.
restore-objectstages a temporary copy (default ~1 day) once the job finishes; wire up SNS/EventBridge notifications so nobody polls, and download within the window. -
Use Bulk for anything big and plannable — at ~$0.0025/GB it's nearly free; audit pulls submitted in the morning are ready by end of day.
-
Mass restores → S3 Batch Operations. Thousands of objects for a migration or discovery request should be one batch job, not a script of loops.
-
Test the restore workflow before you need it — the worst time to learn the two-step dance is during an incident.
Gotchas
- Expedited isn't guaranteed without provisioned capacity (~$100/month per unit); under load, expedited requests can be throttled. Don't build a DR plan on it casually.
- 90-day minimum + 40 KB minimum: churny or tiny-object data gets billed more than it saves. Aggregate small files before archiving.
- The restored copy expires (you set the window; default is short). Need it twice? Pay twice — or copy it back to Standard while staged.
- "Semi-frequent" access kills the math. Monthly retrievals mean retrieval fees plus friction; that data belongs in Glacier Instant Retrieval or Intelligent-Tiering.
- Transitions run in a daily batch — don't expect objects to move minutes after adding a rule.
Skip this if
- You need millisecond access — Glacier Instant Retrieval.
- You'll realistically never read it — Deep Archive is ~4× cheaper still.
- The data churns (rewritten or deleted inside 90 days) — Standard is cheaper despite the price tag.
- Sub-hour recovery objectives: only expedited gets close, and it's the priciest, least-guaranteed option.