This section helps you get started with analyzing your assistant's conversations.
The examples use SQL queries together with an example visualization in Metabase.
For more metrics and categories of conversations,
see Types of metrics.
If you're connecting your assistant to multiple channels, it could be
useful to look at the number of sessions per channel, let's say per week.
The query you would need for this metric is:
Abandonment rate can be defined in many different custom ways,
however here we'll define it as a session ending without a user message
after a specific message was uttered by the bot, e.g. utter_ask_name.
You could adapt the metric to detect sessions ending without a user
message after a specific set of intents. The SQL query would look like this:
To improve your assistant, you could look into the variety of intents
your users express. The query below selects the top 5 intents which
could help you have a good perspective on that topic:
SELECT
"public"."rasa_user_message"."intent"AS"intent",
count(*)AS"count"
FROM"public"."rasa_user_message"
GROUPBY1
ORDERBY2DESC,1ASC
LIMIT5
Moreover, you can look for the intent distribution over time:
The escalation rate or human hand-off rate is a measure of the number of
conversations the assistant passes to a human agent. This metric can
help you gain a better understanding of what happens during a conversation.
Let's say you have an intent named handoff_to_support. You'll get the
escalation rate over time with this sample query for nlu-based assistants:
The resolution rate is a measure of the number of conversations the assistant can resolve without human intervention.
This metric can help you gain a better understanding of what happens during a conversation.
To understand which conversations are resolved, you can identify which flows are completed in the rasa_flow_status table.
You'll get the resolution rate for a particular flow with this sample query for CALM-based assistants:
The drop-off rate is a measure of the number of conversations that do not result in a completed flow.
This metric is the inverse of the resolution rate
(e.g. 100% - resolution_rate).
You can further drill down in finding the interruption rate for a specific flow:
Funnel metrics are a great way to understand how users are interacting with your assistant.
You can use funnel metrics to understand how many users are completing each step of a flow or how many users
are progressing through linked flows.
The query below selects the number of unique sessions for each linked flow in the chain formed of flow replace_card
linking to flow replace_eligible_card: