Today’s post is presented by Stratosphere:
Stratosphere makes it easy to get the financial data you want and to develop beautiful out-of-the-box graphs for your research process. No more complex user interfaces, no more limited historical data. You will get access to:
- 10 years of historical financial data & customizable views
- Stock idea generation & snapshots
- Company-specific metrics
- Beautiful data visualizations
In the early days of the cloud IaaS (Infrastructure as a Service) market, customers ran workloads that consumed compute and storage resources with few constraints and little visibility into usage and costs.
As a result, many customers experienced bill shock. In response, the cloud companies introduced options such as i) reserved instances, ii) advancements in more powerful chip sets (read Graviton), and iii) more efficient storage.
The implication is that data platforms that position for the long-term budget opportunity can capture huge gains. At the same time, those who don’t strike the right balance will yield inferior returns with subdued investments.
In the 4Q21, Snowflake announced that hardware and software improvements would yield more efficient consumption of their data warehouse service resulting in a near-term headwind to revenue.
On one side, we saw service providers arguing the right approach to maximize long-term growth would be doing the contrary. Personally, we disagree.
We believe the companies are looking for products, such as analytics, data management, and monitoring services.
Since we believe the IT spending for companies will remain unchanged, penetration should increase better than expected. For companies such as Snowflake, if they genuinely own pricing power, this should result in better profitability.
It isn't clear who the winner is for cloud providers, such as AWS, GCP, and Azure. However, the discussion prevails that AWS or Azure should rank number one.
Again, we disagree. We believe each has its nuances, offering different solutions for customers. But, all in all, we believe both could co-exist.
So, in today’s post, we bring light to the discussion regarding public cloud service providers and the industry.
We explore the concepts behind IaaS and PaaS (Platform as a Service), moving to Azure’s architecture, limitations, and a brief comparison to AWS.
IaaS and PaaS are the most popular types of cloud service offerings. IaaS is on-demand access to cloud-hosted virtual and physical servers, networking, and storage, while the backend infrastructure tun the applications and workloads.
IaaS customers use the hardware via an internet connection and pay for that use on a subscription or pay-as-you-go basis.
Typically IaaS customers can choose between virtual machines (VMs) hosted on shared physical hardware (the cloud service provider manages virtualization) or bare metal servers on dedicated (unshared) physical hardware.
PaaS, or platform as a service, is on-demand access to a complete, ready-to-use, cloud-hosted platform for developing, running, maintaining, and managing applications.
There is a misunderstanding that services are exclusionary. However, IaaS and PaaS are not mutually exclusive. Most SMEs and enterprises use them both.
'As a service' refers to how IT assets are consumed in these offerings and the essential difference between cloud computing and traditional IT.
In traditional IT, an organization consumes IT assets by purchasing them, installing, managing, and maintaining them in its own on-premises data center – without mentioning the expenses related to the IT team.
In cloud computing, the cloud service provider owns, manages, and maintains the assets; the customer consumes them via an Internet connection and pays for them on a subscription or pay-as-you-go basis.
So the chief advantage of IaaS, PaaS, or any 'as a service' solution is economic: A customer can access and scale the IT capabilities for a predictable cost, without the expense and overhead of purchasing and maintaining everything on its own data center.
But there are additional advantages specific to each of these solutions. Before breaking it down, we illustrate in the image below which steps of the process are managed by the service provider:
The Right Customer
Even though the PaaS and IaaS solutions offer similar solutions, a few nuances make each the right choice for specific industries.
For instance, perhaps, the most obvious usage for IaaS is deploying a disaster recovery solution to the cloud provider, which is easier to manage and cheaper.
Also, IaaS is an excellent option for clients looking for event processing, such as IoT, AI, eCommerce operations, and many others that don’t require real-time data processing.
Service providers make it a lot easier to set up data storage and computing resources for these applications that work with a massive volume of data.
Finally, the flexibility of increasing capacity and scaling up during high demand periods without losing service level is a huge advantage.
On the other hand, with its built-in frameworks, PaaS makes it easier for teams to develop, run, manage and secure APIs for sharing data and functionality between applications.
For clients relying on real-time data processing, PaaS is the place to go since its solutions support cloud-native development technologies, such as Kubernetes, that enable developers to build once, then deploy and manage consistently.
Azure VM Architecture
As mentioned, Azure began as an IaaS company, then it added PaaS solutions, so it’s essential to understand why, in our opinion, start-ups and larger customers than require a real-time data-processing end up picking AWS instead.
The easiest way to do that is by going through Azure’s VM instances, which the company offers two services, the subscription (which Azure calls spot VMs) and the pay-as-you-use.
Azure lets you buy spare capacity at a lower price—up to 90% less than the pay-as-you-go market price. However, once Azure needs this excess capacity back, your spot instances will be terminated, with an advance warning of only 30 seconds.
Using this Azure pricing model for mission-critical and production workloads can be challenging.
Because of their unreliable nature, spot instances are typically used for stateless applications, batch processing, or development and testing scenarios, where it is acceptable to have an application instance fail.
It is possible to use spot instances on Azure for stateful and mission-critical applications, but this requires careful management and automated cloud optimization tools.
Spot instances are a very compelling pricing option on Azure. The obvious pro of spot instances is their low price, which may be discounted at 90% of pay-as-you-go rates.
Also, you could run a spot instance to improve reliability for a specific service, which is a considerable advantage, especially for enterprises.
For instance, if you own a complex eCommerce operation, you could run a couple of pay-as-you-go VMs to guarantee the baseline capacity and add a spot instance for helping in a peak capacity situation, such as during Black Fridays.
However, spot VMs have a few limitations. For instance, Spot VMs don’t provide availability guarantees, and after a VM is evicted, it’s not automatically turned back on, then capacity is available, limiting reliability.
If you read our previous topic about AWS, you’re probably connecting the dots on how Azure is inferior to AWS for PaaS.
Microsoft focused on creating powerful VMs, alongside storage services for its products, then the microservice functions in Azure, which led to several changes in the infrastructure.
So, even though Microsoft has all the technology, the scalability and the architecture of the AWS platform are excellent.
In our opinion, that’s why AWS is superior. Microsoft did it backward, presenting challenges around scalability and reliability.
We’re not saying that Azure is not a good solution. We’ve never heard it. However, it is a usual complaint with certain limitations and restrictions in the service, resulting in some trust issues for a few clients.
The complexity of implementing and running microservices on Azure is enormous. Except if you’re an enterprise, it’s hard for you to do so.
AWS, on the other hand, every start-up uses its service. So the answer is always easy to use, scalable, and reliable.
Distribution is Key
We believe that Microsoft distribution is one of its powerful, though underestimated, competitive advantages — or it was for many.
Even though most clients don’t realize it, there is a vast network effect in their products, and once you’re in, it’s almost impossible to get out.
Think that you’re a regular client, owning a complex SAP, looking at which cloud provider provides that exact specification for their SAP environment in terms of actual memory configuration.
That would be a good fit for them and at a reasonable price point. They'll take AWS over Azure or vice versa, depending on what they have on-premise and the workflow they’ll allocate on each.
We frequently heard that the cloud is about pricing, though I’ve never heard it from anyone who used it. Indeed, price is a huge factor, but it’s more complicated than pricing.
If you’re an enterprise and somehow end up moving to Office 365, I bet you’d migrate to Azure. They’ll offer a bunch of services nobody else could match because it’s Microsoft.
So, in 2020, many enterprises began migrating to the cloud, leaving their legacy data center. Since it could take years to migrate an entire operation, Azure has gained market share in the past years.
We gathered information with tech vendors. Since they all expressed the same opinion, we believe it may be how the market is configured.
Today, there are vendors focused on two different models: tech-first companies and those focused on enterprise IT.
In almost 90% of the competitive process, AWS wins tech-first clients, such as Twilio, Datadog, Twitch, ESPN, Netflix, etc.
On the other hand, Azure wins more than 50% of the dispute versus AWS and peers for having a considerable penetration of enterprise.
For us, it’s a consensus that AWS is the preferred solution for tech companies, while Azure is for enterprises. However, that doesn’t mean that one will thrive and the other will fall.
Also, as happened in the past couple of years, we believe that Azure and Amazon could boost their efficiency, pass through prices, and maintain high profitability on reinvested capital.
Even though we heard that would harm margins, several industries proved the benefits of sharing economies of scale with clients.
For instance, in 2021, Microsoft announced a useful life extension for its equipment, extending depreciation from 5 years to 6.7 years.
Even though that could be translated into a 13% gross margin gain for the specific year, we believe the company shared scale with clients, a practice we expect to continue in the following years.
Bag a pardon, my readers, for I’ll switch to the first person again. Since the idea is to present a few calculations, objective sentences and images should work better.
Fine, I told you the qualitative differences between AWS and Azure so far. However, I recognize it’s essential to explore the quantitative stance a little more.
That was challenging since Microsoft is stricter in presenting Azure’s operational figures, so I had to figure out how to solve a few puzzles.
First, figuring out gross margin is the easiest. You can estimate it by calculating the gross dollar, then the gross margin dollar contribution.
The second is the SG&A. I must confess I didn’t consider the SBC. It became too complex. Then I had the idea of comparing the number of employees.
It doesn’t work. I believe Azure requires much fewer engineers than AWS, and the sales effort could overlay with different segments.
I did the following: go back to 2014, when Azure was nothing, consider that SG&A as ground zero, and deflate the forward SG&A to see the growth in expenses in real terms.
Then, attribute Azure accordingly to its contribution to the gross dollar margin. Then, add back the CPI. Why deflating first, then adding back inflation?
Not deflating the SG&A, I may, unnecessarily punish Azure if Microsoft’s SG&A grows below inflation. Even though that only happened twice in the past eight years, I would be transferring SG&A from a different segment.
Then, voilà: operational margin.
Going forward, I see an SG&A as a percentage of revenue flat, with efficiency gain boosting margins.
However, you cannot compare this margin to AWS’s. This is because the capital need for each business is different, and depreciation is a factor that must be considered.
For instance, in 2020, AWS reported a substantial benefit from increasing useful life, which hit its earnings, and, in 2021, an increase in the useful life of its equipment from four to five years.
Personally, I believe they are overdepreciating their assets, suppressing o good chunk of profits. However, since they indicated an acceleration in AWS’ Capex, it will be hard to identify this in 2022, though we’re using 5.9 years in my cash flow.
Meanwhile, Microsoft is tougher. The company reported a five-year depreciation but recently reported a new “improvement”. I checked with people related to the industry and got a range between 6.2 and 6.7.
With those adjustments in the depreciation in mind, I set a 21% tax rate for both to maintain comparability. So then, this is what I got.
So, both companies present a ROIIC above 20%. That tells me that both are doing extraordinarily fine regardless of how much people yell that competition is increasing.
Let’s move on… We have a curious table ahead.
Even though I hate using tables, this one is interesting. I estimate the PP&E for Azure and AWS. AWS is helpful. There aren’t many personal inputs.
Azure is a problem. I applied a similar methodology to what I used for the SG&A to be consistent. The depreciation was tricky, though. I had to build a waterfall depreciation, considering changes in depreciation policy in 2021.
Yeah, when I finished Azure’s table, I instantly remembered AWS’. So I thought, “wow, that remembers AWS… wtf…”. Interesting, right?
Since AWS revenue is twice Azure’s, we may conclude that Azure’s business is more capital intensive than AWS’. So if both have similar operating margins, though Azure is more capital intensive, then AWS’ ROIC is superior.
The million-dollar question is, why? I’m not gonna lie; I haven’t found academic papers, experts, or comments in the transcript giving a hint.
However, I have a theory to share. I believe that PaaS is a business with higher barriers to entry, while IaaS is more capital intensive, considering storage and network investments.
This is a very logical theory, even though I can’t prove it because I don’t have the exact breakdown between IaaS and PaaS.
Finally, I was personally excited about writing this post. I had no idea what I would find, even though I knew it would be interesting. I hope to keep investigating and bringing more exciting content to my readers.
So, since Giro's Newsletter is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.