Today I watched a German reaction video revolving around several unfortunate developments in the gaming industry.

Whilst a lot of absolutely valid points were made, one of them was “the server costs of twitch can’t be that relevant to their business”.

Now, I’m working in cloud infrastructure and I know, that live video streaming is one of the most expensive digital services you can offer.

So I did a bit of research and a few calculations. On my day off. Because I’m an Idiot.

TL;DR

According to my very simplified calculations Twitch spends about half of their revenue on providing their service. Either directly (traffic, power, housing, hardware) or indirectly as engineering cost.

Potential cloud cost (on AWS)

AWS is very transparent on what an average customer like you and me would theoretically pay for video streaming. They pin the cost of streaming one HD event to 10.000 viewers at around 1.500 USD per hour. For SD they claim a price of around 70 USD for 1000 viewers per hour.

So let’s break this down to per-viewer/month cost:

HD viewer (cloud)

So according to this numbers, a monthly concurrent HD viewer costs:

$ 1.500 * 24 hours * 30 days / 10.000 Users = 108 USD/User/Month

1500*24*30/1000

SD viewer (cloud)

And a monthly concurrent SD viewer:

$ 70 * 24 hours * 30 days / 1.000 Users = 50 USD/User/Month

Monthly cost (cloud)

Now, twitch isn’t an average customer like you and me. Twitch had 2.58 million average viewers in 2022 according to businessofapps.com.

So, if we assume, that the HD/SD split between those users is about 50/50, they would have a monthly AWS cloud bill of 203.820.000 (203 Million) USD or 2.445.840.000 (2.4 Billion) USD per year.

(50 USD + 108 USD) / 2 * 2.580.000 Users * 12 Month = 2.445.840.000 USD/Year

(50+108)/2*2580000*12

This is so dangerously close to their reported revenue of 2022 (2.8 Billion USD) that I wonder how they can keep the lights on and if their CEO is able to eat regularly.

Do they even cloud?

From what I can gather from basic DNS intel, Twitch is not in fact using AWS streaming services. It is very likely the other way around and Amazon aquired Twitch back in 2014 to also offer their customers the live streaming service at the prices stated above and still make a profit (retaining the ability to feed not only their CEO but also their shareholders).

DNS / Whois intel

At the time of this writing, if I’m point my browser to a random Twitch stream open the debugger and switch to the network-tab, I see one endpoint continuously receive application/octet-stream from a endpoint starting with video-edge-. Without further analysis, I assume this is the actual video stream just because of the type and size.

So I copy the host from the details/Headers tab and query it with dig and then whois the resulting IP

dig +short video-edge-<REDACTED>.<LOCATION>.abs.hls.ttvnw.net | xargs whois

According to the whois data for this net range, my personal HLS video-edge is housed by the Telecity group. AWS Shows in the abuse-chain but only after Twitch and the owning organisation is Twitch (not AWS or Amazon).

This is quite a good indicator that they own their network in a physical fashion and are in fact not using cloud services to deliver their streams.

Most of the static content however is delivered from static.twitchcdn.net, which is quite obviously hosted with AWS CloudFront CDN.

Bandwidth/Traffic cost

Unfortunately I do not have any reliable numbers on current bandwidth cost. This Cloudflare blog post claims the average price per Mbps is around 8 USD per month. These numbers are again for normal customers and they are from 2014, so back when Twitch was aquired by Amazon. What we know for sure from this more recent blog post from telegeography is that the prices dropped between 14 and 23 percent between 2016 and 2020.

So, to make this simple, lets assume the average of that price-drop ((14+23)/2 = 18.5) and take the blended Mbps/Month price that Cloudflare claimed for North America in 2014, which is 8 USD, so we get a price of 6,50 USD per Mbps per Month.

Again, we assume the 50/50 split of SD/HD users. SD clocks in at 791GB per hour for 1000 users and HD consumes 18.071GB for 10.000 users per hour (according to the numbers from the AWS cost page mentioned earlier)

SD bandwidth per user/month

791 GB * 8 (byte -> bit) * 1024 (giga -> mega) / 1.000 Users / (60 * 60) (hour -> second) ~ 1.8 Mbps/User/Month

791*8*1024/1000/3600

HD bandwidth per user/month

18.071 GB * 8 (byte -> bit) * 1024 (giga -> mega) / 10.000 Users / (60 * 60) (hour -> second) ~ 4.1 Mbps/User/Month

18071*8*1024/10000/3600

Average Bandwidth per user

(4.1 HD Bandwidth Mbps + 1.8 SD Bandwidth Mbps) / 2 = 2.95 Mbps/User/Month

(4.1+1.8)/2

Total Bandwidth per month

Again calculating against those 2.83 million average concurrent users, that would mean:

2.830.000 Average concurrent users * 2.95 Mbps = 8.348.500 Mbps Total/Month or ~ 8 Tbps Total/Month

2.95*2830000

8.348.500 Mbps/Month * 6.5 USD = 54.265.250 USD or 54.2 Million USD per Month

8348500*6.5

Bandwidth/Traffic Revenue share

54.2 Million USD as a monthly bill for traffic only meaning …

54.2 Million USD * 12 = 650 Million USD / Yearly traffic cost

54.2*12

Against their reported revenue for 2022 that means …

0.66 Billion USD Traffic cost * 100 percent / 2.8 billion revenue = 23 percent

approximately 23 % revenue share for traffic only.

Conclusion

I think I could show that Twitch spends around a quarter of their revenue directly on traffic even assuming this very idealized model, which does not account for the fact that Twitch now offers 4k streaming at 60 fps which will very likely clock in at eight times the projected HD traffic per user.

We also do not account for large streamers outside of the EU or North America, which will likely be more expensive to serve.

I’m also quite confident that Twitch does not get power, datacenters and engineers for free.

So even if they are highly efficient at all of those dimensions they will likely pay around 30 percent of the projected cloud cost, approximately 920 Million USD for datacenter housing, network equipment, servers and enough personell to make it happen globally. Meaning roughly half their revenue is being paid for what most companies that are not digital service providers would consider “hosting” or “servers”.