💬 Shared Team Inbox

Collecting satisfaction scores inside a WhatsApp chat

A rating question costs nothing to ask and catches the unhappy customer before a public review does.

A satisfaction score is a rating a customer gives you inside the chat, captured by an ordinary question step with rating recording switched on, and reported under Analytics → Customer satisfaction. It is one setting on a step you already know how to build.

Its real value is not the number. It is that a low rating gives you a private warning, in a channel where you can still fix things, before the customer decides to leave a public review instead.

How to build it

  1. Add an Ask Customer a Question step where you want the rating.
  2. Set the reply type to list. Five options do not fit in buttons, which cap at three.
  3. Switch on record rating so the answer is scored rather than just stored.
  4. Label each option with its number, so the score can be read from the label: 5 - Excellent, 4 - Good, 3 - Okay, 2 - Poor, 1 - Bad.
  5. Wire the high scores to a thank-you and the low scores to a person.

The labels carry the score. The number in each option's text is how the rating is read, so "Excellent" without its number does not score. Keep the digit at the front.

Route by answer, not just record it

A rating question that does something

Ask"How would you rate your order?"List · rating recorded
5 · 4
Thank them, invite a public review

Ask for the review only from people who just told you they are happy.

3 · 2 · 1
Apologise, promise a person
Assign the chat
Set status to open

The point of the whole flow.

Asking every customer for a public review is how you collect bad ones. Asking only the customers who just rated you 4 or 5 is the same effort with a very different result.

Where to ask

MomentGood forWatch out for
After a conversation is resolvedSupport qualityFires per conversation, so cap the frequency
A day after deliveryProduct and delivery satisfactionNeeds a template — the window will have closed
After a return is processedRecovery qualityLow volume, high signal

The middle row has a cost consequence worth naming. A rating asked a day after delivery lands on a cold chat, so it needs an approved template and is charged. A rating asked at the end of a live conversation is free text inside an open window and costs nothing, per Meta's pricing rules. If budget matters, ask at the end of conversations.

Do not ask too often

A rating request is still a message, and it counts against the patience budget described in how many automations a store should run. A customer who contacts you three times in a week should not be surveyed three times.

Two guards: a Pause Before Repeating step so the same contact is not asked again within, say, 30 days, and restraint about which conversations qualify. Surveying a one-line "thanks" exchange produces noise.

Reading the results honestly

Three cautions:

  1. Response rates are low and skewed. Very happy and very annoyed customers answer; the middle does not. Treat the average as a trend line, not a measurement.
  2. Watch the direction, not the number. Whether you sit at 4.2 or 4.5 matters far less than whether it moved this month.
  3. The low scores are the product. The number is for a dashboard; the individual 1s and 2s are what you can actually act on.

What it will not do

A rating captured here stays here — it does not post to your public reviews or sync to a reviews app. If you want public reviews, the flow above should send happy customers a link to wherever you collect them, and let them choose.

And it cannot chase a non-response. There is no per-contact scheduled follow-up, so a customer who ignores the question is simply not surveyed. Combining a Wait Before Next Step with a Has the Customer Replied? branch can nudge once inside the same window, which is usually enough — the pattern is described in review requests after delivery.

Frequently asked questions

How do I collect a satisfaction score on WhatsApp?

Add an Ask Customer a Question step with the list reply type, switch on rating recording, and label each option with its number — for example '5 - Excellent' down to '1 - Bad'. Scores appear under Analytics → Customer satisfaction.

Why do my rating options need numbers in the label?

Because the score is read from the option's text. 'Excellent' without a digit does not score, so keep the number at the front.

Does asking for a rating cost anything?

Not at the end of a live conversation — that is free text inside an open window. A rating asked a day after delivery lands on a cold chat, so it needs an approved template and is charged.

Should I ask every customer for a public review?

No — that is how you collect bad ones. Ask for a rating first, and invite a public review only from the customers who just rated you 4 or 5.