Before you go any further, first enable StackDriver logging.
The ability to do conversation analytics in Dialogflow is directly tied to the accuracy of your bot’s intent mapping. (Here is an article which talks about measuring your Dialogflow bot’s accuracy).
With all this in mind, here are some tips for doing conversation analytics in Dialogflow.
Improve intent mapping accuracy manually first
At the beginning, you will almost certainly be doing a lot of manual work analyzing your History and Training data inside Dialogflow. This will help make the intent mapping more accurate and make your conversation analytics data more useful.
Don’t use slot filling
Another reason to avoid slot filling (why I usually avoid slot filling) is the trouble you will have with your conversation analytics if you use Chatbase. They aren’t handled particularly intelligently in Chatbase (it uses sub-intents). This is to be expected when you realize that slot filling allows the user to send unlimited number of undetected messages before they exit the slot filling loop.
Minimize candidate intents
I recommend people use a context lifespan of 1 for their intents. This reduces the number of candidate intents at each step, and in turn makes it much easier to analyze your conversation analytics (because there are fewer unexpected intents in your Chatbase funnels).
Follow good conversation design principles
Generally speaking, you should try to make all training phrases within an intent as similar as possible (minimize intra-intent variation) while also trying to make training phrases from two different intents as unique as possible (maximize inter-intent variation). This is another way to help Dialogflow do better intent mapping.
Avoid doing your own NLU on the backend
Suppose you used the wildcard entity to do the job of the regexp entity before the Regexp entity was introduced. This means there is a step in your intent mapping where the NLU is not transparent to Chatbase (or any other conversation analytics system). This is why I recommend people avoid reinventing the NLU wheel in backend code, and instead use the explicative approach as much as possible (even if it means more intents in your Dialogflow agent).
See more tips in my Improving Dialogflow ES accuracy course.
This website contains affiliate links. See the disclosure page for more details.
"The magic key I needed as a non-programmer" The custom payload generator was the magic key I needed (as a non-programmer) to build a good demo with rich responses in DialogFlow Messenger. I've only used it for 30 minutes and am thrilled. I've spent hours trying to figure out some of the intricacies of DialogFlow on my own. Over and over, I kept coming back to Aravind's tutorials available on-line. I trust the other functionalities I learn to use in the app will save me additional time and heartburn. - Kathleen R Cofounder, gathrHealth