Compute Pricing Comparison: AWS vs Azure vs Google Cloud

Shares

Compute Pricing Comparison: AWS vs Azure vs Google Cloud

AWS vs Azure vs Google Cloud

Comparing cloud compute or servers is a different story entirely. Because of the diverse deployment options and dissimilar features of different services, formulating relevant and fair comparisons is challenging. This article dives down into the details to show you which providers have the lowest-cost options for cloud compute instances and serverless computing under different circumstances.

The purpose of this post is to help users choose cost effective service for compute services i.e., instances and Serverless computing. The instances are the same, but still by understanding the intricacies of compute pricing, cloud architects can save a lot of money. Moreover knowledge of discounted pricing and reserve instance is beneficial in the long term budgeting of technology funds. In this blog, we’ve compared On Demand Hourly pricing and Discounted Annual pricing for similar instances from AWS, Azure and Google. Also, we’ve compared costs of Serverless computing for AWS, Azure and Google.

Compute Pricing

In comparing compute prices, it’s important to note where the compared instances are similar and where they are not. In our analysis, we chose four scenarios to compare instances of AWS, Azure and Google. All scenarios are based on the lowest price us-east region for each provider and using one of the standard, free Linux that are available at no extra charge.

Assumptions:

For each cloud provider, we then mapped the appropriate instance type for each scenario. You can quickly see that everything cannot be compared exactly “apples-to-apples”. To compare compute price effectively, we’ve chose similar instances having same no of vCPUs and RAM for AWS, Azure and Google. We kept 4 vCPU common for all three scenarios (Standard, HighMemory and HighCPU) except GPU instances. For each scenario we’ve selected instances with similar number of RAM to get the lowest pricing instance from AWS, Azure and Google. For example, In standard scenario, RAM for instances are 15 (AWS), 16 (Azure) and 15(Google). This case will the same for other three scenarios as well.

AWS vs Azure vs Google Cloud

For each of these three instance types, we looked at scenarios where a local SSD is required for better comparison because AWS has instances families with and without the local SSD while Azure always includes local SSD with all of its instance types, so as a result you are “paying for it” as part of the instance price whether you need it or not. Google Cloud never includes local SSD with the instance type, so you need to pay for it as an add-on cost. The minimum size for an add-on local SSD is 375 GB, which is quite large.

This comparison will help you to understand which instance has the lowest price for different requirements. We have done all the comparison work in terms of vCPU and memory(RAM) so that you can easily identify lowest pricing instance from main three cloud providers. Here are the scenarios:

Scenarios:

  1. Standard Instance with 4 vCPU and SSD
  2. High Memory 4 vCPU and  SSD
  3. HighCPU with 4 vCPU and SSD
  4. GPU with 16 vCPU and SSD

Region: US east (Northern virginia)

AWS vs Azure vs Google Cloud: On Demand Compute Pricing Comparison

For each of the four scenarios below, you can see the hourly on-demand (OD) price for each cloud.

AWS vs Azure vs Google Cloud

Summary:

  • In the chart above, red indicates the highest price of the cloud providers within a scenario while green represents the lowest price. Google Cloud has the lowest price for all 4 scenarios.
  • For Standard and HighCPU scenarios, AWS has the highest price.
  • For HighMemory and GPU, Azure has the highest price.

We have used Google Cloud Pricing Calculator to find out Google compute engine’s per hour pricing. To see AWS and Azure pricing click on AWS On- demand pricing and Azure Virtual Machines Pricing.

Now let’s compare Discounted annual pricing of AWS,Azure and Google for the same scenarios and instances.

AWS vs Azure vs Google Cloud: Discounted Compute Pricing Comparison

In comparing discounted prices, we looked at annual (instead of hourly) costs to give a better comparison. This is because all three cloud providers have different ways of offering a discount.

AWS vs Azure vs Google Cloud

 

AWS’s Discounted Compute Pricing:

AWS provides Reserved Instances with a significant discount (up to 75%) compared to On-Demand instance pricing.

Based on Annual Reserved instance pricing with No upfront, here we’ve got discounted pricing of above instances.

  • M3.xlarge: with 29% discount, price reduced from $2330.16 to $1664.4 per annum.
  • r3.xlarge: with 37% discount, price reduced from $2917.08 to $1830.84 per annum.
  • c3.xlarge: with 30% discount, price reduced from $1839.6 to $1278.96 per annum.
  • g3.4xlarge: with 32% discount, price reduced from $9986.4 to $6816.12 per annum.

Azure’s Discounted Compute Pricing:

The primary approach to getting discounts on Azure is your Microsoft Enterprise Agreement (EA). EAs offer discounts from 15-45 percent depending on the level of usage you commit to. We took 30 percent discount as the midpoint in above comparison.

Calculation:

To get yearly pricing with 30% discount, we’ve used below formula for above instances.
Instance’s hourly pricing*24(hours)*365(days)*0.7(30% discount) = Discounted annual pricing

Google Cloud’s Discounted Compute Pricing:

