Tableau is a great tool for visualizing structured data but how well does it work for unstructured data.
It took a bit of database tinkering to make the open-ended feedback analysis results suitable for Tableau. Tableau likes data in which each data record (in our case customer's survey reponse) is on one row. The challenge with open-ended customer feedback comes from the fact that almost all customer's talk about multiple service aspects or categories ('topics').
You could, of course, create a separate table for each customer response but this would create a large number of small tables. In order to avoid this our CTO came up with an elegant and simple solution: each 'topic' (mention in a customer response) is a separate row in the data table.
This creates another problem: the number of rows in the data table doesn't match the number of responses. (There is an easy remedy to this. Just create a new calculated 'measure': countd([Signal Id]))
Once the database is correctly structured the report creation is simple
The data set I used in this example is a transactional Net Promoter Score (TNPS) survey for a grocery store chain with six stores.
The screen shot below demonstrates that the database is well optimized for Tableau. Categories and Sentiment are just Tableau Dimensions.
This chart demonstrates the problem areas in which either the 'topic' count is high (in this case the number) or the average sentiment color is not green.
For that I had to figure out how to get both pieces of information into the same box (Square in Tableau language). I did this by using the two measures 'topic' sentiment and number of records (in this case not the number of responses, but 'topic' mentions).
How to design a customer feedback analysis dashboard using Tableau
One of the most important things in customer feedback analysis is to figure out the optimum way to filter and drill down to the actual comments. That is why in all of my feedback analysis dashboards the actual customer comments are on the left side of the dashboard. Here the comments are not the whole customer comments. What is displayed here is the sentence from which the feedback analysis service detected the 'topic' mention.
The main challenge in the Tableau dashboard design doesn't come from the text analysis results but how to display the background variables (metadata on the text comment). In this case they are GENDER and AGE GROUP. There were many more background variables in this dataset but I decided to ignore them for simplicity's sake: there is just that much real estate in one screen.
How to turn red into green?
According to the dashboard above it seems that the Birmingham customers are most unhappy with the topic STORE LAYOUT. The next step is to figure out the root cause for this problem. That is easy to do by limiting the actual customer comments to negative sentiment, NPS detractors and STORE LAYOUT, and then reading through all the comments on the right.
Usually reading the first five to ten comments will give you pretty good idea for the root cause. In this case it was staff members leaving stacking carts during business hours unattened on aisles blocking customers access.
If you want to find out how to create a word cloud (in this case 'topic' could) using Tableau, read this post. If you want to dig even deeper I wrote another blog post about the different Tableau chart types and how well they work for text analysis.
We recently wrote a white paper about text analysis reporting and visualization. There are dozens of charts in this document all created using Tableau.