This page may be out of date. Submit any pending changes before refreshing this page.
Hide this message.
Quora uses cookies to improve your experience. Read more

[Quickblox vs SendBird vs Layer.com] Do I need to have my own backend?

I'm developing a chat-oriented iOS app. Chatting/Messaging is the main component, however, there are other features that requires custom objects/classes/database. Do I need to have my own Backend with Quickblox, SendBird and Layer.com?

3 Answers
Mohammed Alrokayan

Based on my research below, we don't need to have our own BaaS with Quickblox. However, we need it with SendBird (aka JIVER) and Layer.com such as using Parse Server or Firebase.


My research on Quickblox vs SendBird vs Layer.com is:-

1- Backend-as-a-Service (BaaS) or Chat-as-a-Service (CaaS):

  • Quickblox: Both, BaaS and CaaS
  • SendBird (aka JIVER): CaaS (BaaS for Enterprise-only)
  • Layer.com: CaaS only

2- WebSocket-based:

  • Quickblox: No (XMPP)
  • SendBird: Yes
  • Layer.com: Yes

3- Voice and Video:

  • Quickblox: Yes
  • SendBird: No
  • Layer.com: No

4- Chat UI Kit:

  • Quickblox: QMChatViewController
  • SendBird: Open-source Sample UIs for iOS, Android, JavaScript (Web & React Native), Xamarin, Unity (You can use their Sample UI or 3rd party UI Kit like JSQMessagesViewController)
  • Layer.com: Atlas

5- Number of Members in a Group:

  • Quickblox: Thousands (you may need to host Quickblox BaaS at a dedicated AWS infrastructure for better performance)
  • SendBird: Thousands (no need for an extra infrastructure)
  • Layer.com: limited to 25 per group

6- The ability to host the BaaS/CaaS at your own IaaS:

  • Quickblox: Yes (setup cost starts from $599)
  • SendBird: Yes (limited to Enterprise plans only)
  • Layer.com: No

7- Custom Objects Backend (the need for extra infrastructure):

  • Quickblox: Included in Quickblox BaaS
  • SendBird: Partial support (Key/value custom object stores for channels to be released in March)
  • Layer.com: No

8- BaaS/CaaS Admin Panel/Dashboard:

  • Quickblox: Basic with Custom Dashboard when subscribed to the enterprise plan, starts from $599/month (Classic UI)
  • SendBird: Advanced (Modern UI)
  • Layer.com: Basic (Modern UI)

9- Attachment max file size:

  • Quickblox: Unknown
  • SendBird: 25MB per file (custom limit for Enterprise plans)
  • Layer.com: 2GB (be aware that their pricing is based on the data transfer)

10- Availability SLA:

  • Quickblox: Based on AWS EC2 SLA (99.95%)
  • SendBird: 99.9%
  • Layer.com: 99.9%

11- Pricing (per month):

  • Quickblox: Mainly based on the number of messengers per second (/s) and monthly active users: Free-$49-$214-$599-$1,199-$2,399 (Plans)
  • SendBird: Mainly based on the number of monthly active users (MAU): Free-$59-$179-$599-Custom (https://sendbird.com/pricing)
  • Layer.com: Mainly based on the monthly data transfer and monthly users: Free-$599 per month-Custom (https://layer.com/plans)

12- Number of freelancers at UpWork.com who have this Baas/CaaS as one of their skill set:

  • Quickblox: 547 (keyword: "Quickblox")
  • SendBird: 0 (keyword: "SendBird" or "JIVER") « new to the market
  • Layer: 13 (keyword: "Layer.com" not Layer)

UPDATE: I end up using SendBird with Parse Server (I'm trialing NodeChef.com as they provide a hosted Parse Server, almost like Parse.com). Based on my interviews and screening, almost any mobile app developer is happy to learn and use SendBird SDK.

Ben Smiley

There is a question about whether it is possible to build a ride sharing app with one of these services and whether it is advisable. From my experience, there are two possible alternatives:

Use a flexible database BaaS

Not every BaaS is the same. Services like Pubnub are mainly a wrapper around the websocket publish subscribe paradigm. They provide a server and an SDK to make implementing pub/sub easier.

A service like Firebase offers a real-time MongoDB database. You can actually design some pretty complex apps just using Firebase. The big downside is that sometimes you need code to run on the server.

In the past we used Parse in conjunction with Firebase - Parse handled some of the more structured database queries and user authentication and Firebase handled the real-time parts of the app. Firebase is nice because you can generate your own JWTs to authenticate with a third party server.

You can also use the Chat SDK for Firebase which is an open source messaging implementation for Firebase.

Custom server + real-time BaaS or CaaS

The second option would be to develop a custom server using something like Symfony 3 and integrate it with a real-time message provider.

The benefit of this is that you would be able to develop a full PHP / Apache / MySQL back end while allowing a third party provider to provide the real-time functionality.

I have more experience with Firebase than any of the other services so I know that it’s very possible. Especially since Firebase has a REST API. I developed a real-time web messenger using Symfony 3 and Firebase. Symfony handles all the admin functionality and the rest of the chat is build with Firebase. If you’re interested you can check it out here.

Pravin Singh

NO, you should be fine with Applozic as it offers native SDK’s and UI kits from Github so you have full control over customizations both in terms of app functionalities around messaging and UI design along with the Backend.

Applozic’s backend and rich Platform API’s (Client and Servers) would let you build exactly what you want. You can configure Applozic for your app to interact with content from your servers side code as well as you can fetch real time updates of all the happenings on your app through Webhook configuration. You can also counter/tigger actions from the messages delivered to your servers.

Does that help?

View More Answers