I recently hosted a live webinar on how to host an online concert with Zoom and MainStage. After the webinar, I wanted to make the recording available for people to watch in case they missed the live event. My initial thought was to upload the video to YouTube and call it a day. Eventually, I decided to upload it to Cloudflare Stream instead. In this post, I’ll go over the two platforms, and share why I decided to use Cloudflare Stream over YouTube.

Even though a lot of people compare Cloudflare Stream and YouTube, I don’t think they should necessarily be compared at all. Cloudflare Stream is arguably more of a whitelabel video infrastructure product, while YouTube’s solution is the farthest away from “whitelabel” as you can get. The two platforms are fundamentally different, so I don’t think they’re worth comparing at all.

With that out of the way, let’s talk about why you would want to use Cloudflare Stream over YouTube, or vice-versa. To answer this question, you have to understand two important things – the purpose of each platform and your goal.

What is YouTube?

In 2020, YouTube isn’t a simple video hosting service anymore. It’s a complex search engine and ad-matching platform that uses video as its primary delivery channel. On YouTube, your videos act as delivery trucks for Google to ship ads to eyeballs around the world – that’s why it’s “free”.

Even though thinking of YouTube in this manner feels dystopian, I don’t think it’s inherently negative if you are aware of how to take advantage of YouTube. Without getting into too many details, because this isn’t a “how to be a YouTuber” post, the privilege of appearing in YouTube search results is super valuable. Entire careers have been built off YouTube’s search engine. If your primary purpose for uploading videos is appearing in search results and monetizing via ads, then YouTube is definitely video hosting platform to choose.

What is Cloudflare Stream?

Philosophically speaking, Cloudflare Stream is the opposite of YouTube. Cloudflare Stream is actually a pure and simple video hosting platform. The economics of it are easy to grasp because Cloudflare Stream is a paid service. You pay Cloudflare, and they host your videos – $5/1,000 minutes of video in storage plus $1/1,000 minutes of video watched.

Cloudflare Stream's video upload interface. Nice and simple.

Cloudflare Stream's video upload interface. Nice and simple.

Compared to YouTube’s relatively bloated UX, Cloudflare Stream’s upload interface is refreshingly simple. However, it’s important to realize this is only the case because Cloudflare Stream is intended to be an infrastructure-level product, while YouTube is an actual mainstream consumer-oriented product. For example, Cloudflare Stream doesn’t give you an option to tag videos for public filtering. The idea here is that Cloudflare Stream provides the video hosting only, and your app or website should handle features for end-user interactivity.

What is Your Goal?

Now that we’ve discussed the differences between Youtube and Cloudflare Stream. For example, if your goal is for your video to be found directly in Google Search, YouTube is the best option. On the other hand, if your goal is to present an unbranded video experience for your paid course, then a solution like Cloudflare Stream is much better.

To make it even simpler, here are the questions and thoughts that went through my head before I decided to go with Cloudflare Stream for my webinar video.

  1. Since I primarily use YouTube for fully-produced videos that have been edited, do I want to upload this relatively raw webinar video to YouTube?
  2. The target audience of this video is “people who missed the webinar”. It’s not really a video I want to spend time promoting heavily, so I don’t think it’ll end up getting too many views. It’s probably better to use a solution that doesn’t display the view count because a low view count may result in negative biases and reflect poorly on my brand.
  3. I don’t want to monetize this video with ads, so is there any advantage to hosting it on YouTube?

In this case, the answers were…

  1. No.
  2. I don’t want a service that displays the video’s view count.
  3. No.

With the above in mind, I chose to go with Cloudflare Stream.

My Experience with Cloudflare Stream

Since there isn’t a lot of content about Cloudflare Stream on the Internet, I thought it would be good to share my initial experience with it. To enable Cloudflare Stream, all I had to do was click on the Stream icon in the Cloudflare dashboard. After that, I enabled the feature and my credit card was immediately charged for $5 – very simple.

Overall, I’m very happy with Cloudflare Stream and its streamlined set of features. The video settings menu has everything you need to display the video. In addition to a direct link, Cloudflare also provides the video embed code as well as customizable options for the unbranded player.

Video settings in Cloudflare Stream.

Video settings in Cloudflare Stream.

With the embed code, I was able to make a Hugo shortcode. Whenever I want to embed a video hosted on Cloudflare stream, I can just use a shortcode like this.

{{< cf_stream "70767342c8e0e267b9af678af5e7edd9" >}}

The only downside I experienced with Cloudflare Stream was the long upload and encoding speed. Since Cloudflare Stream prioritizes Cloudflare’s unused servers and bandwidth for uploading, encoding, and streaming, it’s possible that the slowness was due to Cloudflare’s server being far away – I’m not sure. I ran a few tests, and found that Cloudflare Stream’s upload and encoding time were ~25% slower than YouTube for the same video. Since my videos aren’t exactly time-sensitive, it’s not a huge issue for me.


At the end of the day, Cloudflare Stream and YouTube are completely different servives that shouldn’t be compared directly. In fact, YouTube could theoretically move their video hosting over to Cloudflare if they wanted to. If you’re looking to upload videos to build an audience and drive traffic to your site, YouTube would be a better option. If you’re looking for a simpler video-hosting service for your app, paid course, or quasi-public videos without YouTube’s community and discovery aspect, go with Cloudflare Stream.