Gone those days when a startup had to have its own physical servers set up which was slow and very expensive. Nowadays, anyone can start a new server in minutes and offer services over the internet. These changes happened when Amazon announced AWS – a public cloud. Many companies did not see the huge potential of providing Infrastructure as a Service and then Platform as a Service products and now they are trying to catch up with Amazon.
In this post I will review 3 options and answer which cloud provider is best for startups: Amazon AWS, Microsoft Azure or Google Cloud? If your startup is referred to a startup program which grants over $15,000 then go with the provider offering. If you have to integrate with Microsoft products, then Azure is your best option. If the startup is in Big Data or Machine Learning space or you need cheapest VMs then Google Cloud is a way to go. For most other cases AWS is still the best option.
Why These Three?
According to the latest Gartner (May 2018) report only AWS, Azure and Google are the only providers considered to be leaders in Cloud Infrastructure services. Interesting enough that June 2017 Google was not among leaders yet.
Gartner has changed evaluation criteria and as a result providers like Rackspace and CenturyLink were dropped from the list. Alibaba, IBM, and Oracle are trying hard to challenge big three, but currently, they considered to be niche players.
When comparing cloud providers, I will consider the following factors:
- Startup offers
- Free tiers
- Feature comparison
- Other considerations
For a long time, banks target students and offer debit and credit cards with multiple features because they understand that those students tend to stay with the same bank once they grow and make more money.
Cloud providers understand that if they target startups specifically once startups graduate and become big they most likely stay with the provider of choice and bring significant revenue in the future. That’s why each provider has specific plans for startups which we will review further.
Amazon has 2 offerings: self-starter package and portfolio packages. Self-starter package is basically the initial free tier they offer to everyone for 1 year plus some web-based training.
Portfolio packages offered as part of AWS Activate for Startups program are more generous: they offer either $15,000 AWS Promotional Credits for 1 or 2 years or $100,000 for 1 year.
In order to qualify to apply to those packages, the startup must be in selected accelerator/incubator or be related to specific VC funds or coworking spaces. Check this link to see if the organization your startup associated with participates in Activate Program.
For a long time, Microsoft had a special program for startups: BizSpark. It was a pretty good deal: any startup would get $150 per month Azure credits for 3 years and free software like Windows and Office.
BizSpark Plus for qualified startups was even a better program – they offered up to 120K credits for Azure services. In 2018 Microsoft discontinued BizSpark and revamped it as Microsoft for startups.
The standard level of the program is no better than the one offered by AWS – Microsoft now gives $200 in credits for 30 days and the regular free tier services for 1 year. Premium offer for qualified startups still offers from $25K in the first year and up to $120K in the second year.
So essentially new program is less good for startups as old BizSpark in terms of free software. The advantage of the new program is that Microsoft is now promising to provide sales and marketing resources to help you with selling your product.
On the surface, Google offers best packages overall for new startups. They have 3 options which give $3K, $20K and $100K credits for 1 year in Start, Spark and Surge packages correspondingly.
One could assume that $3K is granted for any startup. Unfortunately, there is virtually no information publicly available how Google determine the amount of free credits. All you can do is to apply and see.
All three providers offer around $100K (Microsoft $120K) for best startups thru referrals from accelerators and incubators. If you happened to be in one of those incubators and lucky enough to get the best deal from any provider, then your choice is obvious: go with the one that offers more. For the rest of us, keep reading.
Amazon offers 33 products for free for 12 months and 13 services always free. There are limits however for free services. For instance, AWS allows no more than 750 hours per month for t2.micro EC2 instances (virtual machines), i.e. 1 VM per month.
Microsoft offers 8 products for free for 12 months and 25 services always free. Free limits are similar to the ones offered by AWS: Microsoft allows no more than 750 hours per month for Azure B1S General Purpose Virtual Machine. In addition, Microsoft gives you $200 credit but it’s good only for the first 30 days.
Google Cloud offers $300 credit for 12 months to use on any service and always free services. If you are not using service over the free limit you don’t have to pay after 12 months – they always free.
For instance, one f1-micro VM instance per month is always free if it’s in a qualified US region. Compared to AWS and Azure it’s a marginally better deal. Marginally because free limits in Google cloud are still pretty low.
Free tiers are only worth to use them to explore the services by cloud providers before you fully commit. You can’t build anything valuable on by using free tier.
There are hundreds of products available in the cloud. But one product that everyone uses is virtual machines. So I compared the monthly cost of comparable VMs in AWS, Azure and Google Cloud.
One advantage of Google cloud is it offers sustained use discounts. According to Google “when an instance uses a vCPU or a GB of memory for more than 25% of a month, Compute Engine automatically gives you a discount for every incremental second that you continue to use those resources”.
With sustained use discount you can save up to 30% on the cost of VM and this makes Google by far the best cheapest solution.
Here is a table of on-demand VM costs with paid Windows and free Linux operating systems.
Same table with the usage of reserved/committed instances. I assume that instances were reserved for 3 years.
Google is the cheapest provider when it comes to computing power both in on-demand and reserved instances.
The popularity of the cloud vendor is not the last factor when it comes to making a decision. I performed simple nonscientific research in order to define the popularity of the big three.
I searched courses on AWS, Azure, and GCP in Udemy. The results came as expected. There were 806 courses on AWS, 258 on Azure and only 55 on Google Cloud.
In my opinion, it means that:
- More people are learning AWS than other services
- More people know AWS than other services and they offer courses
And all the above means that it is most likely 12 times easier to find an AWS devops than GCP one.
Only 5-6 years ago feature comparison would make sense when comparing cloud providers. Fortunately, Microsoft and Google were adding services in record speed and nowadays all providers very close in features they provide.
Both Microsoft and Google provided white papers where they claimed that they have the same number (or even more) of services as AWS.
You can find those links: