2 Weeks ago, on January 31st, we launched VoiceChatAPI.com. It was our first open source project since Plivo Open Source and we’re embarrassed to say that it took us this long to go back to our roots. Needless to say that the developer community was behind the project and although we stirred up some controversy on Hacker News and Reddit calling it a “Skype alternative”, we’re glad we could connect again. With over 13,419 conference rooms created, 38,097 unique visitors and 65,718 page views, we more than doubled our traffic. We were also able to increase our sign up to paying customer conversion rate by 120%, which meant that our total number of first time customers went up 345%!! Open source; this is where it’s at. So for those who like data and analytics, below is a tear down of the entire campaign including what we did, how we did it, and the web analytics in all of its glory.
Why did we do it?
Even though Plivo originated as an open source project built on another open source project by Anthony Minessale called FreeSWITCH, we have since then focused on giving customers the ease of our cloud services. But we were always a group of open source evangelists, so going back to our roots was just a matter of time. Essentially, we wanted solve a big pain point that everyone had and build something that could benefit from our telecom expertise… So we asked ourselves, why is it that even with countless conferencing apps out there, do we almost always have issues when we get on a call?
What problems did we want to solve?
We boiled down the issue to an user-centric exercise and identified the key problems during the entire process of a conference call:
- Too many softwares to install. It’s good that we have so many options out there (e.g., Skype, Google Voice, Gotomeeting), but all of them (with the exception of involving a landline) require all parties to be logged into the same software at the same time.
- Voice quality issues. Why does voice calls have to suck? I can’t remember the number of times I had to switch platforms because reception was so poor. This actually, isn’t an easy problem to solve because there are many factors that could affect voice quality. But read below to see how we decided to tackle it.
- Too many steps. The more steps something took, the more room for error. So it’s no wonder that when multiple parties have to deal with logins, dial-in numbers and conference codes, people get lost along the way.
- Not enough privacy. Some conference apps require you to set up new rooms every time and by the end of it, you can’t remember which rooms were private. The worst is to have back-to-back calls scheduled and have one conference call run into another. Yikes!
How did we solve it?
With these 5 issues clearly outlined, we went to work. First, we chose to build this app on HTML5 (WebRTC to be exact), so that a) users didn’t need to install software, it didn’t even matter what browser you were using and b) we were able to use a pure SIP connection, which meant that voice quality was preserved even if someone was joining from the other side of the world. On the back-end, we used flask because well… Kunal loves Python, but you can ask him yourself @tsudot.
We used the front-end interface to simplify the user experience, so that getting to your conference room required no more than 3 steps: create a room, share the url, and join the call. We as users never enjoyed the process of registration and logins, so we just didn’t build it. And with regards to privacy, we made each conference room self destruct after 24 hours from the time of creation. Think Mission Impossible or Snap Chat for Conferences. This way there’s never any need to keep track of rooms.
As for keeping it free and open source, well… that’s just pure magic ;) To clarify, VoiceChatAPI is free to use, but there are nominal costs associated with running the app (see our SIP pricing). However, our hosted version is completely free.
Below is an initial mockup (click image to enlarge):
What were the results?
Or you could just execute the following in your command line to create a room:
$ curl -XGET http://voicechatapi.com/api/v1/bridge/
Or you could also connect via any of these integrations:
- Hubot Plugin: Be it Flowdock or Hipchat, many have asked for a voice chat solution, so we built a Hubot plugin to allow audio conferences on any chat app. No native audio conferencing support needed. Check out the Hubot script source code on Github and npm.
- Chrome Extension: Download the extension from the Google Chrome store and get a new conference room URL with a single click.
- Bookmarklet: Save http://voicechatapi.com/create to your Bookmarks bar and create an audio conference room anytime you want with a single click.
What About the Analytics?
VoiceChatAPI.com took off like a blaze and became our most successful project to date. And if you’re a data geek: yes, the numbers were a delight to watch. Since the launch at 12noon on January 31, users have created 13,419 conference rooms, while the site drew in 38,097 unique visitors and 65,718 page views.
The most impressive part was that compared to any other 2 week period before anyone knew about VoiceChatAPI (e.g., Jan 10 - Jan 24), the number of unique visitors doubled (207% increase to be precise). The best part of this was that our Sign Up to First Recharge (i.e., Sign up to Paying Customer) conversion rate increased 120%! Which meant that the total number of people who converted to paying customers went up 345%!! This is a true testament that the quality of our leads have dramatically increased.
In hindsight, this shouldn’t be surprising at all. Developers are the ones who build apps on Plivo and what does the community like more than a useful open source project? Well… a lot of other geeky stuff, but you get the point. Voice Chat API nearly quadrupled our conversion rate!
Here’s a Deeper Breakdown:
Kunal, presented Voice Chat API at around 1pm on January 31st and shortly after, we were already getting a nice amount of traffic.
In the next few hours, everyone was talking about this new “Skype alternative” and our traffic jumped to around 2,000 unique visitors every hour and held pretty steady for a few days. Of course, the traffic didn’t last, but we still get a pretty steady average of about 200 unique visitors a day.
The geographic distribution of our visitors were centralized in North America, but visitors did span the globe. They also came via all types of browsers (the added bonus of having a cross-browser application that required zero software).
More importantly, was the support we had because we were open source. With 647 Stars and 59 Forks on Github, this is a project we’re going to keep updating and improving. So if you want to contribute or have a great idea, email me at lucy [at] plivo [dot] com.
What did we learn and will we do it again?
We (re)learned about the power of open source and how if you build something useful, people will support it; whether it’s time, code contributions, or just spreading the word. So if you’re thinking of taking on a similar project yourself, just remember that the community is what matters most. And if you want your project to stand the test of time, be sure to dedicate time into updating the code and constantly improving your project.
So the short answer is yes, yes, and yes. The long answer would be what and when. The only thing I know is that regardless of what project would come next, you can expect that it will be open source.
Update: we are often asked about how we’re different from Twilio, so we’ve build a Twilio Alternative page to answer that question. Aside from our open source roots, we also dedicate a lot of our efforts to bring the best quality service to our customers without large enterprise fees or support subscriptions.
Lucy Zhao leads product marketing at Plivo. She’s a tech evangelist, lover of all things made well, design & UX aficionado, MIT (poker-playing) alum, all-around geek and an amateur furniture maker. Follow her @lucylzhao.