WebRTC is FREE. But Developers Aren’t

January 16, 2017

If you think WebRTC is free, then think again.

WebRTC is free

I see it everyday and it is glaringly obvious. I probably haven't made things any better myself with this slide of mine:

WebRTC is free. But lets consider what exactly is free with this technology:

  1. The code. You can go download it from webrtc.org. And then... do with it whatever. It is licensed under BSD
  2. The codecs used - and yes - I know - there are people who feel entitled to them through some patents - but no one yet cares about it - almost everyone assumes it is free and uses it - for now
  3. It is readily available inside browsers. Well... at least some of them (Chrome, Firefox & Edge. Coming to Safari sometime)
  4. And that's a wrap

It is a hell of a lot to give for free. Especially if you went to sleep ten years ago and just woke up.

What's missing in WebRTC?

But that's only a small piece of the puzzle. Or as another slide in my deck usually states:

There are loads of things in WebRTC that you need to do in order to get a service to production. Here's a shortlist of things that just came to mind:

  1. Selecting and implementing signaling
  2. Writing the application
  3. Installing and deploying TURN servers (preferably at scale)
  4. Adding media servers if needed - and making them work for your scenario
  5. Testing it all
  6. Monitoring it in production
  7. Tweaking and upgrading as you go along

How do you fill in these gaps in WebRTC?

All these complementary solutions come in different shapes and sizes:

  • Open source frameworks of various kinds you can use. Most will be half baked (=require more work to get them to production), or not exactly fit your needs
  • Vendors offering consulting and outsourcing
  • Different vendors offering hosted and managed services. From signaling, to NAT traversal, testing & monitoring and complete CPaaS

The funny thing is, that whenever you talk to one of the companies developing with WebRTC, they believe everything in WebRTC should be free.

  1. STUN servers? Free. There are lists of free STUN servers you can use
  2. TURN servers? Free. Or more like "why can't I find free TURN servers?" (mind you - you should NEVER use free TURN servers)
  3. Using a WebRTC PaaS vendor? That's waaaay to expensive. We want to build it on our own to keep costs down

The thing is that building these things on your own will take time and money. Lots of both to be exact.

Same thing about how you end up testing it all or monitoring it. I'd say this is how the market looks like when it comes to testing WebRTC:

So what?

If you are planning a product that needs communications, you should definitely consider WebRTC first. Before anything else. It is probably going to be the cheapest technology for your needs but also the best one.

That said, you shouldn't consider it all free. Plan it. Budget it. Write down your requirements. Decide on your architecture. Figure out who your partners should be in this road.


You may also like