Discover how much Netflix's AWS bill costs and the efficiency monster behind it all, the Netflix AWS architecture.
If Netflix was a series, it would be a blockbuster. Each season would be nothing short of dramatic to the chagrin of investors.
Want to crunch some numbers?
The video streaming service had an $11.5 billion valuation in January 2011. It had about 26 million subscribers at the end of that year. Ten years later, Netflix reported it had about 204 million subscribers and a valuation of over $220 billion.
The Los Gatos, CA, giant made a staggering $25 billion in 2020 in annual revenue. Netflix also welcomed a startling 37 million paid subscribers in 2020 alone, a new record.
Yet, with all this success and a huge number of subscribers, you might be wondering what Netflix pays in its AWS costs. All of that activity is sure to account for some serious spend right?
Luckily for you, we have the answer! In this article, we'll cover how much Netflix spends on AWS, where that money goes, how they measure and monitor their cloud costs, and the architecture behind it all.
Table of Contents
Netflix made an operating income of $4.6 billion in 2020. But it had only $1.9 billion in positive free cash flow for that year. Yet, that was an enormous improvement because it had just come out of a prickly $3.3 billion negative free cash flow situation in 2019. It also had a colossal $15 billion debt at the start of 2021.
But the streaming service claims it is not a house of cards. It expects to break even in cash-flow terms by the end of 2021.
So you might wonder, where does Netflix spend its billions?
But there’s another investment category that doesn’t get as much attention, at least on Wall Street: Netflix AWS costs.
The Netflix AWS architecture is a genius microservices use-case worth digging into in this post.
Netflix’s cloud spend remained a secret for the longest time, until now. Various sources estimate Netflix AWS cost at $9.6 million per month in 2019.
But that figure is way less than what the video streaming service plans to spend in the next 36 months.
Netflix revealed it would spend over $1 billion on “streaming services and cloud computing costs” through 2023. That would average Netflix’s AWS cloud services costs at over $27.78 million per month.
It is no wonder Amazon boasts Netflix as its biggest AWS customer regularly, despite owning a competing service in Amazon Prime. In comparison, Airbnb plans to spend $1.2 billion on AWS web services before 2027, which averages out to $16.67 million per month.
Slack also uses AWS cloud services as its primary cloud provider. It has committed to spending $450 million through 2025. That will start with $75 million in 2021 and increase $5 million each year, averaging $6.25 million per month in AWS spend.
Netflix uses AWS for almost everything cloud computing. That includes online storage, recommendation engine, video transcoding, databases, and analytics. So most of the $1 billion Netflix plans to spend on cloud services will go to Amazon Cloud Services.
How much Netflix's AWS bill costs reflects its utilization of over 100,000 server instances, according to Amazon Web Services.
To process the colossal traffic, its global subscribers generate, Netflix uses over 1,000 Amazon Kinesis shards in parallel.
But that was in 2017 before Netflix grew to 204 million subscribers by the end of 2020.
It gets interesting, though:
What does that mean for Netflix?
First, while the company plans to spend less on content, marketing, and credit costs, its AWS bill will swing only upwards. Second, the company needs to earn higher net profits to not only appease shareholders but also be able to shun external financing for its day-to-day operations.
Alternatively, it needs to save costs to afford to stay competitive in an increasingly competitive market.
That is why balancing cost-effectiveness and scaling is a matter of success or failure for Netflix. Yet, the streaming company has said that setting budgets and other heavy guardrails to limit its engineers’ spending is both “ineffective” and “counter-cultural”.
So Netflix lets developers develop. But it does not ignore cloud compute costs.
The team at Netflix knows cloud costs deserve to be a first-class metric. That means they treat it like any other performance metric or non-functional engineering requirement.
To provide full cost visibility, the company deploys a custom data dashboard. The Efficiency Dashboard serves as a transparent feedback loop to its data consumers and producers. Netflix credits merging cost and usage context via dashboards for its cost-efficient architecture.
The custom dashboard helps provide usage and cloud cost awareness for each team.
Netflix manages to:
To appreciate how big of a deal that is, consider the amounts of data and different platforms Netflix needs to aggregate in one place, compute, and send to engineers so they can come up with working cloud cost optimization strategies.
Here is a quick breakdown.
The video streaming service generally uses two types of data platforms; data in motion and data at rest. While the first cost category involves processing transient data, data at rest systems involve physical data storage costs. Both costs include infrastructure spend.
Netflix data storage spend goes to platforms such as S3 Data Warehouse, AWS RDS, Hive, Druid, Elasticsearch, and Snowflake.
On the flip side, Netflix spends on Keystone, Flinch, Mantis, Kafka, Spark, and Presto to process data in motion.
Credit: Netflix efficiency dashboard data flow, Netflix Tech Blog
Now picture this.
Netflix gets its AWS billing data through the AWS Cost and Usage Report, like everyone else. You might know that the data can be tough to derive meaningful business insights from whether you consume it via S3 or CSV. It is even more challenging for decision-makers who are not data scientists.
That is where Netflix’s efficiency dashboard comes in. It relays costs across all its platforms, even breaking down data flow into sensible business insights.
From there, decision-makers can tell where their cloud spend is going.
Netflix’s custom dashboard provides some cost optimization recommendations, which you don’t get in your AWS billing report. While you can use tags to reveal billing items that relate, the technique might not show how various billable resources map to what matters to your business.
You would need a better cost visibility solution to associate specific costs to a particular team, product, service, or department. That way, you would determine how much it costs to build and run various elements of your business.
All without needing to employ teams of sophisticated data scientists and engineers at Netflix’s scale. What you can do like Netflix is provide relevant contexts to the people making technology decisions in near-real-time.
With real-time intelligence, you can put engineering in control of cloud costs. They can monitor and measure your unit metrics and COGS on AWS to grow your margins.
Here is an example.
CloudZero works with FruitLab, a social media and streaming platform for gamers. Like Netflix, FruitLab focussed on driving down the cost of delivering videos to their users to maximize their revenue.
Unlike Netflix, they didn’t have a team of engineers they can pull off their roadmap.
So they needed an AWS cost visibility solution that makes sense of the endless data logs standard on AWS billing reports. CloudZero helped FruitKLab to reduce their cost of delivering each stream by 18%.
CloudZero uses an ML-driven process to help build these context mappings even when you don’t have excellent tag coverage in your accounts — and can even apply tagging metadata to untaggable resources.
Netflix’s efficiency dashboard approach has helped it reduce data warehouse storage footprint by 10%. That is a significant margin considering the scale at which the Netflix microservices architecture works on AWS.
Netflix uses a microservices architecture on AWS. Microservices architecture helps an organization to scale without additional work. It also helps maintain a cost-effective operation in the cloud and eliminates a single source of failure even if engineers change multiple service areas in one go.
Netflix experienced a major outage in August 2008. That was back when it used monolithic architecture and private data centers.
The database corruption meant they could not sell DVDs for three days straight.
That incident woke Netflix to realize it needed to use a continuous deployment model and decoupled applications to avoid future outages.
They would prevent service delivery outages by using multiple, smaller services that ran independently instead of a single, vulnerable stack.
Using microservices would also help its engineers to improve the independent applications fast and at any time. Changes made to one microservice would not crush the entire operation.
Its engineers could experiment with fresh design ideas without affecting the entire Netflix service’s performance.
That agility helped the video streaming service innovate faster and cost-effectively, leading to Chaos engineering, Spinnaker, and Global cloud, as well as the unprecedented growth Netflix sees today.
Netflix uses over 1,000 microservices now.
Each deployed application controls a specific aspect of the colossal Netflix operation.
For example, a unique microservice controls each of these operations:
Those are just ten ways Netflix uses a microservices architecture to its advantage. There are over 990 ways more.
Netflix was also struggling with scaling issues on its previous architecture. It needed a solution that did not limit them to vertical scaling.
It wanted to scale horizontally, have reliable uptime, and keep cloud spend cost-effective. AWS provided that kind of cloud platform.
Using the AWS public cloud meant Netflix could focus on its core business; video streaming. It did not have to spend billions on building world-class data centers to scale its previous architecture.
With AWS, Netflix lets developers use continuous deployment best practices to improve customer experiences, becoming the largest video-streaming service ever.
That’s all well and good for Netflix, but what if you don’t have millions of dollars and entire teams you can dedicate to optimizing your cloud costs — let alone building out your own cost management tool?
Fortunately, you do not need to have a team of data scientists to improve your AWS cost visibility. You can use a cloud cost intelligence solution to dig into your AWS bill and understand what you are spending and why.
Drift used CloudZero to save $1.8 million in annual cloud costs. The conversational marketing platform worked with CloudZero as a tool rather than a team of engineers and data scientists, unlike Netflix. As a result, Drift has reduced its AWS costs by up to $150,000 per month with CloudZero.
Connecting the dots between your products and AWS costs can also help you stay in control of your AWS bill. CloudZero offers a real-time cost optimization platform that proactively informs you of changes so you can take timely action to optimize your AWS spend.
Talk to us today about delivering relevant cost data directly to your engineers so you can improve your cloud cost visibility in real-time and reduce your AWS bill over time.