How much does it cost to store 1TB on Amazon S3?
When using Amazon Simple Storage Service, or Amazon S3 for short, most users want to get an idea of what the storage costs might be for storing their data with this service. Especially when they have a decent amount of data to store, for example 1TB.
In the AWS S3 US East Region (North Virginia) using standard storage, the first 50 terabytes will have a per terabyte cost of $23.55 USD per month. The next 450TB of storage will have a per terabyte cost of $23.53 USD per month. Every terabyte after that is an additional $21.50 USD per month.
Even though this answer gives the cost for storing the data in one of the US East regions, there are many other AWS S3 regions with differing storage costs. There are also different types of storage classes, data transfer fees and various access or retrieval fees for the stored data.
Amazon S3 offers several storage classes. The cost to store 1TB of data will vary depending on the storage class used. We’ve already mentioned what the cost for storing 1TB of data using the standard storage class, in the US East Region (North Virginia), would be. All pricing mentioned in this section is also specific to the US East Region (North Virginia).
Looking at another storage class known as S3 Intelligent - Tiering, it has the same pricing for the frequent access tier objects as the standard storage class. However, infrequent access tier items have a reduced cost to store 1TB of data which works out to be $12.80 USD per month. This is a significant saving for those objects that are less frequently used! Any monitoring or automation enabled in this storage class would also add an additional $0.0025 per one thousand objects stored.
The S3 Standard - Infrequent Access is another storage class available which offers storage of 1TB of data in Amazon S3 for $12.80 per month. This is the pricing for all data stored within this storage class. A similar storage class to this one is known as the S3 One Zone - Infrequent Access storage class and it has an even cheaper monthly cost for storing 1TB of data. For this storage class, this works out to $10.24 USD per month for each terabyte stored.
A significantly different storage class to the ones previously mentioned is known as S3 Glacier. Any data stored in this storage class has a pricing per terabyte of only $4.10 USD per month. This is significantly less expensive than the other options mentioned. The one caveat to using this storage class is that retrieving the data can take much longer than the other storage classes. It varies between 1 minute and 12 hours depending on the configuration.
Even cheaper than this, there is another storage class known as S3 Glacier Deep Archive. This storage class is used for long term archiving and the pricing per terabyte of storage in this storage class is only $1.01 USD per month! This is incredibly cheap, and very useful for storing data that you very rarely need to access. It can take up to 12 hours to have data from this storage class restored to be useable.
So far, everything described is only about storing 1TB chunks of data in Amazon S3. However, there are other fees associates with writing, reading, listing and retrieving the data. These costs are usually much smaller than the actual storage cost for the data, but when uploading or retrieving significant amounts of data, these costs can also add up.
These fees can be broken out into several different types and each type is priced per thousand requests. There are the PUT, COPY, POST, LIST requests. There is also the GET, SELECT and other requests which are also priced per 1000 requests. Another type of priced request is the Lifecycle Transition requests. Finally we have the Data Retrieval requests. Once again, the prices mentioned in this section are specific to the US East Region (North Virginia).
For the PUT, COPY, POST, LIST requests, the pricing works out to $0.005 USD per 1000 requests for the S3 Standard and S3 Intelligent - Tiering storage classes. However it doubles in price for the S3 Standard - Infrequent Access and S3 One Zone - Infrequent Access storage classes for a price of $0.01 USD per 1000 requests. Finally, the S3 Glacier and S3 Glacier Deep Archive cost ten times as much than the standard storage class for these types of requests, coming in at $0.05 USD per one thousand requests.
The GET, SELECT and other requests have a pricing that works out to $0.0004 USD per 1000 requests for the S3 Standard, S3 Intelligent - Tiering, S3 Glacier and S3 Glacier Deep Archive storage classes. This then increases in price for the S3 Standard - Infrequent Access and S3 One Zone - Infrequent Access storage classes to a price of $0.001 USD per 1000 requests.
Looking at the Lifecycle Transition requests, we see that it doesn’t apply to the standard storage class. However, for the S3 Intelligent - Tiering, S3 Standard - Infrequent Access and S3 One Zone - Infrequent access storage tiers they all cost $0.01 USD per 1000 request of this type. Again the S3 Glacier and S3 Glacier Deep Archive have a five times increase in pricing for these types of requests, to $0.05 per 1000 requests.
Comparing those to the Data Retrieval requests, these are only applicable to the Glacier style storage classes. For S3 Glacier there are three types of these data retrieval requests. These are expedited, standard, and bulk. The expedited requests work out to $10.00 USD per 1000 requests, while the standard requests work out to $0.05 USD per 1000 requests. The bulk request type halves the standard request pricing, which is $0.025 USD per 1000 requests. Expedited in not an option for the S3 Glacier Deep Archive storage class. The pricing for this storage class is $0.10 for 1000 standard requests but only $0.025 per thousand requests of bulk type.
Along with these data retrieval requests, some of the storage classes have a fee charged for the amount of data retrieved from the S3 storage account. For example, the S3 Standard - Infrequent Access, S3 One Zone - Infrequent Access, and S3 Glacier standard retrievals all have a $10.24 USD fee per terabyte of data retrieved. Looking at the other types of data retrieval offered by S3 Glacier, the expedited mode has a $30.72 USD fee per TB of data retrieved. Its bulk mode has a $2.56 fee per terabyte of retrieved data.
S3 Glacier Deep Archive on the other hand has a retrieval fee of $20.48 USD per terabyte of data retrieved from its standard retrieval method. The bulk retrieval method is significantly cheaper than that, at $2.56 USD per terabyte.
Another area related to Amazon S3 storage pricing for 1TB of data is around the Data Transfer fee. This is related to the bandwidth used to push the data into Amazon S3 or received from Amazon S3 storage. This pricing varies dramatically depending on if the traffic is inbound from or outbound to the internet, if the traffic is only going somewhere internal to the AWS region, or if the data is moving inter region across the AWS network.
For all data transferred from the internet to the AWS S3 storage, the data transfer fee is FREE. There is no cost to receive data from the internet to the Amazon S3 storage account. However data transferred out to the internet from Amazon S3 storage works out to $92.16 USD per TB for approximately the first 10TB of outbound data. The first gigabyte of data transfer out to the internet is free. The next 40TB of output data transfer costs $87.04 USD per terabyte. The following 100TB of outbound internet traffic costs $71.68 per terabyte. Finally any outbound internet traffic from Amazon S3 storage greater than the initial 150TB works out to a price of $51.20 per terabyte.