Amazon S3 vs Azure Blob Storage
A comparison of Amazon S3 and Azure Blob Storage built from values read directly from each provider's own documentation, with the source recorded against every figure.
The short answer
- Pick Amazon S3 if
- Workloads already inside AWS, where keeping data in the same region as the compute avoids the transfer charges that dominate an object storage bill.
- Pick Azure Blob Storage if
- Workloads already on Azure, where keeping storage in the same region as the compute avoids the bandwidth charge that dominates an object storage bill.
6 sourced criteria separate them:
- Pricing model
- Amazon S3: Per region and per storage class, with storage, requests, retrievals, data transfer and management features each metered separately. AWS states there is no minimum charge, and bills storage in binary gigabytes — 1 GB is 2^30 bytes, not 10^9.
- Azure Blob Storage: Per region, per redundancy and per access tier, with storage, operations and bandwidth metered separately. Rates are published in Azure's public Retail Prices API rather than only on a pricing page, so a figure can be re-verified exactly rather than re-read.
- Egress over allowance
- Amazon S3: $0.09 per GB for the first 10 TB a month out to the internet, after a free 100 GB aggregated globally. It falls to $0.085 above 10 TB, $0.07 above 50 TB and $0.05 above 150 TB. This is AWS's outbound data transfer rate rather than an S3-specific one — the charge that R2, Wasabi and Tigris do not levy at all.
- Azure Blob Storage: First 100 GB a month free, then $0.087 per GB over Microsoft's global network, falling to $0.083 above ~10 TB, $0.07 above ~50 TB and $0.05 above ~150 TB. Routing over the public internet instead is $0.08 at the first tier. This is Azure-wide bandwidth rather than a Blob-specific charge.
- Storage (entry plan)
- Amazon S3: None. S3 has no plans and no included storage — AWS states there is no minimum charge and you pay only for what you use, billed per GB-month from the first byte. New accounts get AWS Free Tier credits ($100 immediately, up to $200 over six months) which are spendable credit rather than a standing storage allowance.
- Azure Blob Storage: None. Azure Blob has no plans and no free storage band: the Hot LRS storage meter's cheapest tier begins at tierMinimumUnits 0 and charges $0.0208 per GB-month from the first gigabyte, with volume tiers only above 50 TB. Azure's free account offer sits outside the rate card and is time-limited, so it is not an allowance this criterion can record.
- Storage price
- Amazon S3: $0.023 per GB-month for S3 Standard, first 50 TB, in us-east-1. S3 prices vary by region; this and every other S3 figure on the site is that region.
- Azure Blob Storage: $0.0208 per GB-month for Hot LRS in East US, falling to $0.019968 above 50 TB and $0.019136 above 500 TB. Azure prices vary by region and redundancy; this and every Azure figure on the site is East US, locally redundant.
- Operations price
- Amazon S3: $0.005 per 1,000 PUT, COPY, POST and LIST requests, and $0.004 per 10,000 GET and all other requests, in us-east-1. DELETE and CANCEL are free.
- Azure Blob Storage: $0.05 per 10,000 write operations and $0.004 per 10,000 reads on Hot LRS — $5.00 and $0.40 per million. Listing and creating containers is $0.05 per 10,000; all other operations $0.004.
- Minimum storage duration
- Amazon S3: None on S3 Standard. 30 days on Standard-IA and One Zone-IA, 90 days on Glacier Instant and Flexible Retrieval, 180 days on Glacier Deep Archive, each with a pro-rated charge for early deletion.
- Azure Blob Storage: None on Hot. Cool carries a 30-day minimum, Cold 90 days and Archive 180 days — the longest early-deletion window of any provider here, and three times S3's 90-day Glacier figure.
Pick the criteria you care about. The chart counts how many of them lean toward each provider — the same read as scanning the bars below, just totalled for the ones you chose.
Amazon S3 0
Azure Blob Storage 0
At a glance.
| Criterion | Amazon S3 | Azure Blob Storage |
|---|---|---|
| Pricing | ||
| Pricing model | Per region and per storage class, with storage, requests, retrievals, data transfer and management features each metered separately. AWS states there is no minimum charge, and bills storage in binary gigabytes — 1 GB is 2^30 bytes, not 10^9. | Per region, per redundancy and per access tier, with storage, operations and bandwidth metered separately. Rates are published in Azure's public Retail Prices API rather than only on a pricing page, so a figure can be re-verified exactly rather than re-read. |
| Egress over allowance | $0.09 per GB for the first 10 TB a month out to the internet, after a free 100 GB aggregated globally. It falls to $0.085 above 10 TB, $0.07 above 50 TB and $0.05 above 150 TB. This is AWS's outbound data transfer rate rather than an S3-specific one — the charge that R2, Wasabi and Tigris do not levy at all. | First 100 GB a month free, then $0.087 per GB over Microsoft's global network, falling to $0.083 above ~10 TB, $0.07 above ~50 TB and $0.05 above ~150 TB. Routing over the public internet instead is $0.08 at the first tier. This is Azure-wide bandwidth rather than a Blob-specific charge. |
| Limits | ||
| Storage (entry plan) | None. S3 has no plans and no included storage — AWS states there is no minimum charge and you pay only for what you use, billed per GB-month from the first byte. New accounts get AWS Free Tier credits ($100 immediately, up to $200 over six months) which are spendable credit rather than a standing storage allowance. | None. Azure Blob has no plans and no free storage band: the Hot LRS storage meter's cheapest tier begins at tierMinimumUnits 0 and charges $0.0208 per GB-month from the first gigabyte, with volume tiers only above 50 TB. Azure's free account offer sits outside the rate card and is time-limited, so it is not an allowance this criterion can record. |
| Storage | ||
| Storage price | $0.023 per GB-month for S3 Standard, first 50 TB, in us-east-1. S3 prices vary by region; this and every other S3 figure on the site is that region. | $0.0208 per GB-month for Hot LRS in East US, falling to $0.019968 above 50 TB and $0.019136 above 500 TB. Azure prices vary by region and redundancy; this and every Azure figure on the site is East US, locally redundant. |
| Operations price | $0.005 per 1,000 PUT, COPY, POST and LIST requests, and $0.004 per 10,000 GET and all other requests, in us-east-1. DELETE and CANCEL are free. | $0.05 per 10,000 write operations and $0.004 per 10,000 reads on Hot LRS — $5.00 and $0.40 per million. Listing and creating containers is $0.05 per 10,000; all other operations $0.004. |
| Minimum storage duration | None on S3 Standard. 30 days on Standard-IA and One Zone-IA, 90 days on Glacier Instant and Flexible Retrieval, 180 days on Glacier Deep Archive, each with a pro-rated charge for early deletion. | None on Hot. Cool carries a 30-day minimum, Cold 90 days and Archive 180 days — the longest early-deletion window of any provider here, and three times S3's 90-day Glacier figure. |
Where they differ.
Pricing model
- Amazon S3
- Per region and per storage class, with storage, requests, retrievals, data transfer and management features each metered separately. AWS states there is no minimum charge, and bills storage in binary gigabytes — 1 GB is 2^30 bytes, not 10^9.
- Azure Blob Storage
- Per region, per redundancy and per access tier, with storage, operations and bandwidth metered separately. Rates are published in Azure's public Retail Prices API rather than only on a pricing page, so a figure can be re-verified exactly rather than re-read.
Sources (2) →Sources ↓
- S3 Pricing — AWS ↗
“Pay only for what you use. There is no minimum charge. Amazon S3 cost components are storage pricing, request and data retrieval pricing, data transfer and transfer acceleration pricing, data management and insights feature pricing, replication pricing, and transform and query feature pricing. [...] Amazon S3 storage usage is calculated in binary gigabytes (GB), where 1 GB is 230 bytes.”
Read 2026-09-06 · official docs
- Azure Retail Prices API — Storage, eastus ↗
“"unitOfMeasure": "1 GB/Month" [...] "unitOfMeasure": "10K" [...] "armRegionName": "eastus" [...] "skuName": "Hot LRS"”
Read 2026-09-06 · official pricing
Egress over allowance
- Amazon S3
- $0.09 per GB for the first 10 TB a month out to the internet, after a free 100 GB aggregated globally. It falls to $0.085 above 10 TB, $0.07 above 50 TB and $0.05 above 150 TB. This is AWS's outbound data transfer rate rather than an S3-specific one — the charge that R2, Wasabi and Tigris do not levy at all.
- Azure Blob Storage
- First 100 GB a month free, then $0.087 per GB over Microsoft's global network, falling to $0.083 above ~10 TB, $0.07 above ~50 TB and $0.05 above ~150 TB. Routing over the public internet instead is $0.08 at the first tier. This is Azure-wide bandwidth rather than a Blob-specific charge.
Sources (2) →Sources ↓
- AWS Price List API — AWSDataTransfer, us-east-1 ↗
“"$0 for 100GB of data transfer out to the internet, aggregated globally" [...] "$0.090 per GB - first 10 TB / month data transfer out beyond the global free tier" [...] "$0.085 per GB - next 40 TB / month" [...] "$0.070 per GB - next 100 TB / month" [...] "$0.050 per GB - greater than 150 TB / month"”
Read 2026-09-06 · official pricing
- Azure Retail Prices API — Bandwidth, eastus ↗
“"meterName": "Standard Data Transfer Out", "unitOfMeasure": "1 GB", "retailPrice": 0.0, "tierMinimumUnits": 0.0 [...] 0.087, "tierMinimumUnits": 100.0 [...] 0.083, 10335.0 [...] 0.07, 51295.0 [...] 0.05, 153695.0 [...] "Bandwidth - Routing Preference" [...] 0.08, "tierMinimumUnits": 100.0”
Read 2026-09-06 · official pricing
Storage (entry plan)
None. S3 has no plans and no included storage — AWS states there is no minimum charge and you pay only for what you use, billed per GB-month from the first byte. New accounts get AWS Free Tier credits ($100 immediately, up to $200 over six months) which are spendable credit rather than a standing storage allowance.
None. Azure Blob has no plans and no free storage band: the Hot LRS storage meter's cheapest tier begins at tierMinimumUnits 0 and charges $0.0208 per GB-month from the first gigabyte, with volume tiers only above 50 TB. Azure's free account offer sits outside the rate card and is time-limited, so it is not an allowance this criterion can record.
Sources (2) →Sources ↓
- Amazon S3 Pricing ↗
“Pay only for what you use. There is no minimum charge. Amazon S3 cost components are storage pricing, request and data retrieval pricing, data transfer and transfer acceleration pricing”
Read 2026-09-07 · official pricing
- Azure Retail Prices API ↗
“Hot LRS Data Stored price=0.0208 tierMinimumUnits=0.0 unit=1 GB/Month type=Consumption [...] price=0.019968 tierMinimumUnits=51200.0 [...] price=0.019136 tierMinimumUnits=512000.0”
Read 2026-09-07 · official pricing
Storage price
- Amazon S3
- $0.023 per GB-month for S3 Standard, first 50 TB, in us-east-1. S3 prices vary by region; this and every other S3 figure on the site is that region.
- Azure Blob Storage
- $0.0208 per GB-month for Hot LRS in East US, falling to $0.019968 above 50 TB and $0.019136 above 500 TB. Azure prices vary by region and redundancy; this and every Azure figure on the site is East US, locally redundant.
Sources (2) →Sources ↓
- AWS Price List API — AmazonS3, us-east-1 ↗
“"description": "$0.023 per GB - first 50 TB / month of storage used", "pricePerUnit": {"USD": "0.0230000000"}, "unit": "GB-Mo", "beginRange": "0", "endRange": "51200"”
Read 2026-09-06 · official pricing
- Azure Retail Prices API — Storage, eastus ↗
“"meterName": "Hot LRS Data Stored", "unitOfMeasure": "1 GB/Month", "retailPrice": 0.0208, "tierMinimumUnits": 0.0 [...] 0.019968, "tierMinimumUnits": 51200.0 [...] 0.019136, "tierMinimumUnits": 512000.0”
Read 2026-09-06 · official pricing
Operations price
- Amazon S3
- $0.005 per 1,000 PUT, COPY, POST and LIST requests, and $0.004 per 10,000 GET and all other requests, in us-east-1. DELETE and CANCEL are free.
- Azure Blob Storage
- $0.05 per 10,000 write operations and $0.004 per 10,000 reads on Hot LRS — $5.00 and $0.40 per million. Listing and creating containers is $0.05 per 10,000; all other operations $0.004.
Sources (2) →Sources ↓
- AWS Price List API — AmazonS3, us-east-1 ↗
“"description": "$0.005 per 1,000 PUT, COPY, POST, or LIST requests" [...] "description": "$0.004 per 10,000 GET and all other requests" [...] DELETE and CANCEL requests are free.”
Read 2026-09-06 · official pricing
- Azure Retail Prices API — Storage, eastus ↗
“"meterName": "Hot LRS Write Operations", "unitOfMeasure": "10K", "retailPrice": 0.05 [...] "Hot Read Operations", "10K", 0.004 [...] "LRS List and Create Container", "10K", 0.05 [...] "All Other Operations", "10K", 0.004”
Read 2026-09-06 · official pricing
Minimum storage duration
- Amazon S3
- None on S3 Standard. 30 days on Standard-IA and One Zone-IA, 90 days on Glacier Instant and Flexible Retrieval, 180 days on Glacier Deep Archive, each with a pro-rated charge for early deletion.
- Azure Blob Storage
- None on Hot. Cool carries a 30-day minimum, Cold 90 days and Archive 180 days — the longest early-deletion window of any provider here, and three times S3's 90-day Glacier figure.
Sources (2) →Sources ↓
- S3 Pricing — AWS ↗
“S3 Standard-IA, and S3 One Zone-IA storage are charged for a minimum storage duration of 30 days [...] Objects that are archived to S3 Glacier Instant Retrieval and S3 Glacier Flexible Retrieval are charged for a minimum storage duration of 90 days, and S3 Glacier Deep Archive has a minimum storage duration of 180 days.”
Read 2026-09-06 · official docs
- Access tiers for blob data — Microsoft Learn ↗
“Data in the cool tier should be stored for a minimum of 30 days. [...] Data in the cold tier should be stored for a minimum of 90 days. [...] Data in the archive tier should be stored for a minimum of 180 days.”
Read 2026-09-07 · official docs
When these numbers change, hear about it. Sources are re-checked monthly; a repricing goes out as a short note.
Which should you choose?
Choose Amazon S3 if…
Workloads already inside AWS, where keeping data in the same region as the compute avoids the transfer charges that dominate an object storage bill.
Editorial · Palash Bagchi · approved
Choose Azure Blob Storage if…
Workloads already on Azure, where keeping storage in the same region as the compute avoids the bandwidth charge that dominates an object storage bill.
Editorial · Palash Bagchi · approved
Consider something else if…
- Amazon S3: Egress is the cost that decides this category and S3 charges for it, where R2, Wasabi and Tigris do not. Prices also vary by region, so a figure quoted anywhere is only true for the region it was read in.
- Azure Blob Storage: Egress is charged beyond the first 100 GB a month, where R2, Wasabi and Tigris charge nothing — and Azure's rates vary by region and redundancy, so a quoted figure only holds for the combination it was read for.
Documented by only one.
These criteria are published by one provider and not the other. An absence here means we have not found a source, not that the feature is missing.
Questions this comparison answers.
Egress over allowance: Amazon S3 or Azure Blob Storage?
Amazon S3: $0.09 per GB for the first 10 TB a month out to the internet, after a free 100 GB aggregated globally. It falls to $0.085 above 10 TB, $0.07 above 50 TB and $0.05 above 150 TB. This is AWS's outbound data transfer rate rather than an S3-specific one — the charge that R2, Wasabi and Tigris do not levy at all.
Azure Blob Storage: First 100 GB a month free, then $0.087 per GB over Microsoft's global network, falling to $0.083 above ~10 TB, $0.07 above ~50 TB and $0.05 above ~150 TB. Routing over the public internet instead is $0.08 at the first tier. This is Azure-wide bandwidth rather than a Blob-specific charge.
Storage (entry plan): Amazon S3 or Azure Blob Storage?
Amazon S3: None. S3 has no plans and no included storage — AWS states there is no minimum charge and you pay only for what you use, billed per GB-month from the first byte. New accounts get AWS Free Tier credits ($100 immediately, up to $200 over six months) which are spendable credit rather than a standing storage allowance.
Azure Blob Storage: None. Azure Blob has no plans and no free storage band: the Hot LRS storage meter's cheapest tier begins at tierMinimumUnits 0 and charges $0.0208 per GB-month from the first gigabyte, with volume tiers only above 50 TB. Azure's free account offer sits outside the rate card and is time-limited, so it is not an allowance this criterion can record.
Should I choose Amazon S3 or Azure Blob Storage?
Pick Amazon S3 if Workloads already inside AWS, where keeping data in the same region as the compute avoids the transfer charges that dominate an object storage bill.
Pick Azure Blob Storage if Workloads already on Azure, where keeping storage in the same region as the compute avoids the bandwidth charge that dominates an object storage bill.
