Plain-language questions
Ask for first response time (FRT) per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
KPI · Customer service
First response time (FRT) is the time between a customer sending a ticket, email or chat message and the first personal reply from an agent. Automatic acknowledgements do not count. First response time strongly shapes how customers experience your support, even when the question has not yet been resolved.
Sum of (time of first reply − time created) across all tickets ÷ number of tickets with a reply; often also reported as a median
In March Acme Groothandel's customer service team sent a first reply on 1,200 tickets. Together they took 3,600 hours from creation to first reply. Average first response time is 3,600 ÷ 1,200 = 3 hours. Because some tickets arrived at the weekend and were picked up on Monday, the median was lower, at 1.5 hours.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A shorter first response time means customers know sooner that their question is being handled. Look at the median and the percentage of tickets within your own target, because a few outliers pull the average up. Compare by channel: customers expect a faster reply in chat than by email.
SQL & DAX
Two examples on a fictitious data warehouse for Acme Groothandel: a PostgreSQL query and a measure for a Power BI model. Adjust table and column names to your own model.
SELECT date_trunc('month', created_at)::date AS month,
COUNT(*) AS tickets,
ROUND(AVG(EXTRACT(EPOCH FROM first_response_at - created_at) / 3600)::numeric, 1) AS avg_hours,
ROUND((percentile_cont(0.5) WITHIN GROUP (
ORDER BY EXTRACT(EPOCH FROM first_response_at - created_at)) / 3600)::numeric, 1) AS median_hours
FROM tickets
WHERE first_response_at IS NOT NULL
AND created_at >= current_date - interval '12 months'
GROUP BY 1
ORDER BY 1;Avg First Response (hours) =
DIVIDE(
SUMX(FILTER(Tickets, NOT ISBLANK(Tickets[FirstResponseAt])),
DATEDIFF(Tickets[CreatedAt], Tickets[FirstResponseAt], MINUTE)),
COUNTROWS(FILTER(Tickets, NOT ISBLANK(Tickets[FirstResponseAt])))
) / 60In ENABLE
Ask for first response time (FRT) per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
Define the KPI as a measure in your Power BI model and show it in the portal, with "Last refreshed" next to it. Access profiles and optional row-level security decide who sees which figures.
Add the KPI as a tile to a custom dashboard, compared with last year. The Dashboard Builder is a pilot and can be switched on per client.
With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.
FAQ
For each ticket, take the time between creation and the first personal reply, add these up and divide by the number of tickets with a reply. With 3,600 hours across 1,200 tickets, average first response time is 3 hours. Report the median as well, because outliers distort the average.
First response time measures how quickly a customer gets a first reply, resolution time how long it takes until the question is fully dealt with. A fast first response with a long resolution time means requests are picked up quickly but then stall.
Either works, but choose one and state it. Business hours give a fairer picture of the team if you are not available outside office hours. Calendar hours show better how long the customer actually waits.
In an online demo we show how ENABLE makes your data securely available and how you build on it: describing an app in the AI Builder, plain-language questions, dashboards and APIs. And how we set it up and manage it for you.