The agent report already told you how much work each person did. Calls answered, calls missed, talk time, occupancy rate, conversations, messages sent 31 columns of activity. What it never told you is whether the customer on the other end was happy.
Your customers were answering that question all along. Callers rate the agent on their keypad after a call ends. Ticket contacts rate the resolution through a link in the closing email. Those scores were sitting on individual call records and individual tickets, one at a time, where no manager was ever going to add them up.
The agent report now has a CSAT column group: rated calls, call CSAT, rated tickets, and ticket CSAT.
What the 4 new columns show
| Column | What it tells you |
|---|---|
| Rated calls | How many of this agent’s calls the caller actually scored |
| Call CSAT | Average score of those calls, on a 1 to 5 scale |
| Rated tickets | How many of this agent’s tickets the customer scored |
| Ticket CSAT | Average score of those tickets, on a 1 to 5 scale |
The 2 count columns matter as much as the 2 averages. A 5.00 built on 1 rating and a 4.10 built on 90 ratings are not the same fact, and a report that showed only the average would let you mistake one for the other. Read the count first, then the score.
When nobody rated anything in the period, the average cell reads -, not 0.0. A zero on a 1 to 5 scale means “the customer thought this was terrible,” which is the opposite of “we have no data.” The CSV leaves the same cell blank for the same reason.
Where the 2 scores come from
Both numbers come from surveys you switch on yourself. Neither appears until you do.
Call CSAT: the post-call survey
After the conversation ends, the caller is asked to rate it on their keypad, 1 to 5. You configure it per team, under Settings → Communication → Phone → Teams → CSAT, and you decide who gets asked: every answered call automatically, or only callers who pressed an activation key while they were waiting in the queue.
The survey asks 2 questions one about your company, one about the agent who handled the call. The report’s call CSAT column is the agent question. That’s deliberate: this is an agent report, and how a caller rates your pricing or your opening hours isn’t something the agent who answered can act on.
It’s also not the same number as the quality score on the call detail record. Quality score is what your supervisor gave the call out of 100 after listening to it. Call CSAT is what the customer gave the agent out of 5. Both are useful, and they don’t always agree which is usually the interesting part.
Ticket CSAT: the link in the closing email
When a ticket group has CSAT enabled, the email that closes the ticket carries a rating link. The customer picks 1 to 5, and can add written feedback, which lands on the ticket itself. You configure this under Settings → Customer Service → Tickets → Groups → CSAT.
The score is credited to the agent the ticket was assigned to, so it lines up with the rest of that agent’s row.
Why the CSAT average survives being zoomed out
The report runs at 4 granularities: hourly, daily, weekly, and monthly. CSAT averages are correct at all of them, because the underlying rows store the sum of the scores and the number of ratings, not a pre-computed average. Zooming out adds the sums and adds the counts, then divides once.
That distinction shows up the moment 2 hours in the same day have very different volume:
| Period | Rated calls | Call CSAT |
|---|---|---|
| 09:00 | 1 | 5.00 |
| 14:00 | 20 | 3.40 |
| The day | 21 | 3.48 |
Averaging the 2 hourly averages would have produced 4.20 and told you the day went well. It didn’t. The 20 callers at 14:00 outnumber the 1 caller at 09:00 by 20 to 1, and the daily row says so.
Ticket ratings land in the hour the customer replied
One timing detail worth knowing before you reconcile anything.
Ticket CSAT is counted in the hour the customer submitted the score not the hour the ticket closed. The rating link goes out with the closing email and stays valid for 30 days, so a ticket closed on Monday morning and rated on Thursday night appears in Thursday night’s row.
This is the only bucketing that works. Hourly rows are written once, shortly after the hour ends, and never revisited. Attributing a rating to the ticket’s close time would mean writing into a row that was finalised days earlier, and almost every response would be dropped.
The practical consequence: in any single row, rated tickets won’t match tickets closed. Over a week or a month the gap closes and the number reads normally.
How to read the CSAT columns together
The point of putting CSAT in the agent report rather than on its own page is that it sits on the same row as the rest of the story.
- Read the count before the score. 3 ratings out of 200 calls is a sample, not a verdict. If rated calls stays low across the whole team, the survey configuration is the thing to look at first, not the agents.
- Check the row, not just the cell. A dip in call CSAT next to a spike in occupancy rate and longer talk times is more likely a staffing problem than an agent problem.
- Use daily or weekly for coaching, hourly for diagnosis. Individual hours are noisy at typical rating volumes. Hourly is what you use once you already know something went wrong and want to find the shift it happened on.
- Compare an agent’s 2 CSAT columns. If someone scores well on tickets and poorly on calls, the gap points at live conversation skills rather than at product knowledge.
Turning the surveys on
If the CSAT columns are showing 0 rated calls and 0 rated tickets everywhere, the surveys aren’t collecting yet:
- Enable the post-call survey on each team you want scored, and write both survey questions.
- Enable ticket CSAT on each ticket group, and write the question customers will see.
- Give it a few days. Callers respond immediately; ticket customers respond on their own schedule.
If the CSAT tab isn’t there at all, your plan doesn’t include the surveys yet. The pricing page shows what each plan carries.
CSAT is part of the same set of tools as the queues and agent management in call centre software, and the ticket side belongs to customer service software. If you’re mapping out what else can be measured or automated around a call, the full feature list is the place to start.
Availability
The 4 CSAT columns are live now in Reports → Agent, on per-agent rows and on the TOTAL row, at every granularity. The CSV export carries them too, as 4 extra columns and its header row is no longer locked to English, so it follows the interface language of whoever ran the export.
One caveat about history: the columns are populated going forward. Hours that were already summarised before this release keep 0 rated calls and 0 rated tickets, so your CSAT trend starts from today rather than from the day you first switched a survey on.
Add CSAT to your report → Settings → Communication → Phone → Teams → CSAT
Not sure which of your teams and ticket groups should be surveyed? Get in touch with our support team and we’ll help you work out where the scores will actually be useful.
Analyze the content of this post with
Written by
Onur Ozgur OZKAN
Co-founder & CEO
The Hipcall team builds an all-in-one communication platform for sales and support teams, combining business phone, call centre, CRM, and helpdesk into a single workspace.
Related Posts
Call Centre Service Level: ISO 18295, BDDK, and EPDK
One month of calls, 3 legitimate service level percentages. Here's what ISO 18295, BDDK, and EPDK each put in the total, when the clock starts, and why.
Agent Status Timeline: every agent's day, at a glance
The Agent Status Timeline turns raw status logs into a visual chart, so supervisors can see who was on break, busy, or available at any given moment.
Call record sync now supports SFTP
Send your call records and recordings to your own server over an encrypted connection for IT teams who've already switched off FTP.
Stay in the loop
Get the latest product updates, tips, and industry insights delivered to your inbox.
Try for Free