Skip to main content
Satisfaction is a 1-to-5 rating per call, reported by agent and by team. It is an app: the organisation switches it on, and then a virtual agent or an IVR flow can ask for a score.

Asking for one

There is one way to collect a score and two ways to reach it, which is the point of the app model: the same action, whether a model decided to ask or a flow step did.
1

A virtual agent asks

Give the profile the collect_csat action. The agent asks before it ends the call or hands over to a person. If the caller has already said something clear — “yeah, that was great” — the agent passes that as the score rather than asking again.
2

A flow asks

Use an app action node. The caller is asked to press a digit.
When the agent has nothing usable in words, it falls back to the keypad: one digit, one attempt, six seconds. A caller who presses nothing, or something outside 1 to 5, has declined, which is a recorded outcome and not an error. The keypad wording is a stock prompt you can replace with your own recording.
One score per call, and the first answer is the one kept. A caller re-asked until they change their mind is not a better measurement, it is a worse one. An agent that has already collected a score will not survey the same caller again at the end of the call.

Spoken and keypad are never pooled silently

A score the model read out of “yeah, pretty good” is its interpretation. A pressed digit is the caller’s own statement. Averaging the two without saying so produces a number that looks like a measurement and is partly an opinion. So the method travels with every score, and the split sits beside the total everywhere — on the screen, in the summary and in the API. Beside each average is its count, and a distribution across 1 to 5, because two averages of 3.0 can mean everyone is lukewarm or half love it and half hate it.

Attribution

A score is stamped with the agent and the team as they were when it was given, not resolved through today’s roster later. An agent moves teams and a team’s members change; recalculating afterwards would silently rewrite last quarter’s numbers for two teams at once.

Reading the numbers

Reading needs csat:read — a supervisor, an admin, not an agent. The default window is the last 30 days, which is the window somebody means by “how are we doing”. Nothing can submit a score through the API. A score anyone can post is not a measurement. Individual ratings also appear on the call they came from and on that customer’s timeline, with the caller’s own comment where they gave one.