Configure and deliver a CSAT survey
Walk through building a working CSAT survey end-to-end. By the end you’ll have a Standard Post-Resolution survey live, sent automatically three hours after a conversation closes.
Before you start
- Admin permissions on CSAT settings
- An email address configured for outbound mail (for email delivery)
- A working web chat widget (for in-app delivery)
- A clear answer to “what do we want to learn?” — the survey design depends on this
Steps
1. Open survey configuration
Settings → CSAT Surveys. If you don’t have any surveys yet, you’ll see an empty state with a “New survey” button.
2. Build the questions
Click New survey and design the questionnaire. A common starting structure:
- 1 — Rating (1–5 stars) —
How would you rate the support you received?— The headline metric - 2 — Open-ended (conditional) —
What could we have done better?— Show only when rating ≤ 3 - 3 — Open-ended (optional) —
Anything else you'd like to share?— Always visible, not required
You can also use NPS (How likely are you to recommend us?, 0–10) as the headline question instead of stars. Mixing both in one survey gets long; pick one as the primary metric and stick with it.
3. Pick delivery channels
In the Delivery tab, enable the channels you want:
- Email — for conversations that came via email or any async channel
- SMS — for conversations on SMS or where mobile is the primary touchpoint
- In-app — for web chat conversations (delivered inline within the chat widget after the conversation closes)
Pick at least Email; the others depend on which channels your team actively serves.
4. Set timing
Decide when the survey should fire:
- Immediately on resolution — fastest feedback, but customers haven’t had time to live with the resolution
- Three hours after resolution — common; gives the customer time to confirm the issue stayed fixed before rating
- 24 hours after resolution — for issues that take time to fully validate (a refund landing, a fix taking effect)
Three hours is the most common starting point. Adjust based on your support patterns.
5. Set frequency caps
Critical for avoiding survey fatigue. In the Delivery tab → Frequency:
- Per contact — one survey per contact per N days. Recommended: 7 days.
- Per conversation — one survey per conversation lifetime. Always on.
A customer who contacts you three times in a week should get one survey, not three. Frequency caps make that the default.
6. Configure follow-up rules
Optional but valuable. In the Follow-Up Rules section:
- Low-rating threshold — when rating is ≤ N, expand the form with a “what could we improve?” prompt
- Very-low-rating action — when rating is the lowest possible, trigger an automation rule — alert a manager, create a case, tag the conversation
csat-low
The very-low-rating automation pattern is high-leverage: a single furious customer’s score becomes a same-day intervention, not a quarterly retrospective discovery.
7. (Optional) Localize
If your team operates in multiple languages, click the Languages tab and add translations. See Localize CSAT surveys for the full flow.
8. Wire up the trigger
Two common patterns:
- Trigger on resolution — Settings → Conversation Resolution → enable the CSAT survey trigger. This is the simplest setup.
- Trigger via automation — build an automation rule with the
Send CSAT surveyaction. This gives you fine control: which channels, what conditions, conditional waits. See the CSAT-after-resolution automation recipe.
For most teams, the resolution trigger is enough. Use automation when you need conditional logic (e.g., only survey VIP customers, only on email, etc.).
9. Activate
Toggle the survey to Active. The next conversation that resolves and matches the trigger conditions gets a survey within the configured delay.
Verify it worked
- Pick a test conversation. Mark it Done.
- Wait for the configured delay (or temporarily set the delay to 1 minute for testing).
- Confirm the survey arrives via the configured channel(s).
- Submit a response.
- Open the conversation — the response should appear as an event on its timeline. The score should appear in Analytics → Customers & CSAT within minutes.
Troubleshooting
- Symptom: Customer is well past the delay window, no survey arrived. Fix: Frequency cap blocked it — they were surveyed on a recent conversation. Check their CSAT history in Settings → CSAT Surveys → Activity, or in their contact record.
- Symptom: Survey arrives in English even though the conversation was in another language. Fix: No translation exists for that language. Add one in the Languages tab.
- Symptom: Survey gets sent on conversations that should be excluded (internal test conversations, spam follow-ups). Fix: Switch from the resolution trigger to an automation rule with conditions, so only qualifying conversations get surveys.