Find out more about benefits of using Pusher Channels and implementing chat to your realtime apps.
Chat: a vital feature for all apps
When it comes to customer support, live chat has long been a standard for websites. Chat functionality has now become a staple feature for mobile apps too. From support for marketplace and on-demand services, to group and individual channels for gaming and social apps, users want and need tools for communication with your business and with other users. As developers race to keep up with users’ expectations of communication features, they’re also taking advantage of benefits like boost in user engagement and ability to interact with customers directly.
Today, it’s a no-brainer to add this feature, but how? Should you build your own chat app from scratch or choose an off-the-shelf API? This article reviews the costs of building your own app, and discusses the potential of out-of-the-box add-ons or alternative toolkits so you can make an educated decision.
Flexibility and customization
Some developers choose to create their own in-app chat because they are looking to integrate special types of interaction. When you build from scratch, the main benefits includewill operate in line with your business logic. In this case, before starting development, you’ll want to create a clear specification with user workflow and some level of mock-up screens. Creating a detailed specification will allow you to have total clarity on what you need.
Typically, chat is built for one or more of the following applications:
Once you have a specification, it’s worth considering whether there are already APIs on the market that can fulfil your needs. You can compare your specifications to the capabilities of out-of-the-box chat APIs, to make sure you really require something completely custom.
Time to market
The most obvious drawback of building your own application is the time to market. In the best case, it takes between a year and 18 months. Even if you are considering building your own chat interface, it might make sense to temporarily include an add-in. Let’s face it: today’s users don’t want to wait 18 seconds, much less 18 months for new features. And if your competition already has built-in chat, you really can’t afford to wait.
Costs of building from scratch
One of the biggest pitfalls to avoid when building your chat app is to underestimate the amount of time and effort it will take. Yes, there are open source libraries you can build on, but then you lose some control of the code. You’ll also need to consider the implications of needing to provide support to your users for a component you might not understand in real life, because you don’t have the benefit of having written it yourself.
Building your own chat application entirely from scratch typically requires the following components:
For most teams, this development would take 15 months and 3-5 full-time salaried programmers for development. Of course, we know, because we spent that much developing a chat app. And, it doesn’t end there. Security updates, added features, and keeping up with developments and changes in the source app are also necessary.
Additional features
Chat apps vary drastically depending on whether they are built for groups, community, customer support, or live stream commentary.
A comprehensive chat app would include any or all of these different features:
In order to remain competitive and provide the best user experience, you would need to individually develop each one of these features.
Ongoing maintenance
Total cost of ownership (TCO) is always a concern when you are building your own chat app. First of all, you’ll have ever-increasing cloud provider costs as your app gains traction and you expand your operations.
Secondly, your development team will need to maintain the code closely. As you already know, there are ongoing security updates and changes to the operating system to take into consideration. Maintenance costs will vary, but any issues or bugs will be your problem, not to mention scalability.
The best of both worlds
The allure of the “chat out of the box” style solution is that it is designed to do all of the heavy lifting for you. While this is can be a good way to demonstrate how chat can work for you and your users (especially for quick prototyping), there are some things you’re losing out on:
1. Control over the conversation database
2. Flexibility to use your own business logic
So what about a solution which provides a significant foundation for the realtime messaging infrastructure, reducing costs and time commitment for your team, but gives you the flexibility to use your business logic, and allows you to hold on to your own database?
Using a hosted pub/sub API like Pusher Channels for your live chat infrastructure could you to get up and running quickly, saving you money and time and lowering the risk of development, while still keeping full control of your database.
Choosing an API with proven high throughput could save you the headaches of dealing with scalability as your app adoption increases. Chat is intrinsically designed to increase the usage time of your app, so it’s predictable that your needs will grow. The Channels API is designed for simplicity and scalability, and our team has worked with thousands of global developers, from one-person startups to global giants
Adding chat to a mobile app doesn’t have to be time-consuming or costly, nor do you have to lose control of your code.
If you are interested in learning about how you can build chat with Pusher Channels, check out our relevant tutorials here.