
This recipe shows you how to report on the average first reply time in minutes for tickets solved each day of the previous week.
What you'll need
Skill level: Easy
Time Required: 10 minutes
- Zendesk Explore Professional or Enterprise
- Editor or Admin permissions (see Giving agents access to Explore)
- Ticket data in Zendesk Support
How to create the report in Explore
- In Explore, click the query (
) icon. - In the Queries library, click New query.
- On the Choose a dataset page, click Support > Tickets > Support: Tickets, then click New query. Query builder opens.
- In the Metrics panel, click Add.
- From the list of metrics, choose Duration between events - Calendar hours (min) > First reply time (min), then click Apply.
- Click the metric you just added, select AVG as the aggregator of this metric, then click Apply (see Changing the metric aggregator).
- In the Rows panel, click Add.
- From the list of attributes, choose Assignee > Assignee name, then click Apply.
- In the Filters panel, click Add.
- From the list of attributes, choose Time - Ticket solved > Ticket solved - Week of year, then click Apply.
- Click the filter you just added followed, then click Edit date ranges.
- On the Date range page, select Last week, then click Apply.
This query looks at the date the ticket was created, but you can use any other date event.
You can now change the chart type to something that suits better your data (see Visualization types reference). A column chart works well.

19 Comments
What's the best way to convert the minute count to hours?
Hello, Al,
You can use the metric First reply time (hrs) instead of the one written in the article.
Hope that helps.
Hello!
I can't seem to find an Explore recipe for next reply time. Can you share some insight on how to build a metric for it?
Hi Khadeeja,
If there's no Explore recipe created for your use case, it may be beneficial to post in our Ask Us Anything about Explore Recipes - Tuesday, August 27 topic that we will be hosting tomorrow from 9 am to 11 am CDT. During this time, we will have a special guest team of experts who are available to answer your questions about setting up and troubleshooting your Explore recipes. Feel free to cross-post over there and we'll be sure to get your question answered during the AMA session.
I'll also leave this question here in case someone else is able to jump in ahead of time and offer up some guidance.
Cheers!
"In Query Builder, under Metrics, add First Reply Time - min to the query."
Why is this field (First Reply Time - min) not available in my zendesk account?
I just have the options in the picture below
Hello, Thais,
It looks like you are in the wrong dataset. The metrics in your screenshot belong to Support: Ticket Updates. This query was built under the Support: Tickets dataset. Would you be able to give it a second try in the other dataset?
Hello! sorry for the rookie question but I'm struggling a bit to understand how exactly this is calculated, and I mean does the 1st time reply take into account the business hours set on our Zendesk?
Because what I need to know is the 1st time reply within the business hours.
If it takes into account the weekends and outside of working hours, it is not accurate and thus not very useful.
Is this possible? Can I find the information somewhere?
Thank you :)
Marion
First reply time is based on calendar hours and so includes your non business hours including weekends.
However, if you search for 'business' you will find similar metrics that respect your business hours set in Support.
You can find out more about business hours here.
Thanks Graeme!
What's the best way to edit this query so that the values displayed are in weeks or months and not days? I would like to see a trailing 7-days average of first response time.
Hello, Brent,
When you are on step 8, under Columns, if you type ticket created you can see a list of attributes you can use:
Hope it helps.
I've tried to make a report on the FRT brackets but according to the report, most of my agents aren't replying at all.
I used the row attribute "agent" and filtered it by ticket created date - where am I going wrong?
Ricardo - I'm looking to add First Reply Time to a report using the Ticket Updates dataset. I'm confused why this metric isn't available here as well, since it really is a metric based on a ticket update. Can this be replicated with a custom metric?
Hello Stephen Belleau.
Hello Ricardo
I'm currently trying to build a query that reflects tickets with a follow-up.
To give you a scenario;
1) customer chats with one of our agents.
2) Chat gets closed as normal
3) Agent needs to follow-up and sends an email in the automatically created ticket.
Now I want to pull a list of ALL tickets that have received such follow-up.
However, when I use the following query it reflects also tickets that have been created by our agents and not only the automatically generated ones, please advise:
Metric: AVG (First reply time hrs)
Rows: Ticket ID
Filter: First reply time Brackets
Is there a way for this report to reflect as described above?
Best regards,
Wesley
Hello Wesley Kock
I am assuming that when you say "tickets that have been created by our agents", you are referring to tickets created through the agent interface and not through chat. If that is the case, I think the easiest way to achieve what you are trying to build is by adding a filter in your query.
Under Filters click Add and search for Ticket channel. Then click Excluded and select Chat:
Hope it helps!
Hey Zendesk,
I am trying to build a report to show the % of first reply time for any given month. For example
0-1 hours - 30%
1 - 3 hours - 10%
3 - 8 hours - 50%
24 + hours - 10%
Is this possible as I can only see the Sum, average, min, max, med, variance and std_dev
Thanks
Hello Rhiannan Hughes
Thanks for reaching out!
FYI, there is a default query you can use and that may help you already. It is called Efficiency: Tickets by first reply time brackets [default]
You can actually use that example to create a new query. For that, you will need a new custom attribute or you can use the existing one called First reply time brackets. In your case, the code would look something like:
IF (VALUE(First reply time (min)) <= 60)
THEN "0-1 hrs"
ELIF (VALUE(First reply time (min))>60 AND VALUE(First reply time (min)) <= 60*3)
THEN "1-3 hrs"
ELIF (VALUE(First reply time (min))>60*8 AND VALUE(First reply time (min)) <= 60*8)
THEN "3-8 hrs"
ELIF (VALUE(First reply time (min)) > 60*24)
THEN ">24 hrs"
ELSE " No replies"
ENDIF
Let me know if you have any questions!
Thanks Ricardo that has really helped :)
Please sign in to leave a comment.