Google offers sustained use discounts which are automatic discounts that you get for running a VM instance for a significant portion of the billing month. For example, if you use a virtual machine for 50% of the month, you get an effective discount of 10%. If you use it for 75% of the month, you get an effective discount of 20%. If you use it for 100% of the month, you get an effective discount of 30%. Here we’ve considered 100% use of the month which provides 30% discount.

Calculation:

We’ve selected 1-year committed usage and 375 GB SSD for each instance in Google Cloud Pricing Calculator to get Annual Discounted Pricing.

Summary:

  • In the chart above, red indicates the highest price of the cloud providers within a scenario while green represents the lowest price.
  • Google Cloud has the lowest price for High Memory scenario.
  • For Standard and HighCPU scenarios, AWS has the highest price.
  • For HighMemory and GPU, Azure has the highest price whereas for Standard and HighCPU Azure has the lowest price.

Serverless Compute Pricing Comparison between AWS, Azure and Google Cloud

The name ‘Serverless Architecture’ misleadingly implies the server’s magical absence. In serverless computing, a third-party service provider takes responsibility for processes, operating systems and servers. Developers can now focus on just building great software. All they need to do is code. Resource consideration (deploy, configure, manage) is no longer their concern. The cloud service provider takes care of that. The less you are meant to manage the instance, the more serverless it is. Serverless goes well with certain functions. It is for companies to learn optimizing their use and integrate them into broader data systems.

AWS Lambda, Azure Functions and Google Cloud Functions are the services which provide serverless computing service. Cloud provider charges you for the compute power you use according to 100 millisecond increments. Developers can focus on their code and event triggers and AWS takes care of the rest.

With Consumption Plan hosting, these services completely abstracts away the server construct. You no longer pay for reserving CPU Cores and RAM of the underlying EC2 instance or Virtual Machine (VM). You only pay for the time your code runs, and not for the time it remains idle. Here we’ve calculated costs for serverless computing for AWS Lambda, Azure Functions and Google Cloud Functions.

If you allocated 512MB of memory to your function, executed it 3 million times in one month, and it ran for 1 second each time, your charges would be calculated as follows:

AWS Lambda Pricing

Let’s see how much AWS Lambda charges for given condition.

Monthly compute charges

The monthly compute price is $0.00001667 per GB-s and the free tier provides 400,000 GB-s.
Total compute (seconds) = 3M * (1s) = 3,000,000 seconds
Total compute (GB-s) = 3,000,000 * 512MB/1024 = 1,500,000 GB-s
Total compute – Free tier compute = Monthly billable compute GB- s
1,500,000 GB-s – 400,000 free tier GB-s = 1,100,000 GB-s

Monthly compute charges = 1,100,000 * $0.00001667 = $18.34

Monthly request charges

The monthly request price is $0.20 per 1 million requests and the free tier provides 1M requests per month.

Total requests – Free tier requests = Monthly billable requests
3M requests – 1M free tier requests = 2M Monthly billable requests
Monthly request charges = 2M * $0.2/M = $0.40

Total monthly charges
Total charges = Compute charges + Request charges = $18.34 + $0.40 = $18.74 per month

Azure Functions Pricing

For Azure Monthly Compute charges would be $17.6 as it’s compute price is $0.00001600.

Total monthly charges for Azure = Compute charges + Request charges = $17.6 + $0.40 = $18 per month.

Google Cloud Functions Pricing

Let’s see how much AWS Lambda charges for given condition.

Monthly compute charges

The monthly compute price is $0.0000025 per GB-s and the free tier provides 400,000 GB-s.
Monthly compute charges = 1,100,000 * $0.0000025 = $ 2.75

Monthly request charges

The monthly request price is $0.40 per 1 million requests and the free tier provides 2M requests per month.
Total requests – Free tier requests = Monthly billable requests
3M requests – 2M free tier requests = 1M Monthly billable requests
Monthly request charges = 1M * $0.4/M = $0.40

Total monthly charges

Total charges = Compute charges + Request charges = $ 2.75 + $0.40 = $ 3.15 per month

Summary:

  • AWS and Azure have almost same pricing due to same free tier offerings and additional pricings.
  • Google Cloud Functions comes out as the cheapest provider for serverless computing due to its very low compute price($0.0000025) compare to AWS and Azure.
  • AWS and Azure have almost 6 times higher pricing than Google.
  • Monthly request charges remain the same for all three providers because Google provides 2 million free requests but on the other hand it charges $0.40 per million request which makes its price similar to AWS and Azure.
  • Please note that, We have not included Amazon’s API Gateway price, which is $3.50 per million requests and is necessary if you want to have HTTP invocation of the function.

Conclusion

Comparing compute services is a challenging task. We’ve covered a lot of ground in this post including how to properly choose instances from different services, picking relevant benchmarks, some actual comparisons of services, estimating value, etc. The biggest take away I’d hope for is a better understanding about how to compare compute services accurately, and identify comparisons that are of questionable quality.

Jignesh Solanki

A thought leader, Jignesh leads Simform's Product Engineering team by DevOps Institutionalization, end-to-end product development and consulting led transformation programs.

5 Proven Cost Reduction Strategies for AWS EC2 Instances

There is no need of wasting your money on expensive instances if you don’t need them.

You have Successfully Subscribed!