In this recipe, you'll learn how to create a report that shows the number of times tickets were assigned from one group to another. For example, you could report how many tickets are being escalated from the Support group to the Sales group.
Tip: If you want to report on how much time a ticket spent in each group, see Explore recipe: Reporting on the duration of fields.
What you'll need
Skill level: Moderate
Time Required: 20 minutes
- Zendesk Explore Professional or Enterprise
- Editor or Admin permissions (see Giving agents access to Explore)
- Ticket data in Zendesk Support
Creating the report
To create the report
- In Zendesk Explore, click the reports (
) icon.
- In the Reports library, click New report.
- On the Select a dataset page, click Support > Support - Updates history, then click Start report. The report builder opens.
- Now, create a Standard calculated metric to show when tickets move from one group to another. From the Calculations (
) menu, click Standard calculated metric.
-
On the Standard calculated metric page, enter or paste the formula below into the Formula field. Add a title for the metric like Ticket assigns from Support to Sales.
Replace the IDs in the formula with the group IDs of the two groups you want to report about. To get the group IDs of your groups, make a GET request to subdomain.zendesk.com/api/v2/groups.json. Check out our documentation here for more information. In the example below, the first group ID would be for 'Support' as the previous group and the second group ID would be for 'Sales' as the new group the ticket is assigned to.
The completed metric will look like the screenshot below:IF ([Changes - Field name] = "group_id" AND
[Changes - Previous value] = "36000000xxxx" AND
[Changes - New value] = "3600000xxxxx") THEN
[Update ID]
ENDIF
Tip: If you're working in a language other than English, read this article to help you enter Explore formulas in your language. - When you are finished, click Save.
- In the Metrics panel, click Add.
- From the list of metrics, choose Calculated metrics > Ticket assigns from Support to Sales (the calculated metric you just created), then click Apply.
- Ensure the metric aggregator for Ticket assigns from Support to Sales is set to COUNT. For more information, see Choosing metric aggregators.
- (Optional) Filter the report's results by date by adding the Ticket created - Date attribute in the Filters panel.
Next steps
If you want to see the agents who are making the group update, you can add an attribute to show the agent's name.- In the Rows panel, click Add.
- From the list of attributes, choose Updater > Updater name, then click Apply.
-
From the Result manipulation (
) page, click Metric filter.
- On the Metric filter page, set the metric filter so it only shows results greater than 0.
Your report is now complete. See the screenshot below for an example of how it might look.
71 comments
Kai B
+1 to Luis' comment above - I want a single list of transfers from all groups into a particular group in my instance so I can work out where the majority of work is coming from, however, to do so would require creating about 200 custom metrics, it would be great if there was an easy way to do this
1
NIkita Kadri
Hi Team
When we use the T1 to T2 assignment time metric on our report it returns the values as per the ticket Closed date, and not for when the tickets were reassigned.
For example: Ticket xyz was reassigned from Tier 1 to Tier 2 on April 10th and then closed on April 12. If I extract a report for Ticket reassignments for April 10th, this ticket doesn't show up instead shows up for the April 12th timeline report when it was closed.
Is there a way to have the tickets show up as per the reassigned date?
0
Dane
What I'm thinking is it's possible you are using the attribute Tickets Solved - Date as part of your query. This will extract data depending on the date specified when it's set to Solved. The best option is to use Tickets Update - Date attribute instead.
0
Tony Jansson
Hi,
I am trying to create a report that counts tickets created in the original group A, before the ticket is updated in any other group.
Using the standard "Created" for groups, seems to track the last group when the ticket is updated.
0
Gab Guinto
If tickets are automatically assigned to a particular group at the same event of ticket creation, then you should be able to see the initial group assignment if you slice the Tickets created metric by the default attribute Update ticket group. Is this what you are looking to report on? That should show you how many tickets were assigned to the groups at the time they were submitted.
0
Jon Durlauf
Is there a way to create a table counting all ticket reassignments from group to group? We are trying to better understand how tickets flow within our organization. We want to see all group reassignments, even if there are multiple for the same ticket.
I was able to get close using a standard calculated attribute in the Support: Updates History dataset. However, all of the groups show as ID numbers instead of group names. Is it possible to create a table like this with the group names instead of ID numbers? (I could not find a field for the group name.)
Standard Calculated Attribute:
Resulting Table:
0
Gab Guinto
If you have a metric that counts updates involving group_id, then you can slice the data by Update ticket group. This should show you the destination group name (the group the ticket was assigned to after the update). But, if you also need to see the previous value, then you can slice your report by the Changes - Previous Value and - New value (if your report counts the updates where Changes - Field name is group_id. Is this what you have came up with? To display the group names, you can build a separate calculated attribute or renamed sets to display the group name instead of the id in your table.
0
Jon Durlauf
Thank you for the response, @.... I am still unable to report with the group names. We need to see both the new and previous values together. The standard calculated attribute I shared in my previous post provides what we are looking for with the exception of showing group IDs instead of group names. How would I build a standard calculated attribute to display the group name?
Renamed sets are not an option. There is not an option to compute from Group ID.
0
Pedro Rodrigues
Hi Jon Durlauf, you'd need to create something like this, for example, only for group_id instead of assignee_id:
You should add a "CASE" value for each group in your account. Additionally, the example above is for the Previous value. You should add a similar attribute for the New value.
1
Jon Durlauf
Thank you, Pedro Rodrigues. This worked!
I was hoping there was an existing field to do this rather than create case statements for all of our 100+ groups, but this gets us the information we need.
0
Welcome Break Holdings Ltd.
HI all,
I'm using :
and whilst it takes a while to run, it works... my question, how can I do this with YESTERDAY's date? Can I do some form of "Today()-1" or similar?
WHY?
well, I'm trying to have this display as a KPI with Today/Yesterday showing an increase/decrease. Which means I need two metrics, one for today, and one for yesterday, which means I can't (I don't think) use filters)
0
Gab Guinto
Have you tried using this function? Example:
This condition is true for updates made yesterday.
0
Welcome Break Holdings Ltd.
Thanks Gab,
I'll try this asap!
0
MAD Monica Maldonado
Hi
Is there a way to count only tickets moved not a new group but solved in the previous group?
0
Gab Guinto
Can you provide more details on what data you are trying to capture in your report?
0
Casey Eisenberg
Hello,
Does this feature include group changes that were applied by triggers and not agents? I just created a new routing trigger that changes the group from our default to a special handling team and adds a tag to mark the change. I am attempting to create a report that shows tickets assigned to that group manually vs. from the trigger using the separate tags.
Thank you
0
Gab Guinto
If the reassignment trigger fires within the same event/update from an agent, then in Explore reports, the group reassignment will be attributed to the agent (i.e., the agent will be listed as Updater).
If the tag is unique and is only added to tickets via that group reassignment trigger (and isn't removed until the ticket is closed), then you may create a report to check which tickets were at one point reassigned to your special handling group and then create a metric/attribute to see which of those contain the unique tag.
0
Dianne Abriel Aquino
Is it possible to get the Time spent of each group before sending it to another group? Like
Group 1 Group 2
Ticket ID 5 min 2 min
So on and so forth
2
Claudia Garcia
Hi,
I'm trying to create a report that shows me the number of tickets that were assigned to a escalations queue and then reassigned by the escalations associate back to the original group it came from without solving. Mainly to be able to track how many "handled" escalations were completed by the escalations' specialist.
0
akash kumar
I follow this step but i want time in min when ticket is assigned from one group to another group, how can we write formula for that please help me anyone its critical for us
0
Chris Curlett
Group ID for our IT Service Desk is 360009977354. I'm trying to create a metric for all tickets that were changed from that group to any other group. I'm using this:
IF ([Changes - Field name] = "group_id"
AND [Changes - Previous value]= "360009977354"
AND [Changes - New value]!= "360009977354"
AND [Changes - New value]!= NULL)
THEN [Update ticket ID] ENDIF
What's weird is it's showing tickets that were were created in that group and literally never were assigned to a different group. They were assigned to that group from start to finish. Can anybody explain what I'm doing wrong here?
0
Kristin Bouveng
Chris Curlett
Could it be because you have the ID in both "Previous value" and "New value"?
I have a similar custom attribute set up (so not as a metric, I use the attribute as a filter in the updates dataset, along with the 'D_COUNT(Updates)' metric) that looks like this:
I then use the "Update ticket group" in the rows or columns to see specifically which groups tickets were reassigned to.
0
Sydney Neubauer
Here is an issue we are having: We are having teams accidentally assigning tickets to the wrong team via Side Conversations Child tickets (we aren't sure which group they are assigning to but we know they are assigning to wrong team)
We are trying to report on how many tickets are being created for this other team without knowing what group it is for.
When they are creating for the wrong group, the wrong Brand is used. So I am wanting to see tickets created with this certain brand and wrong group (it may no longer be if it was reassigned)
Does anyone know a formula that can calculate that?
0
Alex Zheng
You could do something like the formula above from Chris in order to find these tickets.
IF ([Changes - Field name] = "group_id"
AND [Changes - Previous value]= "360009977354"
AND [Changes - New value]!= "360009977354"
AND [Changes - New value]!= NULL)
THEN [Update ticket ID] ENDIF
Except in this case the previous value would be the group id these tickets are initially and then the group id for the new value would be the group it is supposed to go to so you can find all the tickets from this group that went to the wrong group.
0
Sydney Neubauer
Hi Alex Zheng the issue being that we don't know which groups it would be for. We have 100+ groups in our instance and do not want to list them all out.
Is there a way to see group changes without listing all the groups? It is specifically when a Brand is for the right team but the group is wrong which is how we can tell CURRENTLY incorrectly assigned tickets. But if they are reassigned, we can only see it in the events. We are wanting to see it in Explore to see volume
0
Alex Zheng
I think you will need to specify the groups in order for Explore to gather the volume unless there is another way you are identifying these tickets.
0
Arthur Mori
This is super helpful but cant seem to figure out how to create a metric that shows the number of tickets that never leave a group it was initially assigned to.
0
Hannah Lucid
Arthur Mori
Use dataset Support: Update History
Add Metrics - Use Count - create custom standard calculated metric using code below
Add Columns - Ticket Group
Add Rows - Update Ticket Group
0
Arthur Mori
Hannah Lucid amazing! thank you! 🙏🏼
1
David
@Gabriel
To count all tickets moving to "the group" regardless of where they came from, you can simplify your calculated metric significantly. Since you're only interested in tickets that have been assigned to "the group" at any point, you don't need to worry about the previous group values. This simplification means your condition focuses solely on the event where a ticket's group is changed to "the group."
Here's how you can structure your calculated metric:
IF ([Changes - Field name] = "group_id" AND [Changes - New value] = "193837xx") THEN COUNT([Ticket ID], DISTINCT) ENDIF
This metric does the following:
group_id
field.group_id
matches the ID of "the group" (in this example, "193837xx").COUNT([Ticket ID], DISTINCT)
to ensure tickets are counted uniquely.This calculation effectively counts all tickets that are moved to "the group," without concern for their origin.
0