Hosting a film yourself is two bills that behave nothing alike: storage, which is small, flat, and the same whether anyone watches or not, and delivery, which you pay again every time someone presses play. There is no monthly figure worth quoting, because the second one is set by how much of the film people sit through, and you do not control that.
For comparison, watchmycreation costs delivery at ₹0.15 per minute of runtime for every ticket sold, and caps what a single ticket may consume at 5× the film’s runtime in minutes watched, with a floor of 15 minutes for very short films. Storage and the build are cheap. Delivery is the bill that surprises people.
Every video host, including the one you would write, bills these separately, and they behave nothing alike.
Storage is billed per gigabyte held per month — or, on many managed hosts, per minute of source video held. You upload the film once and pay a small, flat, boring amount forever. You can work it out in advance, it does not move when the film gets popular, and it is almost never the reason someone's hosting bill goes wrong.
Delivery is billed per gigabyte sent. Some hosts bill it by the minute of video sent instead, which is the unit our own per-ticket figure is quoted in. Every viewer who presses play causes a fresh transfer of the whole file, or as much of it as they sit through. Nothing about that bill is under your control: it is set by how many people watch, how much of it they watch, how many of them rewatch, and at what quality their connection settles on. You store once and deliver as many times as the internet feels like.
That gives you the only estimate anyone can honestly make before launch. Take the size of one complete watch at the encode you have chosen, multiply it by the views you expect, and multiply that by whatever your host charges per gigabyte. We will not print what any of them charge — a rate we cannot keep current is worse than none at all — but the arithmetic is yours to run the moment you have a quote in front of you, and the encode is the cheapest lever in it.
That asymmetry is the whole of the build-versus-buy question. A film that nobody watches costs almost nothing to host. A film that works costs real money every month it keeps working, and the invoice arrives after the watching, not before.
Here is a figure we can stand behind, because it is one we charge rather than one we looked up. Delivery is deducted from every ticket sold at a flat rate per minute of the film's runtime, and beside that sits a ceiling on how much a single ticket may be watched: at most 5× the runtime (or 15 minutes, for a film short enough that the multiple comes to less), after which that ticket is issued no more playback links. The ceiling is the interesting half. It is what keeps one sale from turning into an open-ended bill. It is not a hard limit on that bill, though. It counts the playback our player reports, with a looser ceiling on link time behind it, rather than the video sent, so an ordinary player stays within roughly that allowance and a modified one can pull more in the same time. The bill follows the video actually sent.
| Runtime | Streaming charge per ticket | Our minimum ticket |
|---|---|---|
| 10 minutes | ₹1.50 | ₹4.32 |
| 42 minutes | ₹6.30 | ₹11.46 |
| 600 minutes | ₹90.00 | ₹114.53 |
The streaming charge is flat: ₹0.15 per minute of runtime, once per ticket, whether the viewer watches the whole film or abandons it during the titles. The ceiling above limits how long a ticket may keep streaming; it is not a multiplier on what that ticket is charged, and the two are in different units.
On this platform those are per-ticket figures because every watch carries its own ticket, and every ticket carries its own deduction — there is nothing in that table to multiply. Self-hosted, the same per-watch cost lands on you with no sale attached to it, and you do multiply the streaming charge column by however many people watch. That multiplication is the entire risk of building it yourself.
The minimum ticket column is ours rather than yours: it is the lowest price at which a sale here does not lose money once tax, the gateway and the flat costs are paid. It is priced against one complete watch rather than against the ceiling, because the ceiling is a limit and not an expectation — where a ticket does run close to it, the difference is ours to absorb. The full per-ticket arithmetic sets out how it is derived; the earnings calculator will run your own runtime through it.
If you host the film yourself, the obvious thing to do is put the opening online for nothing so people can decide. We did exactly that, shipped it, and then retired it, and the reasoning is the most useful thing on this page.
A free preview is a delivery cost with no ticket attached to it. Every one of the caps above hangs off a sale — the budget is charged against a ticket, and a ticket was paid for. A public clip has no such anchor. It is served to anyone with the link, as many times as it is asked for, by people who may never buy anything. Ordinarily that is a rounding error. The one situation in which it is not a rounding error is the situation you are hoping for: the film gets shared widely, and the bill for that success lands on the person who made it, in a month when nothing sold.
So the preview is gone. Creators link a trailer hosted on YouTube or Vimeo instead, which means the free-to-watch part of the funnel runs on somebody else's delivery budget, and only the paid part runs on ours. If you build this yourself, decide the same question before launch rather than after an invoice: either meter the free clip, or host it somewhere that absorbs the cost for you.
Storage and delivery are the costs people estimate. These are the ones that turn a weekend project into a thing you maintain.
The file out of your edit is not a file a browser can stream. It has to be converted into a ladder of renditions so a viewer on a weak connection gets a smaller one, packaged for adaptive streaming, and then stored. Build that yourself on object storage and you pay for the bytes of every rung of the ladder, not just the master, so the ladder you choose sets your storage bill as well as your delivery bill. Managed hosts generally bill storage on the duration of the source instead and fold the encoding into it — worth establishing which of the two you are buying, because it changes the shape of the estimate and not merely its size. Captions are separate, and worth doing.
This is the part most self-hosted setups get wrong, and the failure is silent: the file sits at a URL, the URL is guessable or shareable, and the paywall in front of it is decoration. A page that checks whether you paid before showing a player is not access control if the player's source is a link that works for anyone who copies it.
What it actually takes, in the order you will discover you need it:
None of that stops a determined person recording their screen, and anyone who tells you otherwise is selling something. It stops the file itself getting loose, which is the difference that matters. We go through what is worth doing and what is theatre in protecting your film from piracy.
Taking money is the easy half. A gateway takes a percentage of everything collected, with GST on that fee in turn, and integrating it is an afternoon — the rate is the provider's to set and worth confirming with them rather than with us. What we deduct for it here is 3%. The half that takes weeks is what happens around it: the browser callback that never fires because the viewer closed the tab, so entitlement has to be granted by webhook instead; making that webhook idempotent, because it will be delivered more than once; refunds that revoke access and reverse the accounting without leaving the viewer still able to watch; and someone to reconcile the payments that captured but never issued.
There is a turnover threshold for GST registration, and one finished film with a handful of sales may well sit under it. Once you cross it, selling to viewers in India means GST at 18% on the ticket, tax invoices with numbering that is gap-free per series per financial year, credit notes that reference the invoice they reverse rather than editing it, and a defensible answer on place of supply for a buyer whose state you never captured. This is not difficult so much as unforgiving: the register has to be countable at the end of the year, and you cannot retrofit a number you never allocated. Where you actually stand depends on your turnover and your registration, which is a question for an accountant rather than for us. The guide to GST on selling film tickets online sets out what it involves.
Which duties under the IT Rules 2021 you land in depends on what you are hosting, and the two sets are not the same.
Host other people's video and you are an intermediary, with the due-diligence obligations that follow: a named grievance officer with a published address, acknowledgement and disposal of complaints inside the statutory clocks, and a takedown process that works.
Publish your own films on demand as a business and you are, on the usual reading, a publisher of online curated content instead — which is heavier rather than lighter. That limb asks you to self-classify every film into the statutory age categories, apply access control on the higher ones and verify age for the adult category, keep a grievance officer based in India on the same clocks, and sit beneath a self-regulating body with ministry oversight above that. We built our own age ratings from exactly this reading. What we operate at checkout is a declaration by the purchaser of their own age, and we do not claim it is anything more.
Whichever limb you are in, the obligations that follow the sale follow you regardless: refunds, tax invoices, and answering the person whose payment went through and whose video will not play. The clock does not care that it is a weekend, and neither does that person.
We would rather say this than have you find it out: if you are building a library and intend to run it as a business, self-hosting may well be right. At volume you can commit to delivery rates that no per-ticket fee can match, you own the player, the data and the relationship with your audience, and the operational work has somewhere to amortise. The costs above stop being surprises once they are a spreadsheet you look at monthly.
If you have one finished film and an audience that would pay to see it, it is a hobby project with a variable bill attached. The money is not the argument — a handful of sales will not cover the weekend you spend on signed URLs, but a handful of sales is not much money either way. The argument is that the film is finished and the infrastructure never is, and every hour spent on token renewal is an hour not spent on the next one.
What a listing fee and a defined cost per ticket actually buy you here is this: the delivery bill and a per-ticket limit on how long its links keep working, signed playback and the caps around it, the payment and refund machinery, the tax invoice on the ticket, and a complaint process with a name and an address attached. What they do not buy you is a tax position. What you earn here is your income, and how you account for it stays yours — we cannot take that on and do not claim to. It is not cheaper in every case and we would rather not pretend it is. It is cheaper than a bad month of unmetered delivery, and considerably cheaper than finding out in public that your paywall was decoration.
Storage: small, flat, forecastable. Transcoding: a one-off, per film. Delivery: the real bill, proportional to how well the film does, and the only line that can surprise you. Everything else — signed playback, webhooks, refunds, invoices, complaints — costs you time rather than money, and it is more time than it looks.
The verdict, since the arithmetic alone will not hand you one: build it if you are running a library as a business, where rates can be committed to and the operational work has somewhere to amortise. Do not build it for a single finished film — not because the hosting is expensive, but because the film is finished and the infrastructure never will be.
Published by Sajai Digital, which operates watchmycreation. We describe how our own platform works and what Indian law requires of it; this is not legal, tax or financial advice, and rates and rules change. Check anything that matters with a professional. Something wrong on this page? Write to support@watchmycreation.com and we will fix it.