article
Bunny Stream: video hosting for Webflow, Framer, WordPress and vibe coding
I use Bunny Stream for video on client websites. Here's what it does, what it actually costs and how to set it up in Webflow, Framer, WordPress, Shopify or a site built with Lovable and other vibe coding tools.
Content
Quick Summary (TL;DR)
Bunny Stream is video hosting from the European company Bunny.net: it encodes videos into multiple resolutions, streams them over HLS at a quality matched to the connection and gives you a player without third-party branding. It's pay-as-you-go: storage from $0.01 per GB, delivery from $0.005 per GB, free encoding and player, a $1 monthly minimum and a 14-day free trial. A typical business site usually pays just the minimum, while Vimeo charges a monthly plan and YouTube adds its logo and recommended videos to your site. Bunny Stream works anywhere you can paste HTML: Webflow via Code Embed, Framer via the Embed component, WordPress via a Custom HTML block, Shopify via Custom Liquid, and Lovable, Bolt or v0 with a precise brief. It handles background video through direct MP4 files. The only thing it can't replace is the reach YouTube gives you.
For video on client websites I use Bunny Stream. It's fast, carries no third-party logo, has no monthly plan, and works on any platform that lets you paste a bit of HTML: Webflow, Framer, WordPress, Shopify, Wix, and sites built with Lovable, Bolt or v0. This article covers what Bunny Stream does, what it actually costs and how to set it up on your platform.
What is Bunny Stream
Bunny Stream is the video hosting service of Bunny.net, a European company based in Slovenia. It automatically encodes every upload into several resolutions up to 4K and plays it over HLS: the player keeps choosing the quality that fits the connection, so playback starts fast even on mobile data. Bunny CDN delivers it from the server closest to the visitor.
It isn't a social network like YouTube. It's infrastructure for websites and apps that want to keep their videos under their own control.
What Bunny Stream does
- Automatic encoding into multiple resolutions, with no encoding fees.
- HLS streaming at a quality matched to the visitor's connection.
- An unbranded player with your colour, thumbnail, captions and chapters.
- Direct MP4 files (MP4 Fallback) for background video or a custom player.
- Video protection with allowed domains and token-signed URLs.
- API, webhooks and resumable uploads (TUS) for apps where users upload video.
- Analytics for plays and watch time on every video.
Bunny Stream vs Vimeo, YouTube and Wistia
- YouTube is free and brings reach, but on your site it shows its logo and recommended videos and loads Google scripts. The
rel=0parameter doesn't switch recommendations off, it only limits them to your channel. - Vimeo has a clean, ad-free player, but you pay a monthly plan no matter how often your videos play.
- Wistia excels at marketing analytics, but its pricing targets marketing teams.
- Bunny Stream is pay-as-you-go, the player carries your look, and adaptive streaming keeps videos fast. It won't bring you reach, though, as it has no audience of its own.
How much Bunny Stream costs
- Storage from $0.01 per GB per month in each region.
- Video delivery from $0.005 per GB, depending on the network tier.
- Encoding and the player are free.
- Minimum charge is $1 per month, and the first 14 days are a free trial without a credit card.
An example: 10 videos of 3 minutes each in 1080p take roughly 2 to 3 GB including all resolutions. With 1,000 plays a month you transfer a few dozen GB, so the bill comes in under a dollar and you pay the $1 minimum. Costs only grow with genuinely high viewership. Current prices are in the Bunny Stream pricing.
Getting started: a library and your first video
- Create an account on Bunny.net. The first 14 days are free, no card needed.
- Create a Stream library (Stream → Add Video Library). For a European audience, put storage in Europe, Frankfurt for example. A typical website needs one region; each extra one adds to the storage cost.
- Upload a video by drag and drop, via the API or from a URL. Encoding into all resolutions takes a few minutes.
- Set up the player in the library: brand colour, controls, language and captions.
- Add your allowed domains in the library's security settings so your videos can't be embedded on other sites.
An embed code that works everywhere
On every platform you paste the same bit of HTML. I recommend the responsive version with speed-friendly parameters:
<div style="position:relative;padding-top:56.25%;">
<iframe src="https://iframe.mediadelivery.net/embed/LIBRARY_ID/VIDEO_ID?autoplay=false&preload=false&responsive=true"
loading="lazy"
style="border:0;position:absolute;top:0;left:0;width:100%;height:100%;"
allow="accelerometer;gyroscope;autoplay;encrypted-media;picture-in-picture;"
allowfullscreen></iframe>
</div>You'll find LIBRARY_ID and VIDEO_ID in the video detail. padding-top:56.25% keeps the 16:9 aspect ratio; for vertical video use 177.78%. The preload=false parameter means the video downloads only after someone presses play, and loading="lazy" delays the player until the visitor scrolls near it.
Bunny Stream on different platforms
Webflow
Paste the embed into a Code Embed element. In the CMS, store only the video ID in a text field and bind it into the embed with Add Field. The full walkthrough, including background video and the CMS, is in How to host videos in Webflow.
Framer
Drag an Embed component onto the canvas, switch it to HTML and paste the embed code above. For background video, turn on MP4 Fallback in Bunny and use the MP4 file URL as the video source instead of an uploaded file. Framer then doesn't carry the video inside your project and the page stays light.
WordPress
Paste the embed code into a Custom HTML block in the Gutenberg editor. Bunny.net also has an official WordPress plugin, but for video you don't need any extra plugin at all, which on WordPress is an advantage in itself.
Shopify
In the theme editor, add a Custom Liquid section and paste the embed code into it. It works well for product videos, which otherwise weigh down Shopify product pages.
Wix and Squarespace
In Wix use the Embed HTML element, in Squarespace the Code block. Both display the embedded iframe as is.
Lovable, Bolt, v0 and other vibe coding tools
AI tools handle embedded video well when you give them a precise brief. Something like this works:
Add a video section to the homepage. Use the Bunny Stream iframe https://iframe.mediadelivery.net/embed/LIBRARY_ID/VIDEO_ID?autoplay=false&preload=false&responsive=true with loading="lazy" in a responsive 16:9 wrapper. Don't add any other player or library.
Watch out for one thing: your Bunny API key never belongs in code that runs in the browser. If your app's users upload videos, have the AI create a server function that creates the video through the API and returns only a TUS upload signature to the browser. The key stays on the server.
Astro, Next.js and custom code
In your own code you can use the iframe, or build your own player on top of HLS (playlist.m3u8) with the hls.js library. Apps also benefit from webhooks that tell you when a video has finished encoding. How to use Bunny.net for whole applications is covered in Bunny.net for apps.
Background video with Bunny Stream
Don't use the iframe for a hero video or a loop. Turn on MP4 Fallback in the library settings and Bunny will create direct MP4 files for every video. Then a plain HTML tag is all you need:
<video autoplay muted loop playsinline preload="metadata"
poster="https://vz-XXXX.b-cdn.net/VIDEO_ID/thumbnail.jpg">
<source src="https://vz-XXXX.b-cdn.net/VIDEO_ID/play_720p.mp4" type="video/mp4">
</video>You'll find the vz-….b-cdn.net address in the library as the CDN hostname. The muted and playsinline attributes are required, otherwise mobile browsers block autoplay.
When not to use Bunny Stream
If you want people to find you through YouTube search, Bunny won't replace it. It makes sense to do both: the video on YouTube for the audience, and a Bunny player on your site for speed and a clean look.
For everything else, from a homepage showreel and product videos to client testimonials, courses or user-uploaded video in an app, Bunny Stream is the best option I've tried so far.
What is Bunny Stream?
Bunny Stream is a video hosting service from the European company Bunny.net. It encodes videos into multiple resolutions, streams them over HLS at a quality matched to the connection and delivers them through its own CDN. The player has no third-party branding and you pay for usage, with no monthly plan.
How much does Bunny Stream cost?
Storage starts at $0.01 per GB per month and delivery at $0.005 per GB; encoding and the player are free. The minimum charge is $1 per month. A typical business site with a dozen videos usually pays just that minimum.
Is Bunny Stream free?
The first 14 days are a free trial with no credit card. After that you pay for usage, with a $1 monthly minimum.
Is Bunny Stream better than Vimeo?
For video on a website, usually yes: the player has no third-party branding, streaming is adaptive and you pay for actual usage instead of a monthly plan. Vimeo makes sense if you want its community, team tools or live streaming.
What is the difference between Bunny Stream and Bunny CDN?
Bunny CDN is a network of servers that delivers any files quickly. Bunny Stream is video hosting built on top of it, with encoding, HLS streaming, a player, analytics and video protection. The CDN is already included in Stream.
Does Bunny Stream work in Framer?
Yes. Paste the Bunny embed code into an Embed component set to HTML. For background video, turn on MP4 Fallback in Bunny and use the MP4 file URL as the video source.
Can I use Bunny Stream with Lovable, Bolt or v0?
Yes. Give the AI tool the exact Bunny embed code and ask for lazy loading. If users upload videos, your Bunny API key must stay on the server and the browser only receives an upload signature.
Is Bunny Stream a good fit for GDPR and European websites?
Bunny.net is a European company based in Slovenia, and you can keep video storage in European regions only. The player carries no advertising tracking like YouTube. Still, check the data processing agreement and your cookie setup for your own site.
Planning a new website or redesign in Webflow?
Write to me briefly,
STATUS:OPEN FOR PROJECTS· REPLY WITHIN 2 DAYS· NO COMMITMENT
