There’s no shortage of sentiment analysis APIs on the market, but most of them give you limited conversation data and no way to translate captured sentiments into business results. When looking for the right API, check for contextual understanding to get the most accurate insights, the performance and extensibility you need to achieve your business objectives, and the ability to surface useful information in real time.

As a developer on the hunt for an intelligent sentiment analysis API, you’re likely already familiar with the benefits of capturing positive, negative or neutral sentiments from a piece of text. And you’re not the only one.

Businesses of all sizes are jumping on the wonders of sentiment analysis (or opinion mining) to understand how customers perceive their brands, how their employees feel about particular subjects — and why they feel that way.

So now the question is: how do you get started with sentiment analysis?

Unless you want to spend hours coding and testing open source libraries, you’ll want an API that handles the complexities of natural language processing (NLP) and contextual understanding, while giving you the simplicity, granularity and flexibility that APIs are known for.

Turns out this is easier said than done. While finding a sentiment analysis API isn’t difficult in itself, choosing the most suitable API for real-time conversations is where it gets tricky.

The challenge with most sentiment analysis APIs

From Microsoft Text Analytics to Amazon Comprehend, you don’t have to look very far to find a sentiment analysis API. But analyzing polarity (positive, negative, neutral) in a conversation is just one piece of the puzzle.

Let’s say you’re analyzing customer support transcripts. A common objective here is to pinpoint what words or phrases trigger positive or negative sentiments in the customer. This insight ultimately helps management train their support agents so they know what words or phrases to use and which ones to avoid.

The problem is the grand majority of today’s APIs have yet to optimize sentiment analysis for particular business objectives. So in this customer support scenario, you’d know what magical phrases make customers happy, but not how to quickly distribute that knowledge to the rest of the company.

Essentially, most APIs hand you the data — and then it’s good luck to you.

Furthermore, not every API can go beyond analyzing polarity and into more granular territory like speaker ratio, silence, pace and other programmable variables. Let alone do it all in real time so those handy insights can be used when you actually need them.

Tips to choose the best sentiment analysis API

Here are a few practical tips to help you find the best sentiment analysis API for your project.

Set your objectives

The first question on your keen mind should be: what do you want to accomplish with sentiment analysis?

For example, if your end goal is to measure team engagement during company calls, then only knowing when team members are happy or sad just won’t cut it. You’ll also need aspects like how long each speaker talks for, how long they listen for, and which speakers tend to overlap.

You can then map those variables to API endpoints, which can then channel them into usable insights — like which employee needs a nudge to speak up and who could spend more time on mute.

Measure accuracy vs. performance

More often than not, sentiment analysis APIs will tout their incredible speed but skimp on NLP and contextual understanding. This means you could fully analyze a sales conversation at warp speed, but with less than accurate results.

For example, you might perform sentiment analysis on a sales call where the customer uses sarcasm (e.g. “Well thanks for being so helpful”) or a tone of voice that implies positive sentiments, when in reality they’re deeply unimpressed. An API that lacks contextual understanding simply wouldn’t be able to tell the difference.

On another note, you’ll also want to decide what constitutes an acceptable performance for your particular use case. For example, a healthcare or military application would likely demand a much higher level of accuracy, whereas scanning social media posts would prioritize speed to cover more posts in less time.

Decide whether you need machine learning 

Some APIs take a simple, rule-based approach to sentiment analysis. This means they keep a library of terms and assign a “sentiment weight” to each one. It’s good  enough for extracting sentiment from basic documents, but if you’re looking for a nuanced understanding of human conversations on social media, websites, calls and other mediums, you’ll need an API that leverages machine learning (ML).

One of the benefits of using an API is you don’t have to worry about being an expert in ML. You can just plug it in and start capturing sentiments. As a side note, if the API uses unsupervised ML (like neural networks and deep learning), it can learn as it goes, pick up new phrases and recognize their meanings in different contexts.

For example, it would know that the phrase “oh burn!” in a social setting won’t necessarily mean the same in a medical context. And you wouldn’t have to feed it context-specific data to learn the difference either.

Check for real-time analysis

When done in real time, sentiment analysis gives businesses the valuable advantage of identifying critical moments as they happen and take action right away.

For example, it could help social media managers flag an ad that’s receiving negative feedback (before it goes viral). It could alert a salesperson when a potential client is at their happiest during a call and ripe for an upsell, or detect a dip in workplace morale based on Slack messages so HR can swoop in and address the cause.

So if your use case is time-sensitive and you need to capture insights on the fly to make smarter decisions, go for an API that can run sentiment analysis in real time.

Say hello to Symbl.ai’s Sentiment Analysis API

To spare you from Googling an API that covers everything mentioned above, let me introduce you to Symbl.ai.

The Symbl.ai platform gives you a complete suite of conversation intelligence APIs that you can plug in to easily transcribe conversations, analyze sentiments with contextual accuracy, and then surface valuable insights wherever you need them — all in real time.

Unlike most APIs in this market, Symbl.ai’s Sentiment API goes the extra mile with:

  • Aspect-based sentiment analysis performed on real-time messages.
  • Polarity values that you can freely define and adjust after testing.
  • Out-of-the-box integrations to bring a human-level understanding to different contexts without upfront training data or custom classifiers.
  • Access to other valuable conversation analytics like speaker ratio, talk time, silence, pace, and overlap.

It’s also fully extensible, which means you can pluck any of the results from the analysis and plug it into other APIs to take your conversation data over the finish line. What’s more, Symbl uses WebSockets to stream and analyze audio/video in real time, so you can seamlessly integrate sentiment analysis via a browser or server.

Want to know more? You can read all about this impressive API and how it works in Symbl’s documentation. You can also jump into the Symbl.ai Slack channel to chat directly to the people who built the API.

Who said sentiment analysis had to be hard?

Additional reading

To dig further into the curious world of sentiment analysis and how to do it, check out these helpful links:

Avatar photo
Eric Giannini
Lead Developer Evangelist & Advocate