Video has become a popular channel for online entrepreneurs. With more and more online creators utilizing this medium, it was time for me to dive into video hosting and streaming from a website marketing perspective.
What I am interested in particular, is solutions for streaming content in your own websites where you own your content and your audience.

What Is Cloudflare Stream?

Cloudflare is best known for their CDN and DDoS attack protection service, and many websites already use their free and paid tiers. What is less known perhaps, is that Cloudflare operates a massive (if not the largest) network of internet infrastructure.

Launched back in 2017, Stream utilized Cloudflare's massive network infrastructure to bring to the market a super-fast streaming solution.
It's marketed as a streaming infrastructure solution (PaaS) for business clients and developers, rather than a video streaming service like YouTube or Vimeo.
As a developer you can use Cloudflare Stream's API to interface and build solutions on top of the platform, but also as a website owner you can use the Cloudflare dashboard (and there's even a Wordpress plugin) to upload your videos and then embed them to your website.

How Is Cloudflare Stream Better Than Youtube, Vimeo or Wistia?

Cloudflare stream is a no-fluff video streaming and hosting solution. There are no channels, likes, playlists or other social features. The Stream platform is all about uploading your video files to Cloudflare, and then streaming them with super-fast speeds either via a link, website embed or custom integration. I will explain how this works in a second.

How to Choose the Right Video Streaming Solution for Your Website


Cloudflare Stream: Hosting, Streaming & Pricing


Key points:
– Transparent pricing
– Pay per minute for video hosted and streamed
– Automatic video encoding to multiple sizes and quality levels*
– Adaptive bitrate streaming
– No extra costs for CDN, player etc.

*Videos that are automatically encoded to different sizes/ quality levels don't count as extra minutes of stored video, and you aren't billed for it. You only pay for the duration of the original video file uploads.

Cloudflare Stream comes with a single plan that covers 1,000 minutes of video storage for $5 per month. This is prepaid, and the rate adjusts accordingly with the minutes of uploaded video. For example, if you have 1,200 minutes of video you will be charged $6 per month.

Content delivery (streaming) costs extra (this is post-paid), and Cloudflare charges $1 per 1,000 minutes of video viewed each month. Basically you pay for what you use, and there are no extra costs or additional tools required e.g. video player, CDN etc.

This is particularly great for developers looking to integrate video streaming in their apps, because typical video streaming and cloud providers charge a lot for data egress (accessing data after the initial upload), and also they don't provide a player (you need to integrate your player of choice).

Cloudflare Stream vs YouTube, Vimeo and Wistia

Cloudflare Stream YouTube Vimeo Wistia
Social/ Channel Features No Yes Yes Yes
Pricing Single plan that scales with usage Free Free plan available Free plan available
Ads No Yes – intrussive Yes – less intrussive No
API Yes Yes Yes Yes

Using Stream on Your Website


How to Upload Your Videos

Using Cloudflare Stream to upload your videos and then stream them on your website is straightforward. Here's how to do it:

After signing up for the service and adding your payment details, you can start uploading your videos straight from the Stream's dashboard.

There are 3 options for uploading, you can either drag-and-drop them in the uploader, provide a link of the video (if it's uploaded to some other service e.g. YouTube this should come handy), or use the API to create a custom upload integration.

Cloudflare Stream Quick Upload Menu
Cloudflare Stream Link Upload Menu
Cloudflare Stream API Upload Menu

How to Stream Your Videos

Embedding a video on your website is also very easy. Once you have finished uploading just click on the video you want to embed and you will be greeted with the player menu.

Cloudflare Stream Player Menu

There are several options to configure the player (controls on or off, autoplay, preload etc.) and you can copy-paste the embed code directly to your website's HTML. Through the player menu you can also access some basic analytics, such as the number of views and the total view duration for your video.

How to Use Cloudflare Stream With Wordpress

If you're using Wordpress, Cloudflare has created a plugin that allows you to embed your videos directly from your dashboard. This is a nice addition for some users, as it completely removes the need to copy-paste the embed code. Instead, the plugin will promt you to choose a video from your library, and create a video block for your page.

How to Use Cloudflare Stream With Ghost

I think Ghost and Cloudflare Stream make a very interesting combination. To embed an uploaded video on Ghost you only need to create an HTML block in the editor and copy-paste the video embed code from Cloudflare.

But if you combine this with the membership functionality of Ghost 3.0 you can easily create something like Skillshare where you can share your knowledge via video tutorials for your paid subscribers.

The diferrence is that you control your audience, content and distribution.

Getting Analytics From Your Cloudflare Stream Videos

Getting analytics for your videos can be tricky because Cloudflare Stream doesn't come with a native analytics reporting tool. As I mentioned before, you can see the number of views and total viewed duration of your videos from Stream's dashboard, but this is anemic to say the least.

Cloudflare Analytics for Wordpress Users

For Wordpress users a I recommend using the Video Analytics for Cloudflare Stream plugin. In a nutshell, it will give you the number of views, average view time and average view percentage.

The difference between the free and the paid versions is the reporting window (just 30 days in the free plan). Moreover, the paid plans allow you to upload and delete videos directly through the plugin. This is nice because someone who is using this and Cloudflare's plugin, can now do everythign (upload and embed videos) directly through Wordpress.

Cloudflare Analytics for Non-Wordpress Users

For non Wordpress users (such as myself) I haven't found a great analytics reporting solution yet, but since Cloudflare Stream comes with an API there is a lot of potential for a custom reporting dashboard.