Skip to main content

S3: Add S3 Intelligent Tiering policy

Updated over 5 months ago

Difficulty: Medium

We identified several S3 buckets in your account not using the S3 Intelligent-Tiering option, which reduces costs by automatically moving data between storage classes based on access. Objects in the Standard Storage class which have not been accessed in 30 days are transitioned to the Infrequent Access class. If it still has not been accessed after 90 days, the object is transitioned to the Archive Instant Access class.

Selection Criteria

  • Bucket has object in one or more of those storage class: Standard, Standard Infrequent Access (SIA) or One-Zone Infrequent Access (ZIA)

Using S3 Intelligent-Tiering can be beneficial depending on your object access patterns. It automatically adjusts the storage class based on access frequency, helping reduce costs without compromising data accessibility. Monitoring costs are $0.0025/month per 1,000 objects.

Over time, we’ve observed that a typical object distribution tends to follow a 10% / 20% / 70% split per tier.

How to fix

Add a S3 Lifecycle rule of bucket to transition all of the objects in the S3 bucket to S3 Intelligent Tiering. Objects with a size less than 128k are ignored.

lifecycle.json:

{
"Rules": [
{
"ID": "MoveToIntelligentTiering",
"Status": "Enabled",
"Filter": {
"Prefix": ""
},
"Transitions": [
{
"Days": 0,
"StorageClass": "INTELLIGENT_TIERING"
}
]
"NoncurrentVersionTransitions": [
{
"NoncurrentDays": 0,
"StorageClass": "INTELLIGENT_TIERING"
}
]
}
]
}

aws s3api put-bucket-lifecycle-configuration \
--bucket your-bucket-name \
--lifecycle-configuration file://lifecycle.json

Did this answer your question?