No. A CSAT score measures how the customer felt about the conversation when they rated it, and the fix hasn't been tested yet at that point. A polite agent and a wrong answer can score five stars. The problem comes back on Thursday, in a new conversation, from a customer who still rated Monday's thread highly.
That's the blind spot in a CSAT-only view: your DSAT channel catches the customers who were unhappy with the conversation, and misses the ones who were happy with it and still have the problem.
Coming soon: Supportman will show whether the problem behind a closed conversation came back, so a good rating on a repeat shows up in Slack next to the ratings it already posts. Get notified at launch.
Does a high CSAT score mean the problem was resolved?
Not by itself. The survey asks about the interaction around the close. Resolution is a claim about what happens afterwards. Two things follow:
- A high rating is evidence the conversation went well. It isn't evidence the issue is fixed.
- A repeat contact is evidence the issue wasn't fixed, whatever the first rating said.
The two measures can disagree, and the disagreement is where the useful conversations are. If you only watch one, you'll only find one kind of failure.
The rating-and-outcome 2×2
Put each rated conversation in one of four boxes: rated high or low, and whether the same customer came back about the same issue inside your window. Pick the window first. Repeat contact rate covers how.
| Problem held | Problem came back | |
|---|---|---|
| Rated high (4–5) | Healthy. Sample for wins and for QA calibration. | The blind spot. Happy with the conversation, still stuck. Review every one weekly. |
| Rated low (1–2) | Interaction problem. Tone, wait time or policy, not the fix. Follow the negative CSAT playbook. | Most urgent. Unhappy and unresolved. Contact the customer before they contact you. |
The top-right box is the one nobody reports on. It's also the one where a single conversation read tells you the most: what did the agent say that the customer took as a fix?
What does the 2×2 look like with numbers?
Hypothetical: 100 rated conversations in a month. The numbers are made up to show the arithmetic. They aren't benchmarks.
| Held | Came back | Total | |
|---|---|---|---|
| Rated high | 72 | 8 | 80 |
| Rated low | 13 | 7 | 20 |
| Total | 85 | 15 | 100 |
Fifteen customers came back. A DSAT alert fired on the 7 who had rated low, which is 7 of 15, or 47%. The other 8 had rated high, so no alert fired. More than half the repeat problems in this example sit behind a good score.
A high CSAT average would also read well here: 80 of 100 rated high. Nothing in it shows the 15.
How do you build it by hand in Intercom?
- Export rated conversations for the period. Keep the customer, the rating, the close date and your intent tag.
- List each customer's later conversations. Anything from the same customer inside your window, including new conversations, not just replies to the old thread.
- Match on the issue, not the person. Same customer plus the same intent tag is a repeat. A billing question followed by an SSO question isn't. Where tags are unreliable, read the pair.
- Drop each conversation into a box and count.
- Read the top-right box. Ten conversations is enough to see a pattern. Ask what the customer was told and why they believed it.
- Tag the cause: wrong answer, partial fix, fix that depended on the customer doing something, or a new problem entirely.
It takes a few hours the first time on a month of data. That's the reason almost nobody does it twice, and the reason the top-right box stays invisible.
Where do unrated conversations and predicted CSAT fit?
Keep them out of the 2×2. The table above uses ratings customers actually left, and only a minority of conversations get one. See CSAT survey response bias for why the rated group isn't a clean sample.
Predicted CSAT is a different object: an estimate for a conversation nobody rated. Label it as predicted wherever it appears, use it to decide which unrated conversations to read, and don't mix it into an observed-CSAT figure. How to validate predicted CSAT covers the checks. Why average CSAT misleads covers the other things to show beside the number.
What can Supportman show today?
Supportman posts each Intercom rating to Slack as it lands (CSAT to Slack), sends low ratings to their own channel (DSAT alerts), and adds a predicted CSAT for conversations customers didn't rate. That covers the bottom row of the 2×2 in real time, and gives you a starting list for the unrated.
It doesn't yet tell you which conversations came back. The came-back axis is manual today, and showing it is coming soon. See also DSAT root cause analysis for what to do with the bottom row once you have it.
Frequently asked questions
Does high CSAT mean the issue was resolved?
No. CSAT scores the customer's experience of the conversation at the time they rate it. The fix may not have been tested yet. A repeat contact on the same issue is the evidence that it wasn't resolved, whatever the rating was.
What is the difference between CSAT and first contact resolution?
CSAT is how the customer rated the experience. First contact resolution is whether the problem was solved without another contact. They can disagree: a conversation can score highly and still generate a repeat. Read them together. See first contact resolution.
How do I find high-CSAT conversations where the problem came back?
Export rated conversations, list each customer's later conversations inside a set window, match them on the same issue, and read the ones rated 4 or 5 that came back. The steps are above. It's manual in Intercom today.
Should I use predicted CSAT in this analysis?
Not in the 2×2, which should use customer-submitted ratings only. Use predicted CSAT as a separate queue for unrated conversations, labelled as predicted, and validate it before relying on it.
Does this mean CSAT is a bad metric?
No. It answers a different question. CSAT tells you how the conversation felt and flags unhappy customers fast. It doesn't tell you whether the problem stayed solved, and that needs a second measure beside it.