"AWS S3” Pricing (Calculator & Sample Plan)

Amazon S3 Pricing Guide

In this article, we’ll focus on the cost of the AWS S3 storage solution. (Hint: It’s CHEAP!)

There are basically three factors that determine the total cost of using S3: the amount of storage, the amount of data transferred every month, and the number of requests made monthly. In most cases, only the storage amount and data transferred make much of a difference in cost.

Examples of S3 Pricing: Most Cost is in “Storage” and “Transfer”

Here are a few monthly cost estimates for “low,” “medium,” and “high” storage volumes usages:

Size Cost Storage Transfers Requests
Low $0.15 10GB 1GB 5,300
Medium $2.87 100GB 10GB 53,000
High $39.63 1TB 100GB 5,030,000

Use Amazon’s S3 Price Calculator Here


A Quick Discussion of the Examples from Above

The values mentioned in the chart above are merely to give you a picture of the range of storage configurations and price points available for S3 users. Mostly, the idea is to show that it takes a good amount of data movement before the cost even begins to become noticeable, and even the highest storage usage isn’t going to break the bank.

Low Usage Example

Our “low” usage example points towards the most basic storage configuration, for which the cost to store on S3 is equally minimal. If you’re just looking to store around 10GB of data or less, and don’t plan on downloading, you can literally benefit from S3 for pennies per month. Even considering the mentioned 5,300 requests, you’d have to perform about four times that amount before spending a dollar on web requests with S3.

Medium Usage Example

We chose these numbers based on an average or medium-sized storage configuration. Keep in mind that S3 pricing is calculated monthly, so we’re talking about 30 days to perform 50,000 object GET Requests — approximately 1,667 a day. Similarly, 100GB of storage and 10GB of data transfers are reasonably large quantities for hosting images, text, audio, et cetera. Basically, unless you’re using S3 to serve up static content for your very popular website, you shouldn’t have any problem benefiting from S3 at very little cost.

High Usage Example

Even S3 users with extreme storage requirements needn’t fret over cost. Our example of “high” storage volume indicates that a terabyte of data can be stored, with 100GB of data transferred, for under 40 bucks a month. In regards to the five million requests — that’s over 150,000 per day.

S3 Pricing Details

S3 pricing is based on three factors:

  1. Storage Amount: This is the total amount of data (in GB) you’ve stored.
  2. Amount of Outbound Data Transferred: Each time a file is downloaded, you are charged.
  3. Number of Requests: Amazon charges you a (small) fee for each request you make.

Cost Factor #1: Storage Amount

The cost of storage is based on the total size of the objects (in GB) stored in your S3 buckets. In general, pricing is $0.03 per gigabyte.

Cost Factor #2: Outbound Data Transfers

Amazon charges based on the amount of data transferred from S3 to the Internet (“Data Transfer Out”), as well as data transferred between AWS regions (“Inter-Region Data Transfer Out”). For the most part, you will pay $0.09 per gigabyte (up to the first terabyte and slightly less afterwards).

Cost Factor #3: Web Requests

The cost of web requests really focuses on GET and PUT Requests, which cost around $0.005 per 1,000 requests. They’re a cost factor, but not one you should be overly concerned about.

A Walkthrough of Amazon’s AWS (S3) Calculator

Now that we understand AWS S3 pricing, we can create our own storage configuration and get a monthly estimate. Check out our sample S3 storage configuration here as we discuss below.

Services Configuration Tab

All of Amazon’s web services (for the selected AWS region) are displayed on the left. We’re currently focused on the S3 service, so we’ve selected that option and configured it as follows.

A HostingAdvice Sample Calculation of S3 Pricing

Region Configuration Option

For each service, you can configure multiple AWS regions, each with its own specific configuration. As a general rule, you will want to choose the region(s) closest to your customers.

In our example, we only used one region (“US East / US Standard”), but we could easily have added another to our selection. To do so, we would simply choose another region from the drop-down menu and then configure the S3 storage options for the specified location.

Monthly Bill Estimate Tab

To see your monthly billing estimate, click on the “Estimate of your Monthly Bill” tab. Note that the “AWS Free Tier” discount, which allows new members to get started with AWS for free, is taken into account. Click the “Save and Share” button to create a unique URL of the estimate to share.

Final Words on AWS S3 Pricing

The world of AWS cloud computing is expansive and dynamic, but the management tools available are equally excellent. S3 is a cost-effective storage solution, and the monthly price can easily be estimated in order to guard yourself against any potential, unexpected billing problems.

Ryan Frankel

Questions or Comments? Ask Ryan!

Ask a question and Ryan will respond to you. We strive to provide the best advice on the net and we are here to help you in any way we can.

  • amir shehadeh

    Hi Ryan, thanks for this explanation. I’m currently hosting my website with hostgator and use Cloudflare as CDN. I’m considering to switch to the AWS free tier. Concerning hosting speed, do you think that this transition will increase the website speed or which potential benefits will I get form such a move? Thanks in advance for your feedback

    • frankel0

      That can vary widely based on your caching, code, etc. The best way to test is to mirror your site on both (w/ the CDN and any other caching) and do some performance testing of your own. In reality, the AWS free tier does not guarantee access to CPUs so the performance can vary widely.

      • amir shehadeh

        Thanks for your fast reply. I think I’ll give it a shot and see how it goes. I was planning on doing that and now you gave me the extra push to not wait any longer…