← Back to S3 Storage Class Savings
S3 Standard costs about $0.023 per GB-month in us-east-1; Glacier Deep Archive about $0.00099. The gap invites a lifecycle rule for everything old. The rule is right for large objects and wrong for small ones, and the bill is where you find out.
A lifecycle rule can skip small objects. ObjectSizeGreaterThan is a strict comparison, so 131071 keeps every object of 128 KiB or more:
{"Rules": [{"ID": "archive-large-old-objects", "Status": "Enabled",
"Filter": {"ObjectSizeGreaterThan": 131071},
"Transitions": [{"Days": 180, "StorageClass": "DEEP_ARCHIVE"}]}]}
The analyzer prints exactly this for the action with the best net 12-month saving. It compares each class with and without the filter.
Enable S3 Inventory with CSV output, then run the report locally. The file never leaves your machine:
node cli.mjs analyze inventory.csv --retrieval-pct 2 --fail-on warn --waste-threshold 250
The access pattern is the number an inventory cannot tell you. Set the share of bytes you read each month; if the best action changes when you raise it, you are close to a break-even and should measure access with S3 Storage Lens or server access logs first.
List prices ignore your discounts, volume tiers, region and the free tier. It does not model Glacier retrieval request fees, data-transfer charges, versioned non-current objects (they are left out), or objects that will age past a threshold later. Treat the output as a reason to test a rule on one prefix, not as a forecast of the invoice.
No. Cold classes charge per object (a transition request, a 128 KB minimum billable size or about 40 KB of overhead, and a 30 to 180 day minimum duration), so objects under about 128 KB can cost more after the move. Filter them out with ObjectSizeGreaterThan 131071.
It depends on how often you read it. Glacier Deep Archive is cheapest to store but slow and billed for 180 days; Standard-IA and Glacier Instant Retrieval keep millisecond access with a per-GB retrieval fee; Intelligent-Tiering has no retrieval fee but charges a monthly monitoring fee per object. Estimate the monthly percentage of bytes you read and compare the net figures.
Enable S3 Inventory on the bucket (Management, Inventory configurations) with CSV output and the Size, LastModifiedDate and Storage class fields. AWS delivers the report to a destination bucket daily or weekly; download the file, decompress it, and use it here.