In this recipe, you'll learn how to report on handling time per update. You can use this information to report on individual agent performance, or to report on complex workflows where the same ticket is handled by multiple agents.
This recipe contains the following topics:
Related articles:
- Time Tracking app - Metrics you need to be measuring
- Explore recipe: Time Tracking app - Measuring ticket handling time
What you'll need
Skill level: Intermediate
Time required: 15 minutes
- Zendesk Explore Professional or Enterprise
- Editor or Admin permissions (See Giving users access to Explore)
- Time Tracking app installed and configured (See Setting up the Time Tracking app)
Creating the standard calculated metric
To report on update handling time, you'll first need to create a standard calculated metric.
To create the standard calculated metric
- In 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.
- Click the Calculations menu (
), and select Standard calculated metric.
- In the Name field, enter a name for your calculated metric, such as Update handling time (min) (or (min)).
- In the Formula field, enter the formula below:
IF ([Changes - Field name] = "Total time spent (sec)")
If you want to measure update handling time in hours, use the following formula instead:
THEN
IF (([Changes - Previous value]=NULL OR [Changes - Previous value]="") AND [Changes - New value]!="")
THEN NUMBER([Changes - New value])/60
ELIF (REGEXP_MATCH([Changes - New value], "[0-9]+") AND REGEXP_MATCH([Changes - Previous value], "[0-9]+"))
THEN(NUMBER([Changes - New value])-NUMBER([Changes - Previous value]))/60
ENDIF
ENDIFIF ([Changes - Field name] = "Total time spent (sec)")
THEN
IF (([Changes - Previous value]=NULL OR [Changes - Previous value]="") AND [Changes - New value]!="")
THEN NUMBER([Changes - New value])/60/60
ELIF (REGEXP_MATCH([Changes - New value], "[0-9]+") AND REGEXP_MATCH([Changes - Previous value], "[0-9]+"))
THEN(NUMBER([Changes - New value])-NUMBER([Changes - Previous value]))/60/60
ENDIF
ENDIFTip: If you're working in a language other than English, see this article to help you enter Explore formulas in your language. - Click Save.
- (Optional) Determine which aggregators should be available for the metric. For additional help, see Setting a metric's default and visible aggregators.
- In the Metrics panel, click Add.
- From the list of attributes, expand the Calculated metrics folder, find your calculated metric, then click the pencil icon (
) next to it.
- In the top-right corner of the Standard calculated metric panel, click Options > Edit aggregators.
- Set the following aggregators as visible: SUM, AVG, MIN, MAX, and MED.
- (Optional) Change the default aggregator.
- Click Save.
- (Optional) Customize the metric's display format. For additional help, see Customizing the result format.
- In the Metrics panel, click Add.
- From the list of attributes, expand the Calculated metrics folder, find your calculated metric, then click the pencil icon (
) next to it.
- In the top-right corner of the Standard calculated metric panel, click Options > Edit display format.
- In the first drop-down, select Custom.
- Customize the metric's display format as needed. For example, you could add the suffix "min" or "hrs," or increase the number of decimal places.
- Click Save.
Now that you've created your standard calculated metric, you can use it in other reports in the Support: Updates history dataset. See below for an example report.
Measuring update handling time by agent
In this example report, you'll use the standard calculated metric you created above to produce a graph showing agents with the top ten average handling time.
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 New report. The report builder opens.
- In the Metrics panel, click Add.
- From the list of metrics, select Calculated metrics > Update handling time (min) (or whatever you named the metric you created above), then click Apply.
- Change the metric aggregator to AVG, if it's not already.
- In the Columns panel, click Add.
- From the list of attributes, select Updater > Updater name, then click Apply.
- In the Filters panel, click Add.
- From the list of attributes, select Updater > Updater role, then click Apply.
- Click the Updater role attribute you just added, select Admin and Agent , then click Apply.
- In the Filters panel, click Add.
- From the list of attributes, select Time - Ticket update > Update - Date, then click Apply.
- Click the Update - Date attribute you just added and filter by the time period you want to see. For help, see Filtering by an attribute in the Filters panel.
- From the Visualization type menu (
), select Bar.
- (Optional) Show only the top ten users. For additional information, see Creating a top/bottom filter.
- Click the Result manipulation menu (
) and select Top/bottom.
- In the Top/bottom panel, select Top and set the number to 10.
- Click Apply.
- Click the Result manipulation menu (
- (Optional) Adjust the chart colors, labels, and more using the Chart configuration menu (
). For help, see Customizing your chart.
You'll end up with a chart that looks something like the following:
15 comments
Jay Krishnan
Hello,
Is it possible to have First or Full resolution times by an agent instead of the update handling time?
The article "measuring update handling time by an agent" albeit with resolution times by an agent is what I'm looking for.
0
David
Hi Jay,
It should be possible - looks something like this (note, this is a conceptual framework, not exact code):
MIN(Ticket solved timestamp) - Ticket creation timestamp.
This gives you the time until the first solve.
0
Thomas Lang
Hello,
Is this to calculate the total time between each update no matter the ticket?
So for example, I have this report set up in support updates history, and I am trying to determine how in Zendesk I can show the sum of time between each update. So in an 8 hour day, how time in a day is spent not updating tickets.
0
Cam
Hi,
What's the difference between Update Handling time to Total time spent with updater role filtered to Agents? I'm getting confused with tickets handled by agents with total time spent data but no update handling time data.![](/hc/user_images/01HSWRZG2YXCFDF6C6X55RC6HP.png)
0
Alex Zheng
There was a recent issue with the formula that caused some of the numbers for the update handling time to be shown incorrectly. This has since been resolved and the numbers should now be accurate again. If you do have any issues please feel free to reach out to Support to investigate further.
0
Ajit Singh
Formulae not working , getting below error. Check your calculation syntax
1
Gavin Rainey
IF ([Changes - Field name] = "Total time spent (sec)")
THEN
IF (([Changes - Previous value]=NULL OR [Changes - Previous value]="") AND [Changes - New value]!="")
THEN NUMBER([Changes - New value])/60
ELIF (REGEXP_MATCH([Changes - New value], "[0-9]+") AND REGEXP_MATCH([Changes - Previous value], "[0-9]+"))
THEN(NUMBER([Changes - New value])-NUMBER([Changes - Previous value]))/60
ENDIF
ENDIF
it's just missing one ( on line 3. Here's the fixed version.
0
Brett Bowser
0
Velotric Customer Support
Hi Gavin,
Thanks for the fix. I tried your fix. However, it still shows the error - “Check your calculation syntax and try again.” Need your help!
For Zendesk Community Manager,
Can you guys check the content before posted online? This makes no sense that we spend times fixing this.
0
Katie Mc Dougall
Hello, the minute code is replying with the following error
“There's an issue with the formula. Check your calculation syntax and try again”
Can you also let me know what language this is in?
0
Sarthak Sahu
Hi team,
I wanted a clearer understanding of Total spend time and update handling time. It would be great if you could explain with an example. What does an update mean? is it based on change in status?
0
Sarthak Sahu
Hi team,
I have a query. The process i am working on involves multiple secondary agents. The reports using Time tracker is tracking everything under the name of the end secondary agent and nothing for the intermediaries. My task is to find the time taken by each of the intermediary secondary agent.
Any help is appreciated.
0
Sarthak Sahu
Hi team,
I have a query. The process i am working on involves multiple secondary agents. The reports using Time tracker is tracking everything under the name of the end secondary agent and nothing for the intermediaries. My task is to find the time taken by each of the intermediary secondary agent.
Any help is appreciated.
0
James G
An update is registered the instant an agent clicks on "Submit as…". Changing the ticket status isn't required for the update to be logged. For example, if an agent opens a ticket with the status set to Open, the Time tracking app begins timing immediately. Regardless of whether the agent submits it as Pending or resubmits it with the same Open status, the time spent is accurately recorded within the ticket. More details here - Reporting on time tracking in Explore.
Also, the time spent by all agents on the same ticket is tracked, which allows for the compilation of a report detailing individual updates made by every agent within that ticket.
Here's a brief example of what the reporting might look like. Suppose Agent1 spends approximately 10 minutes on Ticket1 and Agent2 spends about 5 minutes on the same ticket (Ticket1). In Zendesk Explore, you can create reports depending on the kind of data you are trying to obtain.
Sample 1 - If your goal is to get the individual updates made by Agents 1 and 2, then you need to create your report using the Updates history dataset by following our recipe here -Explore recipe: Time Tracking app - Measuring update handling time. Using this recipe, you should be able to come up with data like this:
Agent1 = 10 minutes (Update handling time)
Agent2 = 5 minutes (Update handling time)
Sample 2 - If you are interested in just getting the total time spent by all agents on the same ticket, then you should use the recipe we shared here - Explore recipe: Time Tracking app - Measuring ticket handling time. Using this recipe, you should be able to come up with data something like this:
Ticket1
15 minutes (Ticket handling time)
0
Himanshu Baghel
Hi Team,
Is it possible to add the first assigned time and first reply time along with the updater handled time where we can see each assignee's data in this same dashboard?
Also, I am unable to see any data under the handling time using the same formula shared above. Could you please help me with this.
Thank you,
0