More product teams than ever before are choosing to buy app functionality from an API/SDK provider rather than building it from the ground up.
According to a Nordic APIs report, three in four professional app developers rely on third-party APIs to easily incorporate tough-to-code features into apps. Often, the decision to buy an off-the-shelf solution is governed by lower long-term costs, improved time-to-market, reduced maintenance costs, and establishing reliable backend infrastructure.
However, the tough decisions don’t end once the buy versus build decision is made. App owners face the equally complex problem of choosing which third-party tech provider to partner with.
This whitepaper explores how several top tech companies evaluated Stream when considering integrating in-app chat from a third-party API provider.
Here, you’ll learn essential considerations to look for in a chat API/SDK provider, how to choose a tech partner that enables your app’s growth, and the questions you should be asking (but aren’t).
1. Identify Primary Functionality
Outline the main reason you’re reaching out to a third-party chat provider. Is this functionality vital for your app’s growth? Will it allow your product to stand apart from competitors? Or is it a fun feature that will delight and retain your existing user base? Underscoring the core reason your product requires chat will empower your team to seek API/SDKs that excel in this key area.
For example, before the renter marketplace Zumper integrated the Stream Chat API, the platform’s users communicated primarily over email. This made it tough to keep communications organized, created a fragmented experience for renters and landlords, and presented a security risk. Renters often had to send sensitive information (such as their social security number for background checks) to landlords through email. Zumper’s goal was to keep these conversations on their platform. They required a secure chat solution to encrypt messages to protect users’ data.
Knowing that a secure in-house messaging solution was paramount, Zumper focused their chat search by only evaluating real-time in-app chat APIs that followed security best practices such as SOC 2, GDPR, and ISO 27001, and had encryption capabilities.
Takeaway: Tailor your search by identifying the top in-app messaging functionality that defines product success.
2. Outline Secondary Features
Now that you know the essential functionality your app requires, outline the features you would like to include in your app. When seeking a chat API, knowing your primary and secondary values — and the business case behind them — will help inform your provider search.
This decision-making tactic was especially handy for Elissa Ewers, director of digital product for Freeman's virtual event platform. When the pandemic started in 2020, Ewers led the charge to create a slick virtual event platform called OnlineEvent that could provide attendees the same experience as an in-person event. While she typically takes months to evaluate third-party tech providers, she had only a few weeks to onboard an in-app chat solution.
With time constraints in mind, Ewers zeroed in on her primary and secondary chat feature requirements to guide her decision. Freeman’s primary functionalities included a chat solution that could reliably support tens of thousands of concurrent livestream users, rapid integration, and a flexible API. Secondary functionalities included engagement-boosting emojis, threads and replies, at-mentions, and a customizable UI that reflects Freeman’s unique branding.
Understanding both primary and secondary chat must-haves led Ewers toward Stream’s in-app messaging solution.
Takeaway: Know the difference between “have to have” and “nice to have” features to focus your product priorities and steer your tech provider decision.
3. Align Your Values
For apps that seek a chat solution requiring involved customer support, it’s a good idea to find an in-app chat provider that can be your success partner — not just your vendor. Aligning and communicating your company’s product values will enable you to develop a trusted working relationship with a third-party chat API.
Finding a tech provider with similar values was top of mind for Steven Marques, senior manager of product operations at Dealer-FX, a company that makes software for automotive dealerships.
Marques’ goal was to create an internal chat platform to facilitate communication between different departments at dealerships. Uniquely, he wanted the platform to aggregate repair order meta-data and automatically create a group chat with every employee involved in repairing a car. To achieve this tricky integration, he needed to sign with a chat provider that was willing to work closely with Dealer-FX. “We were looking for a chat API partner who shared our values of creative iteration and an entrepreneurial spirit,” explains Marques.
Marques worked with Stream’s customer success team to make his chat idea a reality, which differentiates his product from competitors.
Takeaway: Look for a partner, not just a provider. Build a trust-focused relationship with your chat API company for long-term innovation and support.
4. Examine Reliability
When you choose to buy rather than build, your service providers' outages are now your outages, so understanding how reliable the service is before you invest in integrating is hugely important. Modern app users expect in-app chat to function exactly like text or direct messaging, and any lag between messages will frustrate your users and even contribute to churn.
Do your due diligence by asking your chat provider about historical server outages and how quickly incidents get resolved. Most large chat API/SDK solutions have a dedicated status page outlining past and current incidents so that you can also research each server's operationality.
Careful examination of uptime SLA — the amount of time a server remains up and running throughout a year — will guide you toward a reliable solution. Remember that 99% uptime SLA likely isn’t good enough for your product, as this means servers are down 1% of the time or 3.65 days per year. Stream’s 99.999% uptime SLA is reliable enough to power in-app chat for some of the biggest brands and over a billion end users.
Evaluating server outages of chat API providers was paramount for the financial platform Benzinga, which relies on real-time connections to update its users about changes in the stock market. Even slight outages could cause users to miss out on crucial trades, and the company’s “homegrown” messaging solution was buggy and unreliable. “The stakes for a reliable chat solution were high,” explains Benzinga Lead Developer Bert David. “Our users are day traders, and they use the chat room extensively to find trading ideas. This is how our users make their living, and they rely on our tool 24/7 to do their job.”
David successfully migrated Benzinga users and their data to the Stream Chat API with minimal interruptions for long-term stability.
Takeaway: Even short server outages can cause drastic annoyances for your app’s users. Understanding reliability and historical outages can help you choose an in-app chat API that minimizes latency issues.
5. Browse SDKs
It may seem like a no-brainer, but make sure your tech provider supports a chat SDK in the language you intend to use. SDKs save your developers loads of time during the integration process and add features such as channel headers and emojis that could take your engineering team weeks to incorporate.
If a chat provider does have an SDK in your language of choice, examine the documentation. Helpful documentation is typically clearly accessible and organized, regularly updated, and contains examples, code snippets, and use cases. Customizable UI kits in various industry verticals can further accelerate chat integrations.
Product managers tasked with choosing a chat API should engage the help of an engineering lead who will be working closely with the SDK. Even highly technical product managers shouldn’t be making the decision alone. Product managers should focus on vetting the functional requirements of an API; engineering leads should evaluate technical requirements. Leveraging the expertise of a trusted technical team member will foster a positive product manager-developer relationship, too.
Stream’s Chat SDKs include:
- React
- React Native
- Angular
- iOS/Swift
- iOS/SwiftUI
- Flutter
- Android
- Compose
- Unreal
- Unity
- Backend
Stream’s Chat UI Kits include:
- Messaging UI Kit (for social, teams, livestreams, and in-game chat)
- Mobile Chat UI Kit
- Virtual Event Chat UI Kit
Takeaway: Confirm that a chat API supports the SDK you plan to use for your product and review documentation with a technical lead.
6. Ask Strategic Questions
Once you’ve scheduled a discovery call with a sales representative of a chat API provider, ask strategic questions to learn whether a certain technology is optimal for your use case.
Here’s a cheat sheet of questions to guide your queries, organized by topic.
Product Updates
-
How do you share product updates with customers, and where can I view your product roadmap?
-
How often do you release new features to customers?
-
How can I expect to be notified of new feature releases?
Reliability & Scalability
-
What is your uptime in the last 90 days? What about over the past year?
-
Can you tell me about your last outage or service degradation? What was the root cause?
-
What have you done to mitigate future outages?
API Integration
-
In the last three months, have you released any breaking changes to your API? If so, what were they? How much notice did you give customers?
-
How much effort did it take for customers to accommodate the change?
-
How many major version changes have you released in the last three months for the SDKs we plan to use? What percentage of your customers have upgraded to the latest version?
-
What level of customization can your API support?
7. Try Before You Buy
Even with careful evaluation, trying a chat API is the best way to understand if it’s the right tool for your business.
Most legitimate chat API solutions will have a no-strings-attached trial that enables you to tinker with the API, sample the SDKs, and download the UI kits. Stream’s chat trial provides full, free access to the API for 30 days, allowing product teams and developers to know exactly how the Stream Chat API could function in their platform.
Takeaway: Try Stream Chat! Activate your free Chat trial to learn if the Stream Chat API is the best choice for your app.