Skip to content
Cloud Efficiency Hub

Missing S3 Lifecycle Policy for Incomplete Multipart Uploads

The short version

Multipart upload allows large files to be uploaded in segments.

Taylor Houck

Cloud FinOps Specialist @ PointFive

AWS service
AWS S3
Category
Storage
Reference
CER-0076
Type
Inefficient Configuration

Explanation

Why the waste happens and who it affects.

Each part is stored individually until the upload is finalized by a "CompleteMultipartUpload" request. If this final request is never issued-due to a timeout, crash, failed job, or misconfiguration - the parts remain stored but are effectively useless: they do not form a valid object and cannot be retrieved. Without a lifecycle policy in place to clean up these incomplete uploads, the orphaned parts persist and continue to incur storage charges indefinitely.

Billing model

The pricing dimensions that drive this cost.

S3 charges per GB-month for all stored data, including partial object data from incomplete multipart uploads. These parts are billed as standard storage and remain in the bucket unless explicitly removed-either manually or via a lifecycle policy.

How to detect

3 checks to find it in your estate.

  • Identify S3 buckets that are used for large file uploads or automation-driven data ingestion
  • Review whether an S3 Lifecycle rule exists to abort incomplete multipart uploads
  • Consult with application owners or platform teams to confirm upload workflows and fault tolerance

How to fix

How to remove the waste.

Define an S3 Lifecycle rule to automatically abort incomplete multipart uploads after a specified number of days (e.g., 7 days). This ensures that leftover parts are cleaned up and do not persist indefinitely. Include this rule as a default in all buckets handling large object uploads or automation-driven data pipelines.

Documentation

Vendor references for pricing and configuration.