Use this article to discover the metrics and attributes you can use to build Explore reports based on your usage of Zendesk bots. These datasets are also used for the Answer Bot prebuilt dashboards (see Overview of the Answer Bot dashboard ).
For more information about how to create reports with Explore, see Creating reports.
Article Recommendations dataset
Article Recommendations schema
Use this diagram to help you understand the elements of the Article Recommendations dataset and their relationships.
Article Recommendations metrics
This section lists and defines all metrics available in the Article Recommendations dataset.
Metric | Definition | Explore formula |
---|---|---|
Attempts | All instances in tickets and chats where Article Recommendations was available to recommend articles, regardless of whether the bot identified relevant articles to suggest. | [Answer ID] |
Answers | Instances in tickets and chats where the bot identified articles relevant to a customer’s query and suggested them to the customer. | IF ([Answer status - Unsorted]="Offered" OR [Answer status - Unsorted]="Clicked" OR [Answer status - Unsorted]="Resolved") THEN [Answer ID] ENDIF |
Unsuccessful attempts | Instances in tickets and chats where the bot could not identify any articles relevant to a customer’s query and did not make a suggestion to the customer. | IF ([Answer status - Unsorted]="Unoffered" ) THEN [Answer ID] ENDIF |
Clicks | Counts successful attempts where at least one generated suggestion was clicked. | IF ([Answer status - Unsorted]="Clicked" OR [Answer status - Unsorted]="Resolved") THEN [Answer ID] ENDIF |
Resolutions | Count of recommended articles that resolved the end user’s request. | IF ([Answer status - Unsorted]="Resolved") THEN [Answer ID] ENDIF |
Indirect resolutions | The number of recommended articles that indirectly resolved
the end user’s request.
In some situations, suggested articles don’t resolve the customer’s enquiry directly but instead point them in the right direction in the help center to find the answer to their question. These resolutions are known as indirect resolutions. Indirect resolutions are reflected in Resolutions, Indirect resolutions and Answer status fields. |
D_COUNT(Resolutions)-COUNT(Resolution articles) |
% Suggestion rate | The percentage of enquiries where the bot offered suggestions from the total number of enquiries it attempted to answer. | D_COUNT(Offered answers)/D_COUNT(Attempted answers) |
% Resolution rate | The percentage of enquiries resolved from the total enquiries where it offered suggestions. | COUNT(Resolutions)/D_COUNT(Offered answers) |
Suggested articles | Count of the suggestions offered. | [Suggestion ID] |
Clicked articles |
The number of suggestions that have been clicked by a user. |
IF ([Suggestion clicked]="true" ) THEN [Suggestion ID] ENDIF |
Resolution articles | Count of solved tickets solved through a suggestion. | IF ([Suggestion resolved]="true" ) THEN [Suggestion ID] ENDIF |
Rejected articles | The number of suggestions that have been marked as unhelpful by end users. |
IF ([Suggested article rejected]=TRUE) THEN [Suggestion ID] ENDIF |
% Article click-through rate | The percentage of suggestions that have been clicked by an end user. | COUNT(Clicked suggestions)/COUNT(Suggestions) |
% Rejection rate | The percentage of suggestions that have been marked as unhelpful by end users. | COUNT(Rejected articles)/COUNT(Suggested articles) |
Answered tickets | Count of tickets where articles were recommended, a suggestion was clicked, and this resulted in the ticket being solved. | IF ([Answer status - Unsorted]="Offered" OR [Answer status - Unsorted]="Clicked" OR [Answer status - Unsorted]="Resolved" ) THEN [Answer ticket ID] ENDIF |
Unanswered tickets | Count of tickets where a suggestion was not given. | IF ([Answer status - Unsorted]="Unoffered" ) THEN [Answer ticket ID] ENDIF |
Answer clicked tickets | Count of tickets where a suggestion was generated that resulted in the ticket being resolved. | IF ([Answer Status - Unsorted]="Clicked" OR [Answer status - Unsorted]="Resolved" ) THEN [Answer ticket ID] ENDIF |
Solved tickets |
Count of tickets with a status of Solved. |
IF ([Answer status - Unsorted]="Resolved") THEN [Answer ticket ID] ENDIF |
Non-reopened solved tickets | Count of tickets with a status of Solved, that have not been re-opened. | IF ([Answer status - Unsorted]="Resolved" AND VALUE(Reopens)<1) THEN [Answer ticket ID] ENDIF |
Reopened solved tickets | Count of tickets that were set to a status of Solved and were subsequently re-opened. | IF ([Answer status - Unsorted]="Resolved" AND VALUE(Reopens)>0) THEN [Answer ticket ID] ENDIF |
Agent unassisted solved tickets | Count of tickets with no Assignee set, and with a status of Solved through a suggestion. | IF ([Answer status - Unsorted]="Resolved" AND VALUE(Agent replies)<1) THEN [Answer ticket ID] ENDIF |
Agent assisted solved tickets | Count of tickets that are assigned to an agent, where the agent has replied, and the ticket status is Resolve using a suggestion. | IF ([Answer status - Unsorted]="Resolved" AND VALUE(Agent replies)>0) THEN [Answer ticket ID] ENDIF |
% Ticket usage rate | The rate of tickets that were assisted by suggestions in comparison to total number of tickets. | DCOUNT_VALUES([Answer ticket ID])/DCOUNT_VALUES([Ticket ID]) |
% Ticket resolution rate | The percentage of tickets resolved by suggestions compared to the total solved ticket volume where a response was given. | D_COUNT(Solved tickets)/D_COUNT(Answered tickets) |
% Ticket non-reopened resolution rate | The rate of ticket resolutions that have not been re-opened provided by suggestions in comparison to total tickets where an answer was generated. | D_COUNT(Non-reopened solved tickets)/D_COUNT(Answered tickets) |
% Ticket unassisted resolution rate | The rate of ticket resolutions provided by suggestions in comparison to total tickets where an answer was generated. | D_COUNT(Agent unassisted solved tickets)/D_COUNT(Answered tickets) |
Click time (min) | The duration in minutes between a suggestion being generated and this suggestion being clicked. | (Click time (min)) |
Resolution time (min) | The duration in minutes between a suggestion being generated and this suggestion solving the ticket. | (Resolution time (min)) |
Click time (hrs) | The duration in hours between a suggestion being generated and this suggestion being clicked. | VALUE(Click time (min))/60 |
Resolution time (hrs) | The duration in hours between a suggestion being generated and this suggestion solving the ticket. | VALUE(Resolution time (min))/60 |
Agent replies | Counts the total number of agent replies to a ticket. | (Agent replies) |
Reopens | The number of times a ticket status changed from Solved to Open. | (Reopens) |
Article Recommendations attributes
This section lists and defines all attributes available in the Article Recommendations dataset. You can use this diagram to help you understand the meaning of some of the attributes in the list:
Attribute | Definition |
---|---|
Answer status | The status of a suggestion provided. The status is set depending on the end user's response. Values include Unoffered, Offered, Clicked or Resolved. |
Answer channel | The channel on which a suggestion was offered to an end user
or agent. Values include:
|
Answer brand | The brand of ticket corresponding to the brand of the knowledge base where a suggestion for an answer was generated. |
Answer enquiry | The end user’s question for which suggestions were offered. The attribute values are limited
to the first 255 characters. This attribute does not include the Generate a reply and Don't answer based on articles bot response options. To report on these, use the Content text attribute in the Flow Builder dataset. |
Answer ID | The ID of the notification with suggestions sent. |
Answer resolution article ID | The ID of the knowledge base article which resolved the end user’s enquiry. |
Answer ticket ID | The ID of the ticket from which the response was triggered. |
Suggested article clicked | The event of the suggestion generated being clicked by an end user. Values are True and False. |
Suggested article resolved | The event of the suggested article being clicked from the answer generated that led to the ticket being resolved. Values are True and False. |
Suggested article rejected | The article suggestion generated being marked as unhelpful by an end user. Values are True and False. |
Suggestion ID | The ID of the knowledge base article suggestion sent. |
Suggested article language | The language of the knowledge base article suggestion sent. |
Suggested article locale | The locale of the knowledge base article suggestion sent. Values include EN-US, EN-GB, DE, FR, RU. |
Article ID | The ID of the knowledge base article. |
Article ID and locale | The ID and locale of the knowledge base article. |
Article translation title | The title of the knowledge base article in a specific language. |
Article translation URL | The URL of the knowledge base article. |
Article author | The name of the user who originally created a knowledge base article. |
Ticket ID | The ID number of the ticket. |
Ticket status | The current status of the ticket. |
Ticket group | The name of the group where the ticket was assigned. |
Ticket assignee | The name of the user to who the ticket is assigned. |
Ticket brand | The brand of the ticket. |
Ticket channel | The channel a ticket was created from.
For more information about the ticket channels Explore collects, see Understanding ticket channels in Explore. |
Ticket form | Ticket form used on the ticket. |
Ticket organization | The name of the organization associated with the ticket. |
Ticket priority | The ticket’s priority. |
Ticket problem ID | The ID of the associated problem ticket. |
Ticket requester | The name of the user that requested the ticket. |
Ticket satisfaction rating | The satisfaction rating of the ticket, Good or Bad. |
Ticket subject | The subject of ticket. |
Ticket tags | The tags associated with a ticket.
For information about filtering reports using tags, see Reporting on ticket tags using filters. |
Ticket type | The ticket type. |
Sharing agreement inbound | Affiliated instances of Zendesk Support and companies who share tickets with the current instance of Zendesk Support. |
Sharing agreement outbound | Affiliated Zendesk accounts and companies tickets are shared with. |
User name | The name of the user who was assisted. |
User role | The role of the user who was assisted. |
User ID | The ID of the user who was assisted. |
User email | The email address of the user who was assisted. |
User locale | The locale of the user who was assisted. |
User status | The Zendesk status of the user who was assisted. Values are Active, Suspended or Deleted. |
User tags | A list of tags associated with the user who was
assisted.
For information about filtering reports using tags, see Reporting on ticket tags using filters. |
User time zone | The time zone of the user who was assisted. |
User organization name | The organization name of the user. |
User organization ID | The organization ID of the user. |
User organization domains | The domain name of the organization of the user, for example, zendesk.com. |
User organization status | The system status of the organization of the user, either active or deleted. |
User organization tags | The tags associated with the organization of the user.
For information about filtering reports using tags, see Reporting on ticket tags using filters. |
Intent
(Requires intelligent triage ) |
A prediction of what the ticket is about. To see the possible values, open the Taxonomy tab of the Intent settings pageto see the AI Intents list under the Taxonomy values heading. |
Intent confidence
(Requires intelligent triage ) |
The likelihood that the intent prediction is correct. Possible values are High, Medium, and Low. |
Language
(Requires intelligent triage ) |
A prediction of what language the ticket is written in. To see the possible values, open the Taxonomy tab of the settings page. |
Language confidence
(Requires intelligent triage ) |
The likelihood that the language prediction is correct. Possible values are High, Medium, and Low. |
Sentiment
(Requires intelligent triage ) |
A prediction of how the customer feels about their request. Possible values are Very Positive, Positive, Neutral, Negative, and Very Negative. |
Sentiment confidence
(Requires intelligent triage ) |
The likelihood that the sentiment prediction is correct. Possible values are High, Medium, and Low. |
Time – Answer Bot answer created | Includes several Answer created attributes that refer to the time when an answer was generated containing relevant knowledge base articles. |
Time – Answer Bot answer last event | Includes several Answer event attributes that refer to the last answer notification. |
Time – Answer Bot suggested article last event | Includes several Suggested article event attributes that refer to the last time a suggestion was triggered. |
Time – Answer Bot suggested article clicked | Includes several Suggested article clicked attributes that refer the time a suggested article was clicked from an answer. |
Time – Answer Bot suggested article resolved | Includes several Suggested article resolved attributes that refer to the time a suggested article was clicked from an answer, which led to ticket being resolved. |
Time – Ticket created | Includes several attributes that return the time and date when tickets were created. |
Time – Ticket solved | Includes several attributes that return the time and date when tickets were solved. |
Time – Ticket last updated | Includes several attributes that return the time and date when tickets were last updated. |
Time – Article created | Includes several attributes that return the time when an article was created. |
Time – Article updated | Includes several attributes that return the time when an article was last updated. |
Flow Builder dataset
Flow Builder metrics
This section lists and defines all metrics available in the Flow Builder dataset.
Metric | Definition | Explore formula |
---|---|---|
Total users | The number of unique users who received a message from the bot. A user does not have to engage with the bot (sending a message or clicking a quick reply) to be included in this count. | [Sunshine Conversations app user ID] |
Engaged with bot | The number of unique users who have sent a message to the bot or responded to a prompt. | IF ([Activity event type] = "user_input_received") THEN [Sunshine Conversations app user ID] ELSE NULL ENDIF |
Transferred to agent | The number of unique users who have successfully completed the transfer step from the bot to an agent. A Support ticket is created for each successful transfer. | IF ([Activity event type] = "agent_transfer_completed") THEN [Sunshine Conversations app user ID] ELSE NULL ENDIF |
% total users who engaged with bot | The percentage of total users who have sent a message to the bot or responded to a prompt. | D_COUNT(Engaged with bot) / D_COUNT(Total users) |
% engaged users transferred to agent | The percentage of engaged users who have successfully completed the transfer step from the bot to an agent. | D_COUNT(Transferred to agent) / D_COUNT(Engaged with bot) |
User input count | The total number of user inputs (messages of any type) received by the bot. | [Content text] |
Total users in previous 30 days | The total number of users in the period from 62 days to 32 days before today. | |
Total users in last 30 days | The total number of users in the period from 31 days ago to yesterday. | |
Engaged users in previous 30 days | Users who engaged with the bot in the period from 62 days to 32 days before today. | |
Engaged users in last 30 days | Users who engaged with the bot in the period from 31 days ago to yesterday. | |
Transferred users in previous 30 days | Users who were transferred from the bot to an agent in the period from 62 days to 32 days before today. | |
Transferred users in last 30 days | Users who were transferred from the bot to an agent in the period from 31 days ago to yesterday. | |
Containment rate | The proportion of engaged users whose conversation was not transferred from the bot to an agent. The inverse of % transferred to agent. | |
Resolution feedback prompts |
The number of times the bot asked for feedback via an “Ask if question resolved” step. Note: This metric and the following metrics are counted based on each instance of the event and not aggregated per user. So if a user went through the same flow and replied to a feedback prompt more than once, this metric counts each instance of a prompt being sent or a feedback reply interaction. |
|
Resolution feedback replies | The number of feedback prompt replies received by the bot. | |
% resolution feedback replies | The proportion of times the bot received a reply after sending a feedback prompt. This is the count of replies of any type divided by the count of prompts sent. | |
Resolved feedback replies | The number of resolved feedback prompt replies received by the bot (for example, “Yes, problem solved”). | |
% resolved | The proportion of total replies that were resolved replies. This is the count of resolved replies divided by the count of total replies. | |
Unresolved feedback replies | The number of unresolved feedback prompt replies received by the bot (for example, “No, I still need help”). | |
% unresolved | The proportion of total replies that were unresolved replies. This is the count of unresolved replies divided by the count of total replies. |
Flow Builder attributes
This section lists and defines all attributes available in the Flow Builder dataset.
Attribute | Definition |
---|---|
Brand ID | The ID of the brand associated with the bot the user engaged with. |
Brand name | The name of the brand associated with the Flow Builder flow the user engaged with. |
Sunshine Conversations app user ID | The unique identifier of the user participating in a messaging conversation. |
Activity event type | The event type recorded as a result of certain bot
conversation interactions. Values include: Conversation
started (journey_started), Engaged with bot
(user_input_received), Transferred to agent
(agent_transfer_completed), (resolution_prompt_sent),
(subflow_switched), and (user_feedback_received).
Events are recorded only for published answers. If answers are removed, unpublished, or renamed, historical data isn’t affected. |
Channel | The Zendesk channel where the interaction took place. In Sunshine Conversations terminology, a “channel” is referred to as “source.type”. |
Time - Activity occurred | Includes several attributes that return the time and date when an activity (Conversation started, Engaged with bot, or Transferred to agent) happened. |
Language | The standard name for a language (for example, Simplified Chinese). |
Language code | The shorthand code for a language (for example, zh-CN). |
User input type | The type of user input received by the bot. Possible values include Option selected, Message sent, Form sent, and Unknown. |
Content type | This is effectively the same as user input type. User input type is the human friendly name, while content type is the raw value used by the system. |
Content text | The text of the message sent to the bot. This includes only messages sent as a result of selecting a quick reply option (the Option selected value in the User input type attribute). Free text entered by end users is returned as blank values. |
Answer ID | The ID of the answer. |
Answer name | The name of the answer. This is referred to as “intent” when creating an answer in bot builder. |
Answer type |
The type of answer. Possible answer types are:
|
Option is resolution feedback | Indicates whether the type of option selected
was a resolution feedback reply, as opposed to a standard
option. Possible values are
true
or
false. An
attribute of the
user_input_received event. |
Resolution feedback reply | Indicates how the user replied to the
resolution feedback prompt (when the bot asks for feedback
via an “Ask if question resolved” step). Possible values are
Resolved
or
Unresolved. An attribute of
the
user_feedback_received event. |
27 comments
Dallin Harmon
Thank you Zendesk. I am excited to dig into these analytics and improve our customer experience.
Do you happen to know if we will increase the count number of 1000 steps on the FlowBuilder? I believe once we have this fully optimized to our liking and the liking of our customers, this won't be sufficient for our needs. Does a higher plan allow you have access to more steps within the flow?
0
Daniel Aron
Hi Dallin Harmon we have some major Flow Builder enhancements planned in the 9 month roadmap that will increase the number of steps that can be configured beyond the current limit. Plan type has no bearing on the current limit.
As a temporary solution we have a feature flag available that will extend the step limit from 1,000 to 2,000. However, please note that exceeding 1,000 steps may impact the performance of the Flow Builder admin interface.
0
Dallin Harmon
That is really good to know. Thank you. How do we contact someone from Zendesk to get that flag put on our account. We will be very careful and cautions in adding additional steps.
0
Elaine
Right now, as per the article Limitations in messaging functionality -- Volume limitations, the number of steps in a Flow Builder bot flow is only up to 1000 steps at the moment.
I'm not sure about the feature flag that was previously mentioned by my colleague, but I recommend you submit a product request or feedback on the Flow Builder enhancements in the General Product Feedback topic in our community to engage with other users who have similar needs and discuss possible workarounds. Conversations with a high level of engagement ultimately get flagged for product managers to review when they go through roadmap planning.
We truly value customer feedback and your voice and votes in the forums help influence future Zendesk functionality. Stay safe!
0
Daniel Aron
Hi Dallin Harmon, i'll reach out to you directly via email about the feature flag.
0
Richard Jacobs
Hey there, do you happen to know if this data is available via an API?
0
Gab Guinto
I'm afraid there are no public facing APIs available for Answer Bot metrics. Currently, the only way to pull up these metrics is through Explore.
1
Alexan
I am having some issues to get data for the % of users who are selecting the "transfer to agent" option in our flow builder. I tried using "count" with the keyword of "Or, chat with an agent" but it was double counting it. I also tried using count of "activity event" attribute but it was not giving me count of users who transferred to agent
![](/hc/user_images/YjFSwIz2lyEnrt5sfzY9wA.png)
Currently I am able to get the % of users who opts to "transfer to agent" if it was in the 1st level of my flow builder where I have only 2 options: self service or transfer to agent
However, for users who selects the self service flow, i have 2 to 4 additional layers for self service where they can be self-guided in our articles based on common categories. User will subsequently be prompted to end the self service flow or choose to transfer to agent (if they have not found the answer to their question).
I'd like to know the ratio of users who are opting to transfer to agent on every flow provided to them (excluding the 1st level flow).
1
Daniel Aron
Hi Alexan,
Thanks for your feedback. We are currently working on the next iteration of the Flow Builder dataset and dashboard which will include capturing performance metrics for every answer flow so you have more granular insights. I believe this will provide what you're looking for. We currently expect to release this enhancement in late Q4.
1
Jake Smith
Hey Daniel Aron,
Is there a more specific release date for this yet? We are in Q4 and without this reporting Flow Builder isn't a tool we can fully roll out.
Thanks,
Jake
1
Vincent Aditya
Hello,
I have a question regarding the "engaged with bot" metric in our Zendesk system. Currently, every user who contacts us is directed to the answer bot, so logically, all of them should be counted in the "engaged with bot" metric, right? However, when we analyze the data, we've noticed that some customers who contact us are not included in the "engaged with bot" metric. I'm curious to understand why this discrepancy exists and why these customers are not being counted.
1
Adam Goodell
Is there a way to filter roles from the Total Users metric? For example, filtering for end-users or agents.
0
Freyja
Hello, I have a question regarding the metric agent_transfer_completed. Is this related only to live chat? Because we don't have live chat but only the option to contact us by opening a ticket via mail. We would like to track the tickets coming from the chatbot only to measure his performance since it has been launched just yesterday. Is it possible? If yes, which is the best way to track them? Thanks
1
Sean O'Neill
I have a question which I am struggling to answer, or simply missing the point. I want to know what the 'Answer Enquiry*' is on the conversations handled by the bot and not passed to an agent on a ticket. I also want to know what 'article/auto-reply' is recommended off the back of the enquiry. All the above information relies on there being a ticket created doesn't it?
* Side note, why 'Answer Enquiry', why not simply 'Customer Question', I can't see the logic in the naming of this field, or again, maybe I am missing something?
2
Brighton
If we get feedback on a specific end user that used the bot and would like to see their journey through the flowbuilder, what kind of report would we be able to build to find that information?
Id like to be able to search the end user email and/or name and find their flowbuilder "transcript" even if they werent xfrd to an agent. Thanks!
3
Mike DR
0
Vaibhav Bhardwaj
Resolution minutes - The duration in minutes between a suggestion being generated in Answer Bot, and this suggestion solving the ticket.
Could you help me understand how exactly the time is calculated??
1. When the customer hits 'Does this article answer your question?' - Yes
OR
2. When they remain on the bot and continuously browse the article even though they don't click ' Does this article answer your question?' Will it still calculate that time?
0
Paolo
The time is calculated from the suggestion being generated until the customer hits the "Yes" button. If the customer does not hit the "Yes" button, the timer will continue.
Best,
Paolo | Technical Support Engineer | Zendesk
0
Vaibhav Bhardwaj
Hi Paolo,
Thanks for the clarification.
So naturally, it wouldn't capture those who answered no, I believe?
And if the customer does not hit anything at all, regardless of their intended response, does the timer just continue? Is there not a threshold that takes them out of the equation? For example, if they just close the screen.
0
Toshikazu Asaka
It would be helpful if you could provide us a table of what metric works with which filter.
0
Daniel
Are these reversed? I.e. are these Metrics not correctly lined-up with their definitions?
0
Daniel
Looping back on this!
Thanks
0
Dainne Kiara Lucena-Laxamana
Hi Daniel!
Thanks for bringing this to our attention. The definitions have been updated by our team.
1
Clik Rogan
Will we ever see the ability to report on each customers selection journey from initiated to resolved/unresolved? Or the ability to understand what the first Option Selected was? Right now if we filter by
journey_started
it gives us zip zero donut in terms of First Answer Offered (if presenting an answer on the onset of the journey) or First Option Selected - There's really not much to work with. I find this dataset a bit of a miss compared to others. There could have been much more available to customers of Zendesk when it comes to reporting on the efficacy of the Bots.I also think we need to be able to report on the free text that customers might be typing into the bot. Without this, can we really understand if the bot is presenting the best Answer to the customer? I think not.
If anyone has a way of doing this today, I'd love to know!
2
janderson teste
Why does the bot data set transfer metric present different results than the number of tickets created filtering by the messaging channel?
1
Margarida Pereira
Hello janderson teste,
Discrepancies between the datasets answer bot - flow builder and support - updates can happen due to tickets in the status scrubbed.
Tickets that have been in deletion status for 30 days without any update are moved to scrubbed status and do not show up anymore in the tickets dataset.
I hope this clarifies your question.
0
Juragan Kedelai
Why the number of transferred agent and number of messaging ticket ( chat ) is different?
1