Sentiment Analysis of Survey Responses

Sentiment Analysis of Survey Responses

Your customer surveys contain both negative and positive responses, and you probably want to handle the negative responses first, given that they often contain more urgent issues.

Analyzing open-ended responses in customer surveys, and creating a report that will provide valuable insights, is easier said than done. It may take hours, days or even weeks to go through survey responses if you’re analyzing them manually.

So how can you speed up this process, and quickly detect problems that are leading to negative responses?

Sentiment analysis can help you automatically sort your survey responses in next to no time, so you can answer questions like:

  • How many negative responses did we receive?
  • What aspects of our product do customers love?
  • What aspects of our product do customers hate?
  • Has a particular product feature improved?

In this guide, learn how to perform sentiment analysis on your survey responses.

What Is Sentiment Analysis?

Sentiment analysis is the automated process of sorting opinions into positive and negative. Equipped with machine learning and natural language processing, a sentiment analysis model can understand human-generated text data in survey responses and tag them as positive, negative or neutral.

Sentiment analysis can also be combined with aspect classification to create an aspect-based sentiment analysis model. An aspect classifier can pinpoint different topics or themes that are mentioned in a survey response, for example, Price, UX, and Customer Support.

So, to learn how customers feel about a specific topic or product, you can combine a sentiment classifier and an aspect classifier.

Why is it Important to Analyze Sentiment in Surveys?

Analyzing qualitative data in survey responses can seem like a never-ending task if done manually. It’s tedious work, and agent time could be better spent on more important tasks.

That’s why it’s essential to automate this repetitive task using sentiment analysis tools. You can reduce the number of hours spent on survey analysis to just a few minutes.

Some of the main benefits of using sentiment analysis for processing survey responses are:

Get more accurate and better customer insights:

We often get tired, disagree with each other, and interpret things differently. So it’s not easy for a person, let alone an entire team, to tag survey responses consistently without any errors. A sentiment analysis model doesn’t hesitate when tagging – it tags all your data using the same criteria, so you can be confident that your insights are accurate.

Sentiment analysis, combined with topic analysis, can also help you pinpoint exactly where changes need to be made, so you’re never left second-guessing.

Analyze your customer surveys in real-time:

Are customers upset with a price change you recently made? Did yesterday’s bug affect customer experience? You know that tackling problems and spotting opportunities is hard when you’re out of step with customer feedback. With sentiment analysis, you can analyze your customer survey data as soon as it appears in your help desk. This way, you can take immediate action on any urgent issues.

Scale easily as your data grows:

Thousands of survey responses are processed every week and it’s unrealistic for teams to deal with them manually. Long hours of manual work could be redirected to more human-dependent tasks. By implementing sentiment analysis into your processes, you can let machines do this repetitive work for you. AI sentiment analysis tools like MonkeyLearn let you scale up or down as needed, so you only pay for the data you analyze.

Tackle problems before they grow:

Sentiment analysis can help you improve customer experience by detecting negative survey responses right away. Besides ensuring that customers feel like you’re listening to them, you can tackle problems before they turn into something bigger. By taking action sooner than later, you can even turn a bad experience into an exceptional one.

How to do Sentiment Analysis of Survey Responses

Sentiment analysis is no longer exclusive to developers or data scientists thanks to the advent of user-friendly and easy-to-use machine learning tools. Once you learn how to use them, you’ll stop wasting valuable time on tedious work. But first, let’s see how you can apply it to your day-to-day work.

Gather Survey Responses

The first thing you’ll need is data (survey responses)to train your sentiment analysis model

There are different ways to gather your survey responses depending on what survey tool you use. We’ll cover the most popular ones below:


SurveyMonkey is one of the most popular tools for creating online surveys. It offers the possibility of exporting survey responses to a CSV or XLS file for paying clients. Just go to the ‘Analyze Results’ section of the survey, click on ‘Save As’ and ‘Export file’. There you will have to choose between ‘All Summary Data’ (to organize the survey by question) or ‘All Responses Data’ (to organize the survey by respondent). Don’t forget to select ‘Include Open-ended Responses’, since this is what you’ll be analyzing with a sentiment analysis model:


Another popular tool for creating online surveys is Typeform. Unlike SurveyMonkey, Typeform allows all users (free and paid) to download responses in a CSV or XLS file. In your Typeform survey, click on ‘Download all responses’:

Next, Typeform will ask you to choose the format you want to use to download the survey responses. Choose the option you want and then click the ‘Download’ button:

And voilà! You’ll have your survey data on your computer.

Google Forms

You can easily open up your Google Forms on a Google Sheet by going to the ‘Responses’ tab and then clicking on the Google Sheet icon:

Now, download the responses as a CSV or Excel file by going to ‘File’ > ‘Download as’:

And you are good to go.

Creating a Sentiment Analysis Classifier

