Skip to main content

AWS S3

Required AWS S3 Attributes

To calculate costs for S3 operations, provide the following cost calculation tags in your traces:

Always Required Fields

These fields are always required for S3 request cost calculation:

Attribute NameExample ValueAllowed Values
aws.s3.bucket_namemy-application-bucketValid S3 bucket name
aws.regionus-east-1Supported AWS regions
aws.s3.request_operationPutObjectSupported S3 operations (see below)

Optional Fields

These fields have default values and only need to be provided when the default does not apply:

Attribute NameExample ValueAllowed ValuesDefault
aws.s3.storage_classSTANDARDSee storage classes belowSTANDARD

Supported Request Operations

S3 request operations are grouped into pricing tiers:

TierOperationsDescription
Tier 1PutObject, CopyObject, PostObject, ListObjectsHigher per-request cost (write/list operations)
Tier 2GetObject, SelectObjectLower per-request cost (read operations)
FreeDeleteObject, CancelObjectNo per-request cost
note

S3 API calls are priced per request. Each operation (PutObject, GetObject, etc.) costs money as a discrete transaction, with no duration-based component.

Supported Storage Classes

Storage ClassDescription
STANDARDGeneral-purpose storage (default if not specified)
INTELLIGENT_TIERINGAutomatic cost optimization for data with unknown access patterns
STANDARD_INFREQUENT_ACCESSLower-cost for infrequently accessed data with rapid retrieval
ONE_ZONE_INFREQUENT_ACCESSLowest-cost for infrequently accessed data in a single zone
GLACIER_INSTANT_RETRIEVALArchive storage with immediate access
GLACIERArchive storage with retrieval time in hours
DEEP_ARCHIVELowest-cost archive storage with retrieval time in 12 hours or more
EXPRESS_ONEZONEHigh-performance single-zone storage

Supported Regions

The following AWS regions are supported for S3 cost calculation:

RegionLocation
us-east-1N. Virginia
us-east-2Ohio
us-west-1N. California
us-west-2Oregon
ca-central-1Canada (Central)
sa-east-1Sao Paulo
eu-west-1Ireland
eu-west-2London
eu-west-3Paris
eu-central-1Frankfurt
eu-central-2Zurich
eu-north-1Stockholm
eu-south-1Milan
eu-south-2Spain
ap-northeast-1Tokyo
ap-northeast-2Seoul
ap-northeast-3Osaka
ap-southeast-1Singapore
ap-southeast-2Sydney
ap-southeast-3Jakarta
ap-southeast-4Melbourne
ap-south-1Mumbai
ap-south-2Hyderabad
ap-east-1Hong Kong
me-south-1Bahrain
me-central-1UAE
af-south-1Cape Town

Visualization with Mermaid

The diagram below shows which attributes are required and optional for S3 cost calculation.

Instrumenting S3 Operations

Add the required attributes to your OpenTelemetry spans when making S3 API calls.

Beakpoint Insights SDKs

We will be releasing SDKs for various languages to make it easier to send these attributes to Beakpoint Insights. Stay tuned for updates!

Attribute Mapping

The following table shows how to obtain the required attribute values:

Beakpoint Insights AttributeSourceNotes
aws.s3.bucket_nameS3 client callTarget bucket name
aws.regionAWS SDK configBucket region
aws.s3.request_operationS3 client callOperation name (e.g., PutObject, GetObject)
aws.s3.storage_classObject metadataRequired only if not STANDARD

AWS CLI Examples

You can verify your bucket's region and storage class:

# Get bucket location
aws s3api get-bucket-location --bucket my-application-bucket
{
"LocationConstraint": "us-east-1"
}
# Check an object's storage class
aws s3api head-object --bucket my-application-bucket --key my-object-key
{
"ContentLength": 1048576,
"ContentType": "application/octet-stream",
"StorageClass": "STANDARD",
"LastModified": "2026-01-15T10:30:00+00:00"
}