- Posted by Rastko Vasiljevic
- On January 29, 2020
- 0 Comments
- aws, aws billing and pricing, aws cost management, cloud cost optimisation
The advent of cloud migration and the pay-as-you-go pricing model has completely transformed the way organizations approach their workflows and cost management. The new landscape has provided a forward-thinking outlook and more pragmatic application opportunities in terms of how a company can scale and optimize their costs and IT-based financial processes.
AWS has done a great deal to move this industry forward.
It comes as no surprise that the company has become the class-leading cloud service provider over the years. Their offer, features, scalability, and flexibility – as well as the cost-effectiveness of the AWS billing model – have locked this brand as one of the most relevant cloud providers available on the market.
Naturally, in order to make the most out of this aforementioned flexibility, one needs to understand the way the AWS billing works and figure out which pricing model is the most optimal for their AWS cloud usage needs. Perhaps the most beneficial aspect of AWS is that it provides an organization with an opportunity to pay only for the services and computing infrastructure that you actually use, allowing you to scale both up and down according to a company’s current needs, thus mitigating any overhead costs that most typically occur with other unscalable pricing models.
AWS provides numerous innovative and flexible services at a much less hefty price tag compared to similar on-premise solutions, for both SME and enterprise-level organizations including Amazon RDS for Aurora and Amazon Redshift, both of which stand out as great enterprise-grade solutions that would cost up to 10 times more in a legacy infrastructure scenario.
But we are getting ahead of ourselves.
Let’s approach the AWS pricing demystification process from the right angle by focusing on the fundamentals of AWS billing, AWS cost management benefits, and how to proactively approach their pricing model and actually optimize costs.
Current AWS Billing & Pricing Models
AWS hasn’t changed its core pricing practices, despite the myriad of new services and products emerging every year. Their philosophy is quite simple: the user is billed at the end of every month and is paying only for the services and products they utilized during that month, without any long-term contracts (though there are Term Commitment options to pay upfront, partial or all, with regard to Reserved Instances).
This basically means that your business can start or stop using an AWS service/product at their own convenience, with the pricing for each utilized service transparently listed.
AWS pricing includes numerous types of services:
→ Computing Resources
→ Migration & Transfer
→ Networking & Content Delivery
→ Developer Tools
→ Management & Governance
→ Media Services
→ Security, Identity & Compliance
The plans and pricing may differ to a certain extent depending on the product and services your company is using. In this section, we will focus on computing and storage/transfer based sets of services as they typically have the biggest impact on your overall AWS cloud management costs.
Below is a screenshot of all currently available AWS services.
As far as computing resources go, AWS users can choose between the following options:
- On-demand – Pay either per hour or per second (depending on which instances you choose to run on) from the moment they launch a resource, until the moment you decide to terminate it.
- Spot Instances – This model allows users to request spare Amazon EC2 computing capacity for up to 90% off the On-Demand price.
- Savings Plans – Savings Plans account for a very flexible pricing model that offers low prices on EC2 and Fargate usage. The user’s commitment to a consistent amount of usage is in focus here as it is measured in $/hour for a 1- or 3-year term.
- Reserved Instances – This model involves a significant discount (currently up to 75%) in comparison with On-Demand instance pricing.
- Dedicated Hosts – The model provides a physical EC2 server dedicated to a user and helps them reduce costs by allowing you to deploy existing server-bound software licenses (including Windows Server, SQL Server, and SUSE Linux Enterprise), as well as help the user meet their compliance requirements.
Some of the most popular AWS computing models include:
- AWS Lambda
- Amazon Lightsail
- Elastic Load Balancing
- AWS Elastic Beanstalk
- Amazon EC2 Container Registry
- Amazon Virtual Private Cloud (VPC)
- Amazon Elastic Compute Cloud (EC2)
Per Second Billing Explained
This method is what makes the AWS billing model so scalable and flexible as users pay only for the services they are using and how much of those services they are currently using. Amazon EC2 usage of Linux-based On-Demand, Reserved, and Spot instances are billed on one-second increments, with a minimum of 60 seconds.
This is particularly beneficial to those who manage instances running for irregular periods of time, including:
→ data processing
→ batch processing
→ gaming applications
Per-second billing is available for instances launched in:
- On-Demand, Reserved, and Spot forms
- All regions and Availability Zones
- Amazon Linux and Ubuntu
Data Storage and Transfer Services
The scalability of the data storage and transfer costs is achieved via the tiered per-gigabyte pricing model, which means there are several different aspects of the service that differ in cost. For example, the Amazon S3 model features different prices for storage, requests, and data transfer, but the general rule of thumb is – the more you use AWS services, the less you pay per gigabyte.
Most popular models that fall under the data storage and data transfer based services include:
- Amazon S3
- AWS Snowball
- Amazon Glacier
- AWS Snowmobile
- AWS Snowball Edge
- AWS Storage Gateway
- Amazon Elastic File System (EFS)
- Amazon Elastic Block Storage (EBS)
- Amazon RDS
- Amazon Redshift
- Amazon Aurora
- Amazon Quantum Ledger Database (QLDB)
- AWS DataSync
- AWS Application Discovery Service
- AWS Server Migration Service
Note: More granular information on all AWS services and pricing models (according to service type) is available on their main pricing page.
Free Tier Model Explained
AWS offers 3 different variations of their free tier model to those who are still not convinced that AWS is the right platform for them. The users can choose between:
- Always Free
- 12 Months Free
…each model having its own sets of benefits.
This model also offers additional services that do not expire at the end of your free-trial period, which makes for a handy opportunity to take advantage of free hosting deals, check out new services, and get an overall feel of the AWS cloud experience.
The Outbound Data Transfer Explained
The great thing about the AWS billing is that they charge only for outbound data transfer and do not charge for inbound data transfers or data transfers between other Amazon Web Services within the same region. The outbound data transfer is accumulated across Amazon EC2, Amazon S3, Amazon RDS, Amazon SimpleDB, Amazon SQS, Amazon SNS, and Amazon VPC – and then charged on a monthly basis at the outbound data transfer rate.
Still confused about which AWS pricing model best suits your business?
Talk to our Cloud Engineers:
Beneficial Features of the AWS Billing & Pricing Model
Businesses that run on AWS enjoy a plethora of benefits all of which contribute to a highly optimizable infrastructure model. Here are just some of the many coveted features:
High Flexibility, Scalability, and Optimum Infrastructure
As we already mentioned, AWS’s increased levels of scalability and flexibility stem from the extremely high granularity of its pricing model. The fact that each AWS service can be billed separately and individually, and that their pay-as-you-go system charges users by the hour or even second, companies are able to scale and finely tune their costs by choosing only the services their business actually needs and therefore obviate unnecessary costs.
With this highly-scalable AWS billing structure, businesses are able to use a large number of instances running for irregular periods of time – most typically deployed within projects that involve data processing, development/testing, analytics, image rendering, batch processing, gaming applications, etc. These scenarios require improved flexibility that would allow teams to focus on app development instead of devoting their time to infrastructure and resource usage optimization. With this per hour/second billing, the users are able to start/stop/terminate instances whenever they require without paying for EC2 resources when they were not actually using them.
As far as data storage and transfer are concerned, the scalability is achieved via the per gigabyte usage and billing.
Volume-Induced Savings & Reserve Options
As storage and data transfer operate via tiered pricing, AWS users have an opportunity to accumulate and accrue various discounts and lower prices. As your usage increases, the storage and data transfer price per gigabyte wanes. So, basically, the larger your company becomes, the more money you save.
The same goes for computing resources – the more volume you reserve, the greater discounts you accrue.
On the other hand, AWS users are also able to save up to 75% on reserve options in the long run, when compared to On-Demand capacity.
As AWS Grows, Your Business Grows Too
AWS is a behemoth of a cloud-based service company that has grown immensely over the years, and it will most definitely continue to do so in years, even decades to come. As AWS expands and grows, it manages to reap economy-induced benefits by reducing data center hardware costs, boosting its operational efficiency, while at the same time decreasing power consumption and – therefore – reduce AWS’s overall cost of doing business. The great thing about these benefits is that they transfer onto AWS users as well.
How to Proactively Approach the AWS Pricing Model and Actually Save Money
Although the AWS billing model is highly optimizable, there are still certain pitfalls and caveats that we would like to address, as well as offer some best practice pieces of advice in order to help your transition to the right cloud model and approach the AWS cost management with data-driven insight.
Establish KPIs and Map Them According to Your Business’ Main Goals
Only when you understand and determine which metrics would best indicate the performance of your organization, can you evaluate which improvements need to be made and where, and thus fully benefit from the cloud.
These KPIs should provide you with enough insight that would subsequently lead you towards streamlined workflows and optimized costs. Bear in mind that each niche, sub-niche, as well as the company size, influence which KPIs to track and analyze.
Optimize Instance Utilization via Proper Monitoring
Controlling and optimizing costs is only possible through proper monitoring. Make sure you use efficient and intuitive monitoring tools and dashboards to oversee your service usage and current spending.
→ Keep a regular track of chosen metrics to see if AWS services are performing in an optimal manner.
→ In case you detect performance and usage discrepancies and inconsistencies in terms of cost optimization, be sure to scale up or down – depending on your metrics – so your performance levels and costs are in perfect harmony.
→ Do the same with running instances in order to optimize the size of the needed servers and mitigate overprovisioning.
→ Resize or shut down the instances that are underutilized.
→ Keep up with new technologies and services provided by AWS so you always stay ahead of the curve and achieve optimal cost savings.
Remember, it is crucial to make sure that your costs are increasing for the right reason, which is growth, not overspending and waste.
Manage Updates and Usage Reviews on Daily/Weekly Spending
In order to keep all the moving parts of AWS cost management and optimization running smoothly, we recommend tackling usage reviews on a daily basis across all teams and among all team members. Proper visibility and transparency drive accountability across organizations of all sizes and complexities.
Dev/test, production, and other projects produce bills that need to be reviewed by team members according to their tasks, which can result in identifying new ways to
optimize costs and detect overheads.
Boost Cost Efficiency via Smart Instance Usage and Automation
The great thing about AWS services is that they don’t have to run 24/7, but rather on a need-to-run basis, while their efficiency can be optimized as well. The code can be designed in such a way that instances spin up and spin down according to the current level of usage.
→ Use monitoring and reports to figure out which instances are underutilized and optimize them (or turn them off altogether).
→ Optimize instance usage and manage cost allocation through the tagging process wherein you can track costs by users, particular instances, departments, users, etc.
→ Eliminate waste by automating processes so they turn off automatically when not in use.
→ Set up automated alerts to trigger when thresholds have been exceeded.
Understanding AWS billing and pricing, though potentially a bit intimidating to inexperienced users, is not too convoluted and is paramount to organizations seeking optimal cloud solutions for their infrastructure, services, processes, and projects. The team behind AWS knows that not every company works and operates the same way, which is exactly why they created so many different pricing plans and models.
Only through profound apprehension of one’s needs as a company, and with a firm grasp of all AWS models, can you make an informed, data-driven decision on how to get the most out of the Amazon Web Services platform.