Now that you have your survey responses in a spreadsheet, the next step is to create your very own sentiment analysis model. Once trained, this model will automatically analyze new survey responses and sort them by positive, neutral or negative.

Follow this tutorial, below, to create a sentiment analysis model using your own data:

1. Create a model:

Sign up to MonkeyLearn for free – a no-code platform that allows you to analyze text with machine learning.

Go to the dashboard and click on ‘Create Model’ in the top right-hand corner. Then, select your model type, in this case a ‘classifier’:

2. Choose Sentiment Analysis:

3. Import your survey responses:

It’s time to choose the source of your survey responses, which you will use as training examples for your sentiment analysis model. You can upload survey responses from a [CSV or Excel file](, or use one of the third-party integrations:

Step 3: import your data in an Excel or CSV file

4. Start training your model:

It’s time to start manually tagging survey responses as positive, neutral or negative, so that your model can begin to learn from your criteria. Just click on the correct tag, select ‘Continue’ and a new response will appear:

Soon enough you’ll see that the model will begin to make predictions. If they aren’t accurate, that means your model needs further training. The more text examples that you feed your model, the more precise it will become.

5. Testing your model:

How do you know when your model is ready? There’s only one way to be sure: by testing it. Go to the ‘Run’ tab and write a series of mock reviews in the text field to see if your model can accurately analyze them. If your model is making the right predictions, then you know it’s working.

If the predictions aren’t quite there yet, continue training your model by going to the ‘Build’ tab and tagging more examples. Good things come to those who wait, so be patient!

You have other ways of checking the accuracy of your machine learning model. For instance, if you click on ‘Build’ > ‘Stats’, you can see the accuracy and F1 score for the overall model:

And precision and recall for a specific tag:

Don’t worry, all these terms are explained here, along with how you should be using them to improve your model. Take into account that in order to see performance stats, you need to have tagged at least four texts per sentiment.

In the stats section, you can also check out the keyword cloud, which is a good way to check which words are more easily associated with their corresponding tag (the words will appear bigger).

Have you been training your model for a while, without any luck? Make sure you check to see if there are any false positives or false negatives by going to ‘Build’ > ‘Data’. Spotting false positives and negatives and re-tagging them can help you get your model back on track, since incorrect tagging could be disrupting your sentiment analysis predictions and ‘confusing’ your model.

6. Start using your model!

Once your sentiment analysis model is accurate, you can upload new survey responses to get predictions! In order to do this, you have three options:

The first option is clicking on ‘Run > ‘Batch’ and uploading a CSV or Excel file to run a sentiment analysis on new survey responses. Just click on ‘New batch’, select the file on your computer and the sentiment analysis model will analyze the responses within seconds:

When complete, the survey responses will download to your computer with their corresponding predictions.

Another option is to connect your model to tools you already use using one of the available integrations:

Last but not least, if you know how to code, MonkeyLearn’s API is readily available to analyze your data programmatically:

Creating an Aspect Classifier

Now that you have your sentiment analysis classifier, it’s time to create an aspect classifier! Creating an aspect classifier is pretty similar to creating a sentiment analysis classifier, with some minor differences. Let’s go over them.

First of all, you’ll have to pick ‘topic classification’ instead of ‘sentiment analysis’ and select your data source to train the model. Same thing so far. But here comes the difference: after uploading the data, you’ll have to define your tags. In other words, what aspects or topics you want to detect within your survey responses:

Pick your tags depending on which topics you would like to get insights on. Keep in mind that the more tags you have, the more data you will need to upload to train your model.

After that, it’s time to train your model. Once predictions are accurate, you can upload new survey responses in a CSV or Excel file, use one of MonkeyLearn’s integrations or the API.

Are you hoping to combine aspect and sentiment analysis? You can upload the CSV or Excel file with the survey responses and their corresponding sentiment analysis predictions. The tool will run the analysis and give you a table with all the sentiment and aspect tags. The same goes for integrations. First, you run the survey responses through your sentiment analysis model, then through the aspect classifier, and you’re good to go!

Automating the Whole Process with Zapier

Ok, you know how to create some useful models to analyze your survey responses automatically, but you still have to do all the clicking, uploading and downloading yourself… could you also automate this process? Luckily, it’s possible to automate the whole process with a tool like Zapier! But what is it? Zapier is a tool that automates tasks between apps via a seamless integration (called a Zap) that you can easily set up. Basically, you set a trigger that causes an action to pass data back and forth.

It’s all very abstract so far, so let’s illustrate it. Say you get your surveys from SurveyMonkey. In this case, you could do the following:

  • Set a new survey response from SurveyMonkey as the trigger.
  • Set it to do the sentiment analysis of that survey response via MonkeyLearn as the action.
  • Set it to do a survey response aspect classification via MonkeyLearn as the action.
  • Finally instruct the zap to save the survey response and the aspect-based sentiment analysis results on a tool of preference, say Google Sheets.

Great in theory, but how does it come about? The process (or zap, as they call it) is quite straightforward since Zapier has an integration for MonkeyLearn.

1.Log into Zapier or create an account. You can try out the free trial version with multi-step zaps for 14 days.

2. Create a new zap by clicking on the orange ‘Make a Zap!’ button on your dashboard.

3. Now, you’ll have to set your trigger app. In this case, SurveyMonkey, the app that receives our survey responses. But what will be the specific trigger? An incoming survey response. You can select ‘New Response Notification with Answers’ in the ‘Select SurveyMonkey trigger’ section:

Remember to click on ‘Connect to Account’ to get your surveys from SurveyMonkey.

4. Now that we have new responses triggering our zap, we need to set our first action. Go on and add a second step to your zap and select MonkeyLearn as the app. Then, select ‘Classify text’ as the specific action. You’ll also have to click on ‘Connect to Account’ and paste your MonkeyLearn API Key:

Once that’s done, click on ‘Continue’ and select your sentiment analysis model as the classifier you want to use, and the SurveyMonkey response from step one of the zap as the text to analyze:

Keep in mind that to get your surveys analyzed by aspect, you’ll have to follow these steps once more, and select the topic classifier instead.

5. To get the results on Google Sheets, you should add an additional step to your zap after sentiment and aspect analysis. Just click on ‘Add a step’, choose Google Sheets as your desired app and connect your account. Click on ‘Continue’ and select the spreadsheet you want to use. Finally, select ‘Continue’ and your analysis will be automatically added to your Google Sheet!

6. Click ‘Finish’, name your zap, and turn it on!

Data Visualization of the Results

Now, thanks to automatic sentiment analysis on your survey responses, you have the insights about how customers view your products or services.

The thing is, long tables with numbers have a hard time conveying the information. Just picture scrolling through a long list of survey responses with numbers… how would you make sense of that without dozing off? That’s why most companies use data visualization tools to create very visual reports that can help your team grasp the information easily.

Here, we’ll cover the most popular data visualization tools to visualize your results. Read on!

MonkeyLearn Studio

MonkeyLearn also provides you with the tools to visualize your data, helping you streamline your data analysis and visualization process. MonkeyLearn Studio allows you to filter by aspect, sentiment, keyword, and more, to get detailed insights about your products. And you can see your results appear in real-time, and jump back to a specific moment in time.

Take a look at this Studio dashboard showing an aspect-based sentiment analysis we performed on a set of Zoom reviews:

Studio dashboard showing an aspect-based sentiment analysis on a set of Zoom reviews

Request a demo

Google Data Studio

With Google’s visualization tool you can easily cross your aspect classification with your sentiment analysis results to create all kinds of graphs and reports. To start off, you can connect Google Data Studio to your source of results, whether it’s an app such as Google Sheets, a CSV or an Excel file. just select it and click on ‘Connect’ and ‘Add to report’.

A blank sheet will open up: this means it’s time to pick the chart you want to use from the toolbar above. Once that’s ready, you can easily share it with your team and choose who can view it and who can edit it.

In case you want in-depth tutorials to get the hang of Google Data Studio, check these out.


Besides providing easy integrations, Looker comes with an alluring feature: you can zoom in on specific data within a graph. For example, by selecting your filters you can get a more detailed view of the negative and positive responses of one aspect, let’s say, ‘UX’. Moreover, you can interact with data in real time.

To get a closer look at Looker, there are really user-friendly tutorials available on their Youtube channel.


Besides offering an easy-to-use drag-and-drop UI to build your graphs and charts, Tableau also comes with an easy connection to your data source. MonkeyLearn’s analysis results are downloaded as CSV or Excel files which you can upload to Tableau to create beautiful charts and visualizations.

If you decide to check this tool out, it may be a good idea to check out this tutorial.

There are more data visualization tools that may suit your needs, like Mode Analytics. This tool provides a cool interaction with the charts and, more importantly, comes with a Slack integration (that can definitely come in handy if your team communicates via Slack). Another tool is Klipfolio, but be warned that it’s easier for cloud integrations. If you want to upload an Excel file, you may need to do a bit of homework.


Open-ended survey responses provide valuable insights that can help you understand your customers’ needs and frustrations, and sentiment analysis can help you prioritize accordingly to provide the best possible customer experience.

Within a few hours, you can share valuable insights with your team and start making decisions that give yourbusiness a competitive advantage.

Interested in learning about how you can use sentiment analysis on survey responses? Request a demo from one of our experts.

Federico Pascual

April 25th, 2019

Posts you might like...

MonkeyLearn Logo

Text Analysis with Machine Learning

Turn tweets, emails, documents, webpages and more into actionable data. Automate business processes and save hours of manual data processing.

Try MonkeyLearn
Clearbit LogoSegment LogoPubnub LogoProtagonist Logo