•about 1 year ago
Chat and messaging are critical components of your application. When searching for a provider to enable in-app messaging, you might compare Stream Chat with SendBird. Stream and Sendbird are the two most commonly used chat APIs, and both are solid options for your application. In this analysis we’ll compare the two APIs to help you make your choice.
UPDATED: September, 2020
UI Components & Time to market
Stream entered the chat market with a focus on helping our customers launch chat and messaging experiences faster. Component libraries are available for React, React Native, iOS, Android and Flutter. The component libraries are fully customizable so you are in control over your chat and messaging user experience. In addition, API clients are available for all popular languages. You can try the Chat API in your browser.
Stream’s support team replies in 20 min on average. The support team is located in Boulder, Amsterdam and Sydney so we’re always responsive. The UI components, support team and polished documentation results in customers launching their chat integration in weeks.
Stream also provides a beautiful UI kit for the 5 most common chat/messaging use cases in both light and dark modes.
Stream’s chat API enables you to build any type of chat or messaging. There are 5 channel types supported out of the box:
- Social Messenger
You can also create your own channel types. Channel types allow you to configure detailed permissions as well as enable/disable features such as link sharing, read indicators, typing indicators etc.
If you’re building a B2B application Stream also supports multi tenancy. The multi tenancy feature allows you to split the chat information for your customers. For example, say that you have both Amazon and Walmart as customers of your SAAS. Stream’s multi tenancy permission system enables you to ensure that they can’t access each other’s data. Other chat providers typically require that you proxy API requests to implement this permission logic yourself.
Stream also allows you to support custom data on users, channels, reactions, messages, attachments and members. This flexibility enables you to build a wide range of chat and messaging functionality.
Enterprise grade performance & Reliability
Stream powers activity feeds and chat for over a billion end users. The technology is based on Go, RocksDB & Raft. This tech stack is similar to what Google, Instagram and LinkedIn use. The APIs typically respond in 10ms and we’re able to offer a 99.999% uptime SLA on enterprise plans.
Stream VS Sendbird
As you can see from the feature list below, both Stream and Sendbird provide a very comprehensive chat API. A review of Sendbird's messaging features:
|Rich URL Preview||Yes||Yes|
|Unread message counts||Yes||Yes|
|Online User presence||Yes||Partial|
|User to user mute||Yes||Yes|
|User to user block||Yes||Yes|
|Multi tenant API||Yes||No|
|AI text moderation||Yes||Via a partner|
|AI image moderation||Yes||Yes|
|Campaign API||In progress||Yes|
|Livestream traffic feature switches||Yes||No|
Stream’s Strengths over SendBird
Stream aims to differentiate ourselves from other chat providers by focusing on:
Being easier to integrate/Better time to market
Enterprise grade performance and scalability powered by Go, RocksDB & Raft
The best way to see these differences is to build a proof of concept and evaluate this yourself. These tutorials are a good starting point: React, React Native, iOS, Android and Flutter. The Chat API Tutorial is another easy way to evaluate Stream’s APIs.
Stream vs Sendbird Differences
There are a few other differences as well:
By default Stream’s pricing plans allow 5 concurrent connections per 100 MAU. Sendbird’s pricing allows 2 concurrent connections per 100 MAU.
Max number of members per channel
Sendbird allows 100 members per group channel by default. To further increase the limits you need to pay extra. Be sure to check on the pricing of this feature as it tends to be a reason why people switch from Sendbird to Stream. Stream does not have a cap on the numbers of members on a channel, nor do we increase your pricing with high member counts. We have customers with hundreds of thousands of users on a channel.
Stream supports slash commands like /ban, /giphy out of the box. Support for creating your own custom slash commands is expected to become available very soon. Sendbird doesn’t have slash commands.
But don't take our word for it, the reviews of Sendbird on Product Hunt provide other data points.
Stream provides admins the ability to mute and ban users, mute channels, and send system-wide notifications to help keep your conversations civil. Our tools allow you to ensure user safety within your app. Activating our AI based moderation will automatically protect your users from spam, profanity, and explicit content. We even have a partner that can take your AI moderation to the next level, detecting advanced concepts like self-harm, grooming and many others. Sendbird supports a similar feature set.
Highly Scalable, Stable and High Performing Infrastructure
Stream’s API is built upon Go, RocksDB & Raft. It powers activity feeds and chat for over a billion end users. With the ability to support millions of concurrent connections for a single app, thousands in group chat and channels, Stream’s ability to scale is second to none.
|Scalability & Performance||Stream||Sendbird|
|Persistent WSS connection||Yes||Yes|
|Max members of a group||No defined limit||100, pay to upgrade|
|Max concurrent connections||No defined limit||Unknown|
|Average response time||10ms||Unknown|
|Multi region support||Yes||Yes|
We’re confident enough in our uptime that we offer a 99.999% uptime SLA. Our status page is public. SendBird requires a customer login to see their status and average response times. Both products offer an array of enterprise focused features:
|Dedicated stack option||Yes||Yes|
|GDPR compliant APIs||Yes||Yes|
|EU & Swiss Privacy Shield*||Yes||Yes|
|Persistent connection protocol||Yes||Yes|
|99.999% Uptime SLA||Available||No|
|2FA for developers||Yes||No|
|24/7 phone support option||Yes||Yes|
*Privacy Shield was rendered invalid.
There are some significant differences in pricing between Sendbird and Stream. You can also check out our 5/5 star rating on Product Hunt here.
Sendbird advantages over Stream
Sendbird supports Xamarin, which enables you to build chat apps using .NET. Stream doesn’t directly support Xamarin, so you would need to use the lower level REST APIs.
Sendbird supports Unity. Stream doesn’t directly support Unity, so you would need to use the lower level rest APIs.
Sendbird recently released an announcement API. This API makes it easy to broadcast a chat message to many channels at once. Stream currently does not support this, so you would need to manually build a UI for this and loop over the channels to send many messages. Stream’s campaign API which will support a similar feature set is expected to launch in Q4.
Stream partners with Dolby.io for audio/video calling. Sendbird acquired a startup that provides audio and video calling and offers an integrated solution.
Stream can work with you to make your Sendbird migration a snap. With our import tools and customizable interfaces, we can help get you off SendBird and into Stream Chat in no time.
Both Stream and Sendbird are some of the most comprehensive chat APIs available in the market today. Both solutions enable you to ship a high quality chat experience while keeping your engineering team focused on what makes your app unique.
Want to learn more, Reach out via our contact form, and we’ll be happy to schedule a demo.