A brief forage through the Internet reveals a few truths about people and what we love – today we’re going to focus on streaming services, specifically, what it takes when developing a streaming app. Streaming services for video like Netflix and Twitch and music streaming platforms like Spotify and Pandora are staples for people around the globe. Because some will seek to build their own platform, it’s important to understand what it takes to accomplish such an ambitious endeavor.
Though delivering video and audio content on-demand has become much easier in the past few years, it’s still wrought with challenges. As many recognize the staggering statistics for the amount of video consumed the world over, providing a unique service for on-demand video or music seems like a lucrative opportunity. Here, we’ll take a look at streaming service facts, using Netflix as an example, then discuss what’s involved in developing a streaming app.
Facts about popular streaming services in today’s market
Today, not having a streaming service subscription or two – or at least access to a friend or family member’s account – is a little… odd. It shouldn’t come as much of a surprise but video streaming services have usurped cable and satellite providers in recent years by quite a long shot.
Leading the way for streaming video services is YouTube followed by Netflix, Hulu, Amazone Prime, then Vimeo which shouldn’t come as much of a surprise. By looking at the number of users, this reveals a few facts that need to be understood before developing a streaming app.
Netflix is perhaps the best example because of its transparency with various figures. As of 2020, per the New York Times, “Netflix has 182.8 million subscribers, making it one of the world’s largest entertainment services.” If you look at the subscription costs and base estimates around their middle tier of service at $12.99, this means that the company should be grossing around $2.37 billion a month in revenue. A look at their financials shows that they made about $6.14 billion in Q2 of 2020 so our estimates aren’t far off.
Digging into Netflix financials
A look at the bottom line requires understanding what the platform needs to exist. Netflix is a video-on-demand service provider that hasn’t delved into live streaming like YouTube Live and other platforms that televise content as it happens. The technology is about the same but live video requires a stronger distribution of CDNs to ensure live streams are broadcast in real-time with as little latency as possible. As such, the main expenses for Netflix (not counting what they spend to finance the production of their original series) are its hosting costs in conjunction with data transfer and licensing.
Netflix uses a slew of different services from AWS for storing and ultimately delivering content on-demand. The video is a little dated as it’s from 2016 but it shows their heavy reliance on various AWS infrastructure, namely EC2 instances for storage, AWS Elastic Load Balancer for optimizing the usage of VMs that run media, and Amazon CloudFront as the CDN for data transfer or streaming over the web.
Because they’re so large, they use a special pricing structure where they pay based on “commitment” which factors in past usage and growth trends. It’s like a pay-as-you-go kind of pricing but structured to deal with “burstable billing” – during peak times, Netflix spools up additional virtual hosts to maximize delivery. This is how they’re able to capably deliver roughly 1 GB of data per hour, per customer for standard definition video and up to 3 GB per hour for HD video.
Main points to consider when developing a streaming app
Taking what we learned from Netflix, we can apply this to unique scenarios for developing a streaming app. Those in the market to deliver content over the Internet, whether video or audio, can expect to use similar architecture to accomplish the same feat.
1. The cost to build an app
This is a topic we’ve discussed in the past, covering the approximate pricing structures you would expect by either hiring programmers or going with an app development agency. A streaming service is a little different than most projects as the app itself is just a client that links with storage and cloud streaming services that run the video or audio.
Because information is encoded for delivery over a network then decoded at the endpoint (i.e. the app) this does require a little thought. Different compression techniques affect the amount of data transferred over a network as well as the quality of the output. This doesn’t change the development costs but it will affect the next point.
The majority of the work involved in developing a streaming app is cloud hosting, storage, and streaming costs. Te app part is actually quite thin as usually, you are best using out-of-the-box video players like JWPlayer to play the content.
2. The cost for cloud hosting and streaming
This is where 90% of your costs come into play.
A CDN like Amazon CloudFront is needed to capably deliver content to your customers around the world. This is the content delivery portion of AWS that acts as a turnkey solution for transferring data like video or audio streams across the network. This eliminates the need for the immense amount of provisioning and programming required when developing a streaming app from the ground up.
Looking at Amazon CloudFront, you’ll see that they offer three different tiers of service with varying baseline pricing for their standard tier which depends on how much data is being transferred and to what region in the world. Each GB of data transfer ranges anywhere between less than a cent to as much as $0.17 per GB. So if you’re in North America and delivering a two-hour-long HD video to a customer in the same region, you would pay around $0.54, at most.
Of course, these costs add up quickly – if this one stream goes out to 10,000 viewers, then you’re looking at $5400 a month to stream this one piece of content. Though most storage and CDN solutions are relatively turn-key, you’ll still want to have a savvy developer handle to minimize instances of duplication (among other issues) to ensure you’re sipping data and not gulping.
Too, pieces around the content need a place to live so again, we’ll use Amazon as an example since that’s our preferred architecture. In this blog, we covered everything from the approximate costs to maintain an app to how much you can expect to pay for VMs that run applications. Your EC2 machines are typically what would be used in this scenario as they would host the API that exchanges media metadata, among other information.
Because of how the content is distributed, you typically wouldn’t use an EC2 instance store the information (though you could) – instead, you would likely opt for a server-less bucket service, like Amazon S3, since video or audio are just files at the end of the day. If you’re planning on live streaming, you would likely use AWS Elemental MediaStore for your content.
3. Licensing costs
One of the more costly portions of streaming content is the cost to own the files and the right to deliver the content to your customers. Because every movie and song is different costs vary for Netflix just as they vary for songs played over Spotify.
Depending on the kind of media you plan on delivering, the amount of money spent on licensing will vary drastically. If you’re planning on building a streaming service with user-submitted content a la YouTube, then you probably won’t need to worry about licensing. Of course, in these instances, you’ll need to invest heavily in content moderation and management to beat back spam and other undesirables.
Unfortunately, there isn’t a “quick” method available to easily do so. In the example of streaming copyrighted video (think like a Marvel movie), businesses will have to use a service like MPLC to purchase licensing rights.
Blue Label Labs builds apps for business and pleasure
We understand the magnitude of what it takes to build ambitious apps to entertain your end-users. We are challenge seekers who build evolving products for your customers, allowing you to cultivate and sustain meaningful relationships. Get in touch if you would like to learn more about the intricacies that go into building a streaming service.
Get the latest from the Blue Label Labs’ blog in your inbox
More in Development
How to Setup SSH Tunneling to Access AWS EC2 and RDS Resources Using PuTTY
Accessing AWS resources, such as a Linux EC2 machine or a PostgreSQL…
App Marketing Tools That Can Help You Grow Your Business
The idea behind most software releases is to garner as many users…
How Pet Tech Can Follow in the Footsteps of Home IoT
Our pets bring substantial joy to our lives which is why we…