Blog · Board and management reporting · Customer service
First response time measures the wait between a support request and the first qualifying reply. Calculate the mean, median, and target attainment from ticket timestamps while keeping unanswered tickets visible.
The first response time KPI is the time a support ticket waits for its first qualifying reply. Subtract ticket creation from the reply timestamp, then compare the resulting durations by team, period, and service target. Keep unanswered tickets visible beside the average: a missing reply is not a zero-minute response.
For an inbound customer request, start at ticket creation and stop at the first public human agent reply. Exclude internal notes and automatic acknowledgments when the question is how quickly a customer receives human attention. Preserve any separate contractual definition instead of silently substituting this one.
For example, Zendesk's first reply time documentation measures ticket creation to the first public agent response and distinguishes calendar-hours from business-hours results. It also describes differences between standard reply metrics and SLA rules. Check what your export actually contains before treating a duration column as the measure you need.
Record the applicable time zone, service schedule, holidays, reply qualification, and treatment of agent-created tickets. Reopening a case does not restart its original first-response clock. A new measure for replies after reopening needs its own name and definition.
This is a customer-support measure. Sales time to first touch starts from a different commercial event and answers a different question. Do not pool sales and support waits under the same label.
Ticket first response time = First qualifying reply timestamp − Ticket creation timestamp
Mean first response time = Sum of valid first-response durations / Tickets with a valid qualifying reply
Response target attainment = Eligible tickets meeting the response target / Eligible tickets whose target outcome is known
The first two formulas measure observed replies. The third can also include unanswered tickets whose deadlines have passed. Name the population each time: a replied-only rate and a due-ticket rate answer different questions.
Use one unit throughout. For spreadsheet date-time values, subtracting timestamps produces days; multiplying by 1,440 converts days to minutes. For business hours, use the exported business-time duration only after checking its schedule. Simple timestamp subtraction calculates calendar time.
Keep ticket ID, creation timestamp, first qualifying reply timestamp, channel, team, priority, target minutes, and the reporting cutoff. Retain excluded rows with an exclusion reason. A missing creation time, a reply before creation, or duplicate IDs should go to a check list before calculation; timestamp quality checks cover that audit in more detail.
The following US support team uses a calendar-time target of 20 minutes. All tickets were created on October 20, 2026, in the same time zone. The report is taken at 10:30 a.m.; every listed ticket's deadline has passed. These are illustrative records, not a recommended response target.
| Ticket | Created | First qualifying reply | First response (minutes) | Target (minutes) | Outcome at cutoff |
|---|---|---|---|---|---|
| A | 9:00 a.m. | 9:05 a.m. | 5 | 20 | Met |
| B | 9:05 a.m. | 9:15 a.m. | 10 | 20 | Met |
| C | 9:10 a.m. | 9:25 a.m. | 15 | 20 | Met |
| D | 9:15 a.m. | 9:35 a.m. | 20 | 20 | Met |
| E | 9:20 a.m. | 9:45 a.m. | 25 | 20 | Missed |
| F | 9:25 a.m. | 10:10 a.m. | 45 | 20 | Missed |
| G | 9:30 a.m. | Unanswered | — | 20 | Overdue unanswered |
The boundary is inclusive: a reply at exactly the target meets it. Ticket G has waited 60 minutes at the cutoff, but that is its current age, not a completed first-response duration.
Put full creation date-times in column B, reply date-times in C, durations in D, and targets in E. With headers in row 1 and the tickets in rows 2 through 8, use this Excel formula in D2 and fill down:
=IF(C2="","",(C2-B2)*1440)
Run the timestamp checks first. The formula preserves an unanswered ticket as blank instead of inventing a duration. Calculate the mean and median of valid replies with:
=AVERAGE(D2:D8)
=MEDIAN(D2:D8)
Microsoft's MEDIAN function documentation confirms that an even-sized set uses the average of its middle values and that empty cells in references are ignored. Here the sorted durations are already in order.
| Measure | Calculation from ticket rows | Result |
|---|---|---|
| Replied tickets | A through F | 6 |
| Total response minutes | 5 + 10 + 15 + 20 + 25 + 45 | 120 |
| Mean response | 120 / 6 | 20.0 minutes |
| Median response | (15 + 20) / 2 | 17.5 minutes |
| Replied-only attainment | 4 / 6 × 100 | 66.7% |
| Due-ticket attainment | 4 / 7 × 100 | 57.1% |
Percentages are rounded to one decimal place. The proof is that mean multiplied by replied count gives total response minutes: 20 × 6 = 120. The population also reconciles: four met, two replied late, and one overdue unanswered account for all seven tickets.
The mean equals the target, yet several customers missed it. That is why an average alone cannot establish compliance. For distinct service commitments, calculate attainment against each ticket's own target rather than comparing every ticket with one company average.
Use a creation-date cohort for this analysis and allow deadlines to mature before reporting final attainment. Tickets that have not replied and are not yet due remain pending; they are neither met nor missed. Show their count, then refresh the same cohort later.
Compare teams within the same channel, priority, and service entitlement. A team answering urgent voice requests cannot be judged against a team's asynchronous email average without that context. The broader customer service KPI guide supplies companion measures such as resolution and quality.
The support operations manager owns the definition and exceptions. Team leads review late and overdue records. Whoever prepares the report must reconcile the included, excluded, and pending populations back to the source export.
Covirage is not affiliated with Zendesk or Microsoft.
Bring a ticket CSV with creation times, first qualifying replies, teams, and response targets. Covirage maps the columns; its tools compute and check the durations and comparisons, and the external AI model explains the result with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.
See Covirage for customer service teams for the related work on service exports.
For a measure of human service, stop the clock at the first qualifying human reply rather than an automatic receipt message. Document the rule and check the export's reply type. If a contract defines response differently, calculate that contractual measure separately and label it clearly.
Report both when long delays matter. The mean includes the full size of every observed wait, while the median describes the middle observed wait. Neither includes an unanswered ticket as a completed duration, so add overdue unanswered counts and target attainment.
They count on a calendar-hours clock. A business-hours clock counts only time inside the applicable service schedule, including its holidays and time zone. Use the clock promised to the customer and keep the same schedule definition when comparing teams or periods.