In this article, we'll be detailing the steps needed to hook up Botpress with Dashbot, a chatbot-specific analytics tool, with a free tier. We're including code you can copy and paste so you can properly catch the most common content response types with little to no work!
Why use something other than Botpress's built-in analytics? External Analytics allows you to pull data out of Botpress and use it in the platform of your choice. If you run different kinds of bots and want to merge them, or want more control over analytics, a dedicated solution like Dashbot can help you manage your analytics with greater ease & control.
For smaller projects, Dashbot will allow you to monitor engagement to see how your bot is doing generally speaking. You can also look up individual conversations to have a visual understanding of how conversations are going. If your chatbot is starting to take on a high volume, you can use Dashbot to customize your conversation to your liking. You can think of it like having Power BI for chatbot analytics.
Dashbot is free for 1000 messages / month, so you can easily try it out. It also has two other tiers, one for small medium chatbots with a much higher monthly message cap, and a custom Enterprise one. You can pick the plan that suits you.
Creating your bot in Dashbot and getting your API key
Adding the connection code + right API key in Botpress
Making sure everything works in Dashbot
The default behavior is for it to only send analytics if the development flag is set to true (DEBUG_DEV in the two middleware files) or for Production, you need to add an environment variable called EXPOSED_EXTERNAL_ANALYTICS and set it to true. You can add it where you are normally configuring Botpress environment variables.
That's it! Feel free to re-use this code for other tracking purposes. You could even send your analytics to Google Analytics, Segment, or any custom solution. You simply need to adjust the sendAnalytics functions to fit your implementation.
Discover the benefits of chatbots and how they can save you time while increasing revenue.