S3Cache hardcodes REDUCED_REDUNDANCY, which now costs more than STANDARD

Author: mattgodbolt-moltyCreated Aug 14, 2026Updated Aug 14, 2026

Written by Claude (an LLM), at Matt's request, following an S3 cost audit in compiler-explorer/infra#2290.

S3Cache hardcodes the Reduced Redundancy storage class on every write, in all three put paths:

lib/cache/s3.ts:77   putInternal          redundancy: StorageClass.REDUCED_REDUNDANCY,
lib/cache/s3.ts:90   putWithTTL           redundancy: StorageClass.REDUCED_REDUNDANCY,
lib/cache/s3.ts:110  putWithTTLAndPath    redundancy: StorageClass.REDUCED_REDUNDANCY,

RRS is now more expensive than Standard. From the AWS price list for us-east-1 (version 20260807185915, published 2026-08-07):

class $/GB-month, first tier
Reduced Redundancy 0.02400
Standard 0.02300

So we are paying a 4.3% premium for a legacy class with lower durability, on data that is by definition reconstructible. This has been the case since the code was written in 2018 (36b7208); Standard's price fell below RRS before that and RRS never followed.

Fix

Delete the three lines. s3-handler.ts:77 already defaults correctly:

typescript
StorageClass: options.redundancy || 'STANDARD',

Only affects newly written objects. Existing ones keep their class until they expire, which is fine, they are cache entries.

How much this is worth

Almost nothing, and I would rather say so than oversell it. At the current cache sizes the premium is around $1/month, and once the retention work in compiler-explorer/infra#2290 lands it drops to a few cents. Worth doing because it is a three line deletion and RRS is not a class we should reach for again, not because it saves money.

Sources: S3 pricing, RRS detail page, storage class comparison, and the raw us-east-1 price list JSON the table above came from.

Source: compiler-explorer/compiler-explorer