Cost savings is one of the main reasons that companies decide to migrate to a cloud environment. Cloud computing can offer organizations potential financial advantages in a few ways; however, it's important to understand the full implications of cloud pricing, and how it can affect companies.
How Do Providers Determine Cloud Costs?
The main factors cloud service providers consider when they decide how much to charge customers are networking, computing and storage.
- Networking costs: The vendor decides how much it must spend to maintain the network. Consequently, the provider estimates the costs for the hardware, network setup, labor and maintenance.
- Storage costs: The vendor calculates how much it will cost to operate a company's storage hardware or what it will cost to buy new hardware to meet the storage needs of the enterprise.
- Computing costs: The provider calculates the costs for CPUs -- client organizations will have their own individual requirements when it comes to using CPUs. Costs also include licensing fees, depending on the operating system an organization is running. The provider calculates the costs of buying hardware for every gigabyte of virtual RAM that a company uses.
Payment Structures of Major Cloud Providers
The three leading cloud providers -- AWS, Microsoft Azure and Google Cloud -- offer several products and services to support user workloads. Below is just a sampling of the storage and compute options available, as well as some pricing examples.
Amazon Web Services
AWS offers organizations a pay-as-you-go approach to pricing for most of its cloud services. With AWS, customers pay only for the services used. Organizations don't have to deal with long-term contracts or complex licensing, and there are no additional costs or termination fees when they stop using these cloud services.
Amazon Elastic Block Store
Amazon EBS is a block storage service for Amazon Elastic Compute Cloud (EC2). With Amazon EBS, users only pay for what they provision until they release the storage.
|Volume type||Price per provisioned storage|
|Free Tier: 12 months free||30 GB of storage, 2 million I/Os and 1 GB of snapshot storage|
|General Purpose SSD (gp3): Storage||$0.08/GB-month|
|General Purpose SSD (gp3): IOPS||3,000 IOPS free and $0.005/provisioned IOPS-month over 3,000 IOPS|
|General Purpose SSD (gp3): Throughput||125 MB per/sec (MBps) free and $0.04/provisioned MBps-month over 125 MBps|
|General Purpose SSD (gp2): Volumes||$0.10/GB-month|
|Provisioned IOPS SSD (io2): Storage||$0.125/GB-month|
|Provisioned IOPS SSD (io2): IOPS||$0.065/provisioned IOPS-month up to 32,000 IOPS
$0.046/provisioned IOPS-month for 32,001 IOPS to 64,000 IOPS
$0.032/provisioned IOPS-month for more than 64,000 IOPS (Available only for io2 Block Express in select regions)
|Provisioned IOPS SSD (io1): Volumes||$0.125/GB-month of provisioned storage and $0.065 per provisioned IOPS-month|
|Throughput Optimized HDD (st1): Volumes||$0.045/GB-month of provisioned storage|
|Cold HDD (sc1): Volumes||$0.015/GB-month of provisioned storage|
|Source: Amazon EBS pricing|
Amazon Elastic File System
Amazon EFS is a serverless, elastic storage service for Amazon EC2. With EFS, organizations don't pay a minimum fee or setup charge. Companies only pay for the storage they use, read and write access to data that's infrequently accessed and stored, and any provisioned throughput.
The following table shows storage pricing for file systems using Lifecycle Management for select regions. There's also a Free Tier option available for one year.
|Region||Effective storage price ($/GB-Mo)-One Zone*||Effective storage price ($/GB-Mo)-Standard**|
|U.S. East (N. Virginia)||$0.043||$0.08|
|U.S. West (Oregon)||$0.043||$0.08|
|Africa (Cape Town)||$0.054||$0.10|
|Asia Pacific (Seoul)||$0.047||$0.09|
|AWS GovCloud (U.S.-East)||$0.056||$0.11|
|Source: Amazon EFS pricing
*Assumes 80% of data is infrequently accessed and stored in One Zone-IA
**Assumes 80% of data is infrequently accessed and stored in Standard-IA
Amazon Simple Storage Service
Amazon S3 is an "object storage service that stores data as objects within buckets." Users only pay for what they use, and there's no minimum charge. S3's free tier incudes 5 GB of Amazon S3 standard storage.
Amazon S3 has six cost elements: storage pricing, data transfer and transfer acceleration pricing, data management and analytics pricing, request and data retrieval pricing, replication pricing and the price to process data with S3 Object Lambda. This article provides the main storage pricing.
S3 storage classes and pricing varies by region. The pricing listed below reflects the U.S. East (N. Virginia) region and restrictions apply.
- S3 Standard is for data users that need to access data frequently.
- First 50 TB/month: $0.023 per GB
- Next 450 TB/month: $0.022 per GB
- More than 500 TB/month: $0.021 per GB
- S3 Intelligent-Tiering provides automatic cost savings for dynamic and unknown data.
- Monitoring and Automation, all storage/month (Objects > 128 KB): $0.0025 per 1,000 objects
- Frequent Access Tier, first 50 TB/month: $0.023 per GB
- Frequent Access Tier, next 450 TB/month: $0.022 per GB
- Frequent Access Tier, more than 500 TB/month: $0.021 per GB
- Infrequent Access Tier, all storage/month: $0.00125 per GB
- Archive Instant Access Tier, all storage/month: $0.004 per GB
- S3 Intelligent-Tiering is for optional asynchronous Archive Access tiers.
- Archive Access Tier, all storage/month: $0.0036 per GB
- Deep Archive Access Tier, all storage/month: $0.00099 per GB
- S3 Standard-Infrequent Access (IA) is for long-term but infrequently accessed data that users need to retrieve in milliseconds.
- All storage/month: $0.0125 per GB
- S3 One Zone-IA is for long-term but infrequently accessed data in one region that customers need to retrieve immediately.
- All storage/month: $0.01 per GB
- S3 Glacier Instant Retrieval is for long-term archived data that customers must retrieve instantaneously.
- All storage/month: $0.004 per GB
- S3 Glacier Flexible Retrieval (formerly S3 Glacier) is for long-term archived data and backups that users can wait minutes to 12 hours to retrieve.
- All storage/month: $0.0036 per GB
- S3 Glacier Deep Archive is for long-term data that only needs to be accessed once or twice a year; users are also OK with waiting from 12 to 48 hours to retrieve data.
- All storage/month: $0.00099 per GB
Amazon Elastic Compute Cloud
Amazon EC2 is a cloud compute service that enables users to spin up VM instances with the amount of computing resources -- e.g., the number and type of CPUs, local storage and memory -- they need.
Users can try EC2 for free and receive 750 hours of Windows and Linux t2.micro instances every month for a year.
There are numerous ways users can pay for EC2 instances, including the following:
- On-demand pricing enables customers to pay for compute capacity by the second -- with a minimum of 60 seconds -- or the hour. There are no long-term commitments.
- Spot instances enable users to request unused EC2 compute capacity for up to 90% off on-demand prices.
- With savings plans, users don't purchase actual instances. Instead, they commit to one to three years of on-demand instances at 72% off regular on-demand prices.
- Reserved instances provide customers with an up to 75% discount if they purchase on-demand instances in advance for a set term of one to three years.
AWS Lambda is a serverless compute service that enables users to run code without the need to provision or manage servers. Users only pay for what they use.
AWS Lambda pricing is calculated based on the following:
- Request pricing. AWS Lambda free tier includes 1 million requests per month and 400,000 GB-seconds of compute time per month. After that, it's $0.0000002 per request or $0.20 per 1 million requests.
- Duration pricing. Users receive 400,000 GB-seconds per month free, up to 3.2 million seconds of compute time. After that, it's $0.00001667 for every GB-second used.
Azure offers several storage services, each with its own pricing model. Following are the main services:
Azure Blob Storage
Pricing for Azure Blob Storage is as follows:
|First 50 TB/month||$0.15 per GB||$0.018 per GB||$0.01 per GB||$0.00099 per GB|
|Next 450 TB/month||$0.15 per GB||$0.0173 per GB||$0.01 per GB||$0.00099 per GB|
|More than 500 TB/month||$0.15 per GB||$0.0166 per GB||$0.01 per GB||$0.00099 per GB|
|Source: Azure Blob Storage pricing|
Pricing for Azure Files is as follows:
|Data storage||Premium||Transaction optimized||Hot||Cool|
|Data at-rest (GiB/month)
Per GiB storage costs for a file's data stream.
|$0.16 per provisioned GiB||$0.06 per used GiB||$0.0255 per used GiB||$0.015 per used GiB|
|Snapshots (GiB/month)||$0.136 per used GiB||$0.06 per used GiB||$0.0255 per used GiB||$0.015 per used GiB|
|Metadata at-rest (GiB/month)||Included||Included||$0.027||$0.027|
|Source: Azure Files pricing|
Additional charges apply for snapshots, transactions on data and data transfer volume.
Example prices above are for the East U.S. 2 region with locally redundant storage and are subject to change.
Azure's free tier enables customers to use various services free for 12 months. Each service has a limited allowance.
Azure Virtual Machine
Users pay for Azure VMs in three ways: pay as you go, spot instances and reserved instances.
Microsoft offers various types and sizes of VMs, divided into six categories: general purpose, compute optimized, memory optimized, storage optimized, GPU and high performance compute. Here is an example of pricing for compute- and memory-optimized Linux VMs in the East U.S. region.
- Compute optimized
- Provides high CPU-to-memory; works well for network appliances, application servers, batch processes and medium traffic web servers.
- Pay-as-you go pricing starts at $61.7580/month.
- Memory optimized
- Provides a high memory-to-core ratio. Great for medium to large caches, relational database servers and in-memory analytics.
- Pay-as-you go pricing starts at $82.4900/month.
Pricing for Google Cloud storage services is based on what a customer uses, including the volume of data stored, how long the data is stored, the number of operations the customer performs on the data, as well as any network resources the customer uses to move or access the data.
The pricing below is for North America data storage when using Google Cloud Storage:
|Standard storage||Nearline storage||Coldline storage||Archive storage|
|Starts at $0.020 per GB, per month||Starts at $0.010 per GB, per month||Starts at $0.004 per GB, per month||Starts at $0.0012 per GB, per month|
|Source: Google Cloud Storage pricing|
Google Cloud has also announced pricing updates for Cloud Storage, effective Apr. 1, 2023.
In addition, users are charged if they retrieve cold storage data or delete cold storage data early. That's because cold storage classes are for storing long-term, infrequently accessed data.
The following resources are available to users of the Google Cloud Free Tier, but specific limits apply:
|Resource||Monthly Free Usage Limits*|
|Standard storage||5 GB-month|
|Class A operations||5,000|
|Class B operations||50,000|
|Network egress||100 GB from North America to each GCP egress destination, Australia and China excluded|
|Source: Google Cloud Storage Always Free usage limits
*Cloud Storage Always Free quotas apply to use in U.S.-West1, U.S.-Central1 and U.S.-East1 regions.
Google Compute Engine VMs
In Google Compute Engine, VMs are grouped according to types of workloads. The main types are general purpose, accelerator optimized, compute optimized and memory optimized.
The following are the prices for compute- and memory-optimized machine types:
Compute-optimized machine types
Pricing per vCPU and GB of memory for C2 machine types in Iowa (U.S.-Central) is as follows:
|Item||On-demand price||Spot price*||1-year commitment||3-year commitment|
|Predefined vCPUs||$19.84432/vCPU month||$2.25/vCPU month||$15.6293/vCPU month||$9.9207/vCPU month|
|Predefined memory||$2.6572/GB month||$0.3/GB month||$2.0951/GB month||$1.3286/GB month|
|Source: Compute-optimized machine types
*Spot prices are subject to change up to once every 30 days.
Memory-optimized machine types
Pricing per vCPU and GB of memory for M1 machine types in Iowa (U.S.-Central) is as follows:
|Item||On-demand price||Spot price*||1-year commitment||3-year commitment|
|Predefined vCPUs||$17.78/vCPU month||$5.35/vCPU month||$15.01/vCPU month||$7.63/vCPU month|
|Predefined memory||$2.61/GB month||$0.79/GB month||$2.21/GB month||$1.12/GB month|
|Source: M1 machine types
*Spot prices are subject to change up to once every 30 days
Calculating Cloud Costs vs. Traditional Infrastructure
There are three types of costs to consider when deploying on-premises infrastructure:
- Capital costs: server hardware, server software licensing, network infrastructure, storage and backup infrastructure
- Operational costs: support for server hardware, software and network infrastructure, as well as the storage warranty, data center power and facilities, current system administration labor, IT training and IT staff turnover
- Indirect business costs: planned and unplanned downtime
Building out and maintaining infrastructure on-premises can also mean adding more staff, which increases costs.
Typically, for every dollar an organization spends on capital expenses to upgrade its IT infrastructure, it can also expect to spend about $2 to manage, maintain and secure that infrastructure.
To calculate the total cost related to moving to the cloud, an organization should conduct a thorough audit of the status of its IT infrastructure, including all direct and indirect costs.
Direct costs are easier to calculate because they include software, hardware, maintenance, staff and the physical facility. Indirect costs are a little more difficult to determine because they include the loss of productivity for any reason, such as server downtime, addressing customer displeasure and repairing a damaged reputation.
The company then calculates the estimated cloud infrastructure costs, which it can do with various pricing calculators, such as the in-depth monthly cost calculator provided by Amazon Web Services.
Benefits and Savings of Moving to the Cloud
Benefits of migrating to the cloud include:
Easy and fast setup: A company can set up its public cloud in just a few hours. The company's IT team can bring it online easily and then deploy it remotely through the vendor's website. The IT team can remotely configure and manage the setup over the internet.
No maintenance: The vendor is responsible for maintaining the hardware, software and networks in the cloud. Businesses, therefore, don't have to worry about keeping their infrastructure up-to-date or worry about security and upgrades. As such, companies can run the infrastructure with a minimal IT staff, thereby significantly reducing overall costs.
Faster disaster recovery: Cloud-based services enable companies to quickly recover their data in case of an emergency, such as a power outage or natural disaster.
Savings of moving to the cloud include:
- No large upfront capital costs for hardware as an organization that opts to move to the cloud doesn't have to purchase physical servers, network storage, cooling systems, disaster recovery systems, etc.
- Reduced software costs because upgrades are included in the monthly fees
- Lower IT support costs
- Business continuity is included in the cloud environment
- Savings realized through greater efficiency
Pitfalls and Hidden Cloud Expenses
Often, the prices that public cloud providers charge their customers to sign up for their services are low or they don't charge any sign-up costs. Sometimes, the cloud vendors even help their customers move their data to the cloud for free.
But while money may not be a factor in this scenario, time certainly is. It can take weeks or even months to transfer petabytes of data to the cloud, which means enterprises might not be able to access their critical data during that time.
And transferring data from one cloud vendor to another can be pretty onerous and expensive, which is why most organizations opt to remain with one provider for the long term. In essence, this creates a type of vendor lock-in as companies find it too difficult to cancel their provider relationships.
In addition, many public cloud vendors charge a small fee every time a customer wants to access its data. Although these fees are negligible, maybe just a few cents per hour, organizations often neglect to consider them when they do their business planning, as well as when they consider the ROI of cloud computing.
The cost of cloud computing can also get pretty expensive for organizations running thousands of analytics jobs, because transactional costs increase as data use increases. As such, using the public cloud for everything isn't always a great investment long term.
Here are some other aspects for organizations to consider in order to avoid paying extra fees might not think about when considering the ROI of migrating to the cloud:
- Companies that go over the data limits stated in their contracts for storage and backup will incur extra costs, especially if they didn't plan for these extra data requirements. To avoid this, organizations should think about how much data they need to keep as backups. Organizations should also think about their future database capacity
- Companies should consider the time it will take to migrate on-premises software and data to the cloud, which may mean adjusting their licensing models.
- Companies may have to consider that they'll need staff to monitor and manage their interfaces to the cloud vendors.
- Costs are involved with taking on-premises equipment offline, such as redeploying employees, writing off assets and data cleanup.
- Companies should consider taking advantage of discounts from cloud providers for customers that book capacity in advance for a fixed term, offering a savings over on-demand pricing.
Determining What's Best for Your Business Needs
An organization that is considering moving its workloads to the cloud should first undertake a needs assessment to help plan the migration as well as gain executive buy-in. After evaluating its current IT infrastructure, the IT team should engage in a discovery process. This should include holding workshops with stakeholders to ensure that everyone has identified the business requirements so the IT team can select the right cloud services and the right cloud providers.
The IT team should also begin a review process of the proposed services to determine if they match up to the organization's business requirements. They should also identify the areas where the business requirements don't match up with the proposed cloud services.
After determining the right cloud service and the right service provider, the IT team should present this information to the business leaders. They should explain the various options they're proposing as well as the reasons for those options along with the next steps.
Company leaders can then decide whether it makes for sense for the business to stay on-premises, move to the cloud or implement a hybrid cloud approach, a cloud computing environment that uses a mix of on-premises and cloud services.