How to Sell Access to Live Streams on Your Website
By the WpStream Editorial Team
Last updated: June 26, 2026
Platforms that host paid streams take a cut of every ticket you sell. Your own WordPress site does not. To sell videos online and charge for a live stream from your own site, you need three things: WooCommerce (free) for the product and checkout, WpStream (paid Lite plan at $24/mo) for the stream and the access gate, and Stripe or PayPal to take the money. The mechanism is simple: when someone lands on a pay-per-view channel page, WpStream requires payment before the player unlocks, checking that the viewer is logged in and holds a completed WooCommerce order. You can charge two ways, pay-per-view live streaming (one charge per event) or subscription (recurring billing, which adds the WooCommerce Subscriptions extension at around $200+/yr). One fact to bank now: recording must be switched on in channel settings before you go live, because there is no way to recover it afterward. For the wider monetization picture, see our guide on how to get paid for live streaming.
Disclosure: this article is published by the team behind WpStream. The steps and examples reference WpStream because it is the tool being explained.
What you need before you start selling videos online
Owning the checkout means owning the money and the customer list, instead of handing a platform a cut of both. The tradeoff is that you assemble the pieces yourself. Here is the shopping list.
You need a WordPress site on any reputable host running PHP 8.0 or newer (any decent shared or managed plan handles this). Then three plugins do the work.
WooCommerce is free to download from WordPress.org and handles the product listing, checkout, and order management. This is the commerce layer.
WpStream is free to install from WordPress.org, but selling access requires a plan. WpStream Lite at $24/mo (or a $36 one-time license) is the entry point. Lite adds pay-per-view, recording, 5 channels, 200 concurrent viewers, and 100 broadcasting hours (500 viewer hours).
A payment gateway. Stripe is the primary pick: the WooCommerce Stripe plugin is free, there is no monthly fee, and the US standard rate is 2.9% + $0.30 per successful card transaction (see Stripe’s pricing page; rates differ by country). PayPal works too, but you only need one.
One optional piece applies only if you want recurring billing: the WooCommerce Subscriptions extension, around $200+/yr (it showed €242 on woocommerce.com in June 2026; confirm the figure for your region). Skip it if you are running pay-per-view. Still weighing recurring versus one-off billing? Our explainer on the SVOD, AVOD, and TVOD models lays out the difference.
Which model fits your content, PPV or subscription?
Before you touch a setting, pick a model. The choice changes what you install and what it costs to run. There is no universally right answer, so decide from the table below.
| Pay-per-view | Subscription | |
|---|---|---|
| Best for | Single events, concerts, one-off classes | Weekly shows, coaching series, regular broadcasts |
| WooCommerce cost | Free | Around $200+/yr (WooCommerce Subscriptions) |
| WpStream requirement | Lite $24/mo or $36 one-time | Lite $24/mo minimum |
| Revenue pattern | Per event | Recurring |
Pay-per-view has a lower setup cost and no recurring extension fee, which makes it the default for infrequent or high-value events. Subscription billing builds predictable monthly income, but it requires the WooCommerce Subscriptions extension and more configuration. If you mostly run pay-per-view events, our full pay-per-view setup guide goes deeper than this section can.
How to set up a pay-per-view live channel, step by step
Pay-per-view live streaming is where most people start. Follow the seven steps in order to go from an empty WordPress site to a tested checkout that unlocks a live player.
- Install and activate WooCommerce. From the WordPress admin, go to Plugins, then Add New, search for WooCommerce, install, and activate. The setup wizard runs on first activation; walk through it to set your store currency and basics.
- Connect your payment gateway. Go to WooCommerce, then Settings, then Payments, find Stripe, and click Manage. Install the free WooCommerce Stripe plugin if it is not already there, then connect using the API keys from your Stripe dashboard (WooCommerce documents the full flow in its Stripe extension guide). Leave Stripe in test mode for now; you will switch it live after the dry run in step 7.
- Create the pay-per-view channel in WpStream. In the WordPress admin, go to WpStream, then Products, then Add New Pay-Per-View Channel. Add a title, a description, and a featured image, because this page becomes your public event listing. Under Product Data, confirm the type is set to Live Channel, set your price, and publish. That product page is now your checkout: a completed order on it is what unlocks the player.
- Get your stream key. On the channel page, click Broadcast to Channel, then Broadcast with 3rd Party Software. WpStream shows a Server URL and a Stream Key. Copy both. A stream key is generally good for the life of a channel, but it can reset after a major plugin update, so re-check it after you update either plugin.
- Configure OBS. Open OBS, go to Settings, then Stream. Set Service to Custom, paste the Server URL into the Server field and the Stream Key into the Stream Key field, then Apply and close.
- Enable recording before you go live. This is the step people skip and regret. In WpStream, open the channel’s Settings and switch on Record Live Stream (WpStream’s recording documentation walks through it). You have to do this before you turn the channel on. If you forget, there is no way to recover the recording after the stream ends, because nothing was ever captured. Treat it as the first item on your event-day checklist.
- Test the full purchase flow in Stripe test mode. Use Stripe’s test card numbers to run a real end-to-end order: add the channel product to the cart, check out with a test card, log in as that buyer, and confirm the player unlocks. This catches access-check failures while they cost you nothing instead of on event day. Only after a clean test do you switch Stripe to live mode.
On event day you turn the channel on, start the OBS stream, and buyers who completed checkout see the player unlock.
Setting up subscription access
Subscriptions reuse most of what you already know; the difference is the product type and one extra paid extension.
First, the prerequisite: WooCommerce Subscriptions must be installed and active (around $200+/yr, varies by region; confirm at woocommerce.com). Without it, WooCommerce cannot bill on a recurring schedule.
To create the product, go to WooCommerce, then Products, then Add New. Under Product Data, select Simple Subscription. Set the billing amount and frequency (daily, weekly, monthly, or yearly), plus an optional sign-up fee or free trial. Then set “Is subscription based live channel” to yes, which tells WpStream to grant channel access to active subscribers.
Then decide how broad the access is. WpStream’s Global Subscription Mode, enabled in settings, makes one subscription unlock all of your live and video content at once. WpStream describes it in its subscription options documentation as similar to Netflix: buy one subscription, watch everything. Leave it off and subscribers only reach the channels attached to their subscription product. Pick based on whether you sell one all-access pass or several separate tiers.
But be honest about the math: WooCommerce Subscriptions adds roughly $200+/yr to your operating cost. For a creator with modest subscriber revenue, that can be the largest line in the budget, which is why pay-per-view is the cheaper start.
After the stream ends: recordings and replay access
The stream ending is not the end of the revenue. A recorded event can sell again as a replay, and almost nobody covering “sell videos online” explains how the recording behaves on WpStream. Three facts catch sellers out.
The recording trap. Recording is opt-in, per channel, and it has to be enabled in the channel’s Settings before you turn the channel on. So get it set first. There is no post-stream recovery (no, support cannot fish the file back out afterward, because it was never captured). If the switch was off, the broadcast happened and nothing was saved. This is the most common mistake new pay-per-view streamers make, which is why it sits on the pre-event checklist and in the pitfalls below.
Assuming you did enable it, here is what happens next. The recording does not appear the instant the channel turns off. It processes in the background and shows up under WpStream, then Recordings, after a delay of a few minutes or longer. Wait for it. Do not refresh frantically or assume something broke.
A recording is also not a video on demand by default. You deliberately convert it into a VOD before viewers can watch it. And it does not play back at the live channel’s original URL. If you want the event page to show the replay afterward, you set that up on purpose with the appropriate shortcodes; it is not automatic.
Once the replay exists, you have three ways to price it. Give it free to everyone who bought the live event (good will, useful when someone hit a technical problem). Sell it as a separate, lower-priced product (a second sale from the same content). Or bundle live plus replay into one higher-priced purchase. A creator who only sells the live moment leaves that second sale behind.
What it costs to sell videos online: WpStream and WooCommerce vs. SaaS
Here is the part the SaaS listicles skip. For anyone selling videos online for cash from their own WordPress site, the self-hosted stack costs less per month and takes zero revenue share, in exchange for a bit more setup work.
| WpStream + WooCommerce | Typical streaming SaaS | |
|---|---|---|
| Monthly platform cost (PPV) | $24/mo Lite + $0 WooCommerce | Commonly $79/mo or more |
| Revenue share | 0% (you keep all but gateway fees) | 0 to 10%, depending on plan |
| Transaction fee | 2.9% + $0.30 (Stripe, US rate) | Varies; some add a platform fee on top |
| Subscription billing | WooCommerce Subscriptions ~$200+/yr | Included in the SaaS plan |
| Data ownership | Full (your WordPress database) | Vendor-controlled |
| Replay / VOD after live | Yes, with a manual conversion step | Often automatic |
| Setup complexity | Moderate (WordPress + 2 plugins) | Low (wizard-driven) |
The SaaS column is a typical range; confirm pricing with any vendor before relying on it. But the per-sale math matters more than the monthly fee at low ticket prices. On a $10 pay-per-view ticket, Stripe keeps $0.59 (2.9% + $0.30) and you net $9.41. On a $5 ticket, Stripe keeps $0.44 and you net $4.56, roughly 9% of gross. WpStream Lite at $24/mo spread across 30 days adds about $0.80 per day in fixed cost, so the channel pays for itself once a handful of tickets sell.
Common pitfalls
Setup can look correct and still fail on event day. These five mistakes catch people after everything appears wired up. So run them as a checklist before you go live.
- Recording not enabled before going live. There is no recovery. Switch on Record Live Stream in channel settings before turning the channel on.
- Stream key changed after a plugin update. Keys usually last the life of a channel but can reset after a major update. Re-check the key in OBS after updating either plugin.
- Ran out of streaming hours mid-stream. WpStream Lite includes 100 broadcasting hours and 500 viewer hours. If OBS shows “Disconnected from server” partway through, check your remaining hours first, before blaming the network.
- Purchase flow not tested before event day. Run a full test-mode transaction with Stripe’s test cards and confirm the player unlocks for the test buyer account. Never skip this.
- EU VAT not configured. Digital streaming sold to EU buyers is taxed at the buyer’s country rate, and WooCommerce has EU VAT setup built in (see its tax setup documentation). EU-based sellers cross a mandatory registration threshold at €10,000/yr in EU sales; non-EU sellers have no threshold. Treat this as legal territory and consult a tax professional, not the plugin settings, for advice.
Key Takeaways
- Selling pay-per-view access requires a WpStream plan; Lite at $24/mo or a $36 one-time license is the entry point.
- Recording must be enabled in WpStream channel settings before you turn the channel on, with no post-stream recovery if you skip it.
- A completed WooCommerce order unlocks the player; WpStream verifies login status and order completion before showing any stream.
- Subscription billing needs the WooCommerce Subscriptions extension (around $200+/yr, varies by region); Global Subscription Mode grants Netflix-style all-access.
- On a $10 pay-per-view ticket, Stripe keeps $0.59 in fees at the US rate, leaving $9.41 per sale.
Frequently Asked Questions
Do I need a paid WpStream plan to sell pay-per-view access?
The plugin is free to install, but selling access to a live stream requires a WpStream plan. Lite at $24/mo or a $36 one-time license is the entry point, and a free trial is available with no credit card required.
What happens if a viewer shares the stream link after buying access?
Sharing a URL does not share access. WpStream checks that the person on the page is logged in and holds a completed WooCommerce order for that product before it unlocks the player. A non-paying viewer who follows a shared link lands on a locked player, not the stream.
Can I sell replay access after the live stream ends?
Yes, but it takes deliberate steps. Recording has to be enabled before the stream starts. After the broadcast ends, WpStream processes the recording in the background and lists it under Recordings (not at the original live URL). Once it is available you convert it to a video on demand and either grant it to existing buyers or sell it as a separate, usually lower-priced, product.
How much does it cost to sell live streams on WordPress?
For pay-per-view, the minimum is WpStream Lite ($24/mo or $36 one-time) plus Stripe fees of 2.9% + $0.30 per sale in the US. WooCommerce itself is free. For subscriptions, add WooCommerce Subscriptions (around $200+/yr, varies by region), which puts the floor near $488/yr. You pay no platform revenue share; the only per-sale cut goes to the payment processor.
Your next move is a checklist, not more reading: recording enabled, stream key confirmed in OBS, a clean test purchase, and EU VAT configured if you sell into Europe. Tick those off and you can go live with confidence. The same setup that lets you sell videos online scales with your subscriber count and replay library, without a platform taking a cut. If you have not picked a tier yet, the plan comparison at wpstream.net/pricing shows what each level unlocks.
Table of Content





