There are tons of options, and which you choose depends on the type of video and the form of integration you want.
Type of video;
- Video file. Serving your videos as whole MP4 files is perfect for shorter videos that you're using for background videos or marketing videos.
- Video stream. Larger videos benefit from streaming, so that the video can load faster, and seek faster if the user moves the playback position. However this involves a streaming server and special video preparation.
Form of integration;
- Webflow Video element. Webflow's video element uses Embedly, so any service that is registered as an Embedly provider will be recognized, and you can simply drop in the URL needed.
- HTML. For pretty much all video types there is also an HTML embed option, where you paste in the
<video>
player code,<iframe>
, or script to play it.
Each service has other options as well, like player branding, autoplay configurations, etc. so research your options. They also vary in how friendly they are to non-technical people, so it's important to consider whether your client will be uploading their own videos later.
Video File Hosting Options
For 99% of background vids, loops, and other shorter vids, I use the file hosting approach. It's simpler, and offers more free options, and unlimited bandwidth options.
Note there may be a slight delay since the browser generally downloads the entire MP4 before playing it, but it these files won't be too large, and can be optimized.
Use Handbrake (free) to optimize your video files.
Cloudflare R2
Cloudflare R2 object storage, part of Cloudflare's infrastructure, unlimited bandwidth. It's free for limited use, and very efficient for file delivery as it uses Cloudflare's edge network.
Other Professional Hosting Options
Amazon S3 is also good but much more complex to setup, and generally not free. Bunny.net is great also.
Other
Not recommended for any professional projects- but some like to use Dropbox or Google Drive for hosting smaller videos. The problem is that these are not CDNs and latency is often high which means a delay before the video starts playing.
Video Stream Hosting Options
Vidzflow
Designed specifically for Webflow.
If I want a nice UX for users to add their own videos, Vidsflow is hands down the best option.
Supports its own custom player design and also supports Embedly directly, so you can paste Vidzflow URLs directly into Webflow's Video player.
Offers a free plan to trial the product, and supports In-Video CTAs, Lead capture, analytics, and more.
Vimeo Pro Plan
A longtime favorite of Webflow designers, Vimeo pro generates multiple resolutions of your video, and then allows you you access the stream directly so that you can embed it in your website.
This gives you a huge amount of control on your video stream selection itself, with slightly more technical knowledge requirements and player setup.
Bunnystream
Bunnystream, low cost and designed specifically for streaming video.
Bunnystream URLs are also Embedly compatible and can be used directly in Webflow's Video element!
https://www.reddit.com/r/webflow/comments/1k0m488/comment/mngoe9m/?context=3
Others ( paid )
Wistia
Powerful for statistics and playback control. You have the ability to place "gates" like forms and paywalls mid-stream so that users must complete an action before continuing.
Very useful for marketing, and for education.
Others ( free )
I'm separating these because these Video hosting options are not considered professional-grade CDNs, and often use heavily-branded players with ads.
YouTube
YouTube is good if you want the video to be public ( for added social marketing ) and if you want free video hosting. You can also make the video hidden.
Downside is, no player styling and it generally wants to show "related videos" at the end.
Vimeo Free plan
Vimeo is preferred by many for its higher-quality playback.