AWS (Amazon Web Services) is a cloud platform and cloud tooling suite provided by Amazon.
The list of AWSâs offerings ranges from Compute Servers (EC2), Storage (S3), Databases (RDS, DynamoDB), Networking & Content Delivery, Analytics, Machine Learning, etc.
You can view all of AWSâs product offerings here on their Explore Products page.
With that said, AWS is expensive.
Over the next few articles, weâll take a look at some very easy solutions (sometimes just by clicking a button) that you can take advantage of in AWS to save some serious cash!
Contribute
Have an idea for easily reducing AWS fees? Please leave a comment at the bottom of the page!
How To View Your AWS Monthly Bill
We can access our monthly AWS bill by going to the AWS Billing Console.
Then, from the left-hand menu, we can select Bills.
At the top of the page, youâll see the AWS estimated bill summary which outlines your current month of expenditures.
Upon scrolling down, youâll be able to view an itemized bill of your expenses.
Pre-Req: Delete Unused Resources
This goes without saying, if a resource is no longer being used, you should delete it.
Why? â AWS, in most cases, has quite a bit of no-so-obvious hidden costs.
Example of a Hidden Cost â EBS Volumes Attached to EC2 Instances
For this example, letâs assume I wanted to launch an EC2 instance in order to prototype a new feature.
Upon launching the instance, I attach a 2 TB EBS volume.
After prototyping, I then stop the instance since my prototyping phase is now complete.
Fast forward 1 month later⊠I check my bill and lo-and-behold⊠Iâm still paying $200 a month.⊠What? How?
I never deleted the 2 TB EBS Volume that I attached to the EC2 Instance! Iâm being charged for that unused storage!.
Itâs important to double-check your outstanding resources to confirm that AWS isnât charging you for hidden items that you may have forgotten about.
AWS S3 (Simple Storage Service)
You probably already know all about S3 if youâve found this article⊠but Iâll provide some information if you have never heard about it.
Amazon S3 (Simple Storage Service) is a highly scalable and secure object storage service offered by Amazon Web Services (AWS).
S3 stores data as objects, which consist of a file and metadata.
Additional S3 features include High durability and availability, Security, Scalability, Integration with other AWS services such as EC2, Lambda, and CloudFront to create powerful applications and workflows.
However⊠storing carelessly a lot of data can be expensive!
The (Expensive) Costs of S3
Data costs in S3 depend heavily on the storage class tier selected. Letâs look at a couple Storage Classes, their specs, and prices:
S3 Standard | S3 Intelligent-Tiering* |
S3 Standard-IA |
S3 Glacier IR |
|
---|---|---|---|---|
Durability |
(11 9âs) | (11 9âs) | (11 9âs) | (11 9âs) |
AZs | â„3 | â„3 | â„3 | â„3 |
Retrieval charge | N/A |
N/A |
per GB retrieved |
per GB retrieved |
Latency | ms | ms | ms | ms |
Cost | 0.023 / Gb | Varies | $0.0125 / Gb | $0.004 / Gb |
S3 offers quite a bit of different storage classes. The variable that differentiates these classes is the retrieval time to access the data and the additional costs that one may incur by accessing colder storage options..
Letâs take a look at this in the next section.
Selecting Cheaper Storage Classes
Assuming that you upload data to S3, you should be selecting the cheapest storage class to fit your needs.
Letâs take a look at a few different storage classes together. You can see the list in full form here.
Choosing S3 Standard
S3 Standard is considered the hot tier for data access. Therefore, you pay the highest per Gigabyte of storage in exchange for the fastest retrieval speed at no extra costs.
When to use this storage class: The S3 data is accessed frequently (daily, weekly, and potentially monthly).
Choosing S3 Standard Infrequent Access (IA)
S3 Standard-IA is considered a lukewarm tier for data access when compared to S3 Standard. Costs of data storage can 40% cheaper than S3 Standard. Although, there is a per-GB charge for accessing data..
When to use this storage class: The S3 data is accessed rather infrequently (possibly bi-weekly, monthly).
Personally, 40% is such a large cost cut that I believe most data that isnât accessed regularly should definitely live in this tier.
Choosing Amazon S3 Glacier Instant Retrieval (IR)
Out of the instant access tiers, Amazon S3 Glacier Instant Retrieval is the coldest tier. However, the cost benefits of this tier are huge â 68% less in data storage costs when compared to S3 Standard.
When to use this storage class: The S3 data is accessed rarely (every few months, yearly).
Canât Decide What S3 Storage Class To Choose?
If youâre like me â choosing a storage class seems like such a chore. How can we get these super deep cost savings and not have to study and understand our data access patterns all in the name of saving money?
Well⊠there is a way to avoid all this guess work by choosing a fairly unknown, but extremely important storage class when it comes to saving money. We will see it in the next part.
How do you choose storage classes? Leave a comment below.
The âHands Offâ AWS S3 Money Saving Class â S3 Intelligent-Tiering
In my opinion, the quickest way to save money with S3 is to use Intelligent Tiering. This is a storage class that you can enable in just 5 minutes!
What is AWSâs Intelligent Tiering Storage Class?
AWSâs Intelligent Tiering Storage Class is AWSâs solution for automatic classification of data in order to maximize cost savings all while removing the need for the user to manage and move data across storage classâs themselves.
By default, data stored in Intelligent Tiering is moved across three tiers:
- Within first 30 days: Frequent Access Tier (think S3 Standard) â 0% Savings
- Days 30-90: Infrequent Access Tier (think S3 Standard-IA) â 40% Savings
- Days 90+: Archive Instant Access Tier (think S3 Glacier Instant Retrieval) â 68% Savings
Additionally, and unlike having your data solely in S3 Standard-IA or S3 Glacier Instant Retrieval⊠there is no data retrieval charges!.
Whatâs the catch? Youâre charged a very very small premium for the monitoring and automatic movement between classes of data as data access patterns change.
The 5 Minute Hack: The One Day S3 Lifecycle Method
Now that we have a better understanding of what Intelligent Tiering is and *how we can save up to 68% of S3 Costs, letâs see how we can enable it!
A very fast and easy way to move all of your data into Intelligent Tiering immediately is to use S3âs Lifecycle Methods.
Step 1: Access the S3 Bucket Lifecycle Menu
First, login to AWSâs UI and navigate to the S3 Console, then choose the S3 bucket that you would like to convert to Intelligent Tiering. In my example, I have a bucket named s3bucket
:
Next, in the S3 Bucket horizontal menu at the top of the page, choose Management.
Youâll see a panel now available titled Lifecycle Rules. Click Create lifecycle rule.
Now weâll work on configuring the lifecycle rule!
Step 2: Creating the S3 Lifecycle Rule
- Enter a Lifecycle rule name, it can be whatever you please. I am choosing âMove to Intelligent Tieringâ:
-
Click Apply to all objects in the bucket. A warning will come up immediately after. If you agree with the terms of the warning, click âI acknowledge that this rule will apply to all objects in the bucket.â
-
Under âLifecycle rule actionsâ, check the box âMove current versions of objects between storage classesâ:
- A new menu will appear that is titled âTransition current versions of objects between storage classesâ. Select Intelligent-Tiering from the dropdown menu titled âChoose storage class transitionsâ. For âDays after object creationâ, choose 1.
- Confirm the configuration, then press Create rule.
AWS will now work on transitioning all the S3 data to Intelligent Tiering that has been within the S3 bucket for atleast 1 day.
Intelligent Tiering FAQ
When does the Intelligent Tiering internal transition timer start?
Intelligent Tieringâs transition timer starts immediately after being moved to Intelligent Tiering and is not tied to the creation timestamp of the object in S3.
Hereâs a quick example:
- Day 0: I create an S3-Standard object in S3
- Day 15: I reclassify this objectâs storage class to Intelligent-Tiering
- Day 45: After 30 days of not accessing the object, Intelligent Tiering moves the object to the infrequent-access (and cheaper) tier.
As you can see, the Intelligent Tiering timer waited 30 days after the objectâs storage class was reclassified to Intelligent Tiering.