I'm trying to add secure video calling to a website and am looking for advice on the best technical approach. I'd also like to know how inexpensive it can be to host, preferably using a free tier or a very low-cost setup. Should I build it with WebRTC, use a hosted service, or install an open-source solution myself?
4 Answers
Using a hosted provider is probably the fastest and safest route for a small project. Services such as Daily, Whereby, or Twilio handle much of the WebRTC complexity, including signaling and infrastructure, and some offer free plans with usage limits. You can embed their call interface without running the entire video platform yourself.
You can also look at open-source options such as Jitsi Meet or self-hosted platforms built on WebRTC. They give you more control, but you’ll need a VPS with reliable bandwidth and will be responsible for updates, authentication, scaling, and call reliability. It may be inexpensive for a small number of users, but it isn’t truly free once usage grows.
A typical self-built setup uses WebRTC for the audio and video, HTTPS or secure WebSockets for signaling, STUN servers to help establish direct connections, and TURN servers when users can’t connect directly. You’ll also want authenticated rooms and short-lived access tokens. This can work well, but it takes more than just adding a video element.
The video stream itself is usually the easy part. NAT traversal, TURN bandwidth, authentication, room management, moderation, and handling different browsers are where the time and cost appear. For a prototype, a provider’s free tier is likely the most practical option; build it yourself only if control or learning is more important than development speed.

That makes sense. I was hoping the direct connection would avoid most hosting costs, but I hadn’t considered how often TURN might be needed.