Support

Satisfaction survey (NPS) on WhatsApp: how to run it and use the result

Email surveys sleep in the inbox. On WhatsApp the question gets opened in minutes and the answer comes back in the same conversation. The challenge is not the open rate: it is building the survey so it earns an honest answer, does not annoy and produces data you can use. Here is how to structure the question, when to send it, how to automate collection and what to do with the result, from classic NPS to a quick CSAT at the end of each support conversation.

Published on · Updated on · 9 min read

This article is also available in: Português · Español

What NPS is and why it works well on WhatsApp

NPS, or Net Promoter Score, is a metric that sums up customer loyalty in a single question: from 0 to 10, how likely are you to recommend our company to a friend or colleague? Anyone who answers 9 or 10 is a promoter, 7 or 8 is passive, and 0 to 6 is a detractor. The calculation is direct: percentage of promoters minus percentage of detractors. The result runs from -100 to 100 and works as a continuous thermometer of your base.

The strength of NPS on WhatsApp is low friction. The person does not need to click a link, open a form or leave the app. They answer with a number inside the conversation itself, and you capture that number on the spot. This tends to improve the response rate compared with email or SMS surveys, where every extra step drops conversion.

It is worth telling NPS apart from CSAT. NPS measures long-term loyalty and makes sense from time to time, for example monthly or after each relevant purchase. CSAT measures satisfaction with a specific event, such as a support conversation that just ended, and usually uses a smaller scale, from 1 to 5. Many operations combine the two: CSAT right after each interaction and periodic NPS to track the relationship as a whole.

How to build the survey step by step

Start with the opening. Before sending the score question, send a short sentence that sets context and asks for implicit permission, something like: hi, how are you? We want to improve our service and your opinion helps a lot. Can I ask you a quick question? This care reduces the feeling of spam and prepares the person to answer. Keep the tone close to the one you used during the conversation.

Then comes the main question. For NPS, use the 0 to 10 scale and make clear what the extremes mean. For CSAT, offer a smaller scale or even named options such as great, good, fair and poor. Avoid asking for more than one score in the same message, because it confuses people and lowers the completion rate. One question per message is the rule.

The third step is the open follow-up question, and that is where the real value lives. As soon as the person gives the score, ask a conditional question. For someone who gave a low score: what happened that left you unhappy? For someone who gave a high score: great, what did you like most? The score tells you how much, the text tells you why, and the why is what guides the fix.

Finally, close with a thank-you and, when it makes sense, an action. If the score was low, say someone from the team will get back to them. If it was high, you can invite them to leave a public review or refer a friend. Every answer is a chance to make the customer feel heard.

When to send: timing changes everything

The moment of the send weighs as much as the question. For support CSAT, the ideal is to send right after the conversation ends, while the experience is still fresh. A window from a few minutes to a few hours later usually yields the most accurate answers. Waiting days makes people forget details and dilutes the score.

For surveys tied to a purchase or delivery, send when the customer has had time to try the product or service. Asking about satisfaction with a delivery the minute the order ships makes no sense. Adjust the interval to the nature of what you sell: a consultation service can be rated the same day, while a physical product needs a few days of use.

For relationship NPS, choose a cadence that does not tire your base. Sending NPS every week to the same customer creates fatigue and a drop in responses. A monthly or quarterly interval per customer is healthier, and you can stagger the sends across the month so you do not overload the team that analyzes the answers.

Respect business hours and avoid late night, weekends and holidays, unless your audience expects contact at those times. A survey that arrives at 3 a.m. signals carelessness and hurts the brand. If you send in volume, spread the messages through the day instead of sending everything at once, which also protects the health of the number.

Automating collection and replies

Running surveys by hand works for a few customers but does not scale. For volume, you need an API that sends the question at the right moment and captures the answer automatically. This is where webhook integration comes in: every message the customer sends reaches your system in real time, and you can react based on the score received.

The automated flow usually looks like this: an event triggers the survey, such as the end of a support conversation. The question goes out through the API. The customer replies, and that reply reaches your backend through a webhook. Your system interprets the score, saves it to the database, classifies it as promoter, passive or detractor, and decides the next step. To understand how to receive these replies in real time, see the webhooks documentation, which explains how to set up the callback URL and handle each event received.

If you want to go beyond collection, you can connect an intelligence layer that reads the open answer and already categorizes the reason for dissatisfaction, or replies to the customer in context without waiting for a human. An AI chatbot on WhatsApp can ask the question, interpret a score written out in words, thank the customer naturally and escalate to an agent only when the score was low, filtering what really needs human attention.

Automation also solves idempotency: you do not want to send the same survey twice to the same customer or count an answer twice. By centralizing everything in a system that records each send and each answer, you keep the history clean and can measure the response rate accurately.

The infrastructure behind the sends

A satisfaction survey depends on a reliable WhatsApp number to send and receive. If you use Meta's official API, every message you initiate falls under approved templates and per-message pricing, which makes surveys in volume more expensive. An alternative is an unofficial API, which gives more freedom of format and predictable cost, in exchange for requiring care with the health of the number.

ZapZap API is an unofficial WhatsApp API built for this kind of operation. The model is prepaid per number, at R$15 per number per month, so you provision as many numbers as you need and pay only for what you use. When you create the account there is a welcome credit, subject to the current campaign.

Sending surveys at scale requires attention to the number's behavior, because bulk sending from a new SIM card catches the attention of the platform's filters. That is why ZapZap API offers instance warm-up and anti-ban features that distribute the sends and simulate a more organic usage pattern. This reduces the risk of the number losing reach in the middle of a collection campaign, without promising immunity, since no tool controls WhatsApp's decision.

For those who already have a CRM or their own system, API and webhook integration closes the loop: your system decides when to survey, ZapZap API delivers the message and returns the answer, and the optional AI layer interprets the text. The result is a satisfaction survey that runs on its own and feeds your dashboards without repeated manual work.

Turning answers into action

Collecting scores without acting is waste. The first use of the data is closing the loop with the detractor. Every score from 0 to 6 should trigger a quick human contact, preferably the same day, to understand the problem and try to win the customer back. This follow-up has a double effect: it resolves the specific case and shows that the survey is not decorative, which raises people's willingness to answer in the future.

The second use is aggregation. Track NPS over time and cross it with changes you made to the product, the service or the price. A drop after a change is a sign something went wrong. A rise confirms the change was right. Without a historical series you only have a loose snapshot, and the value of NPS lies precisely in the trend.

The third use is reading the open answers looking for patterns. If ten detractors cite the same complaint, you have found a structural problem worth fixing at the root, not case by case. AI tools help group these texts by theme when volume gets too high for manual reading, turning hundreds of messages into a short list of causes.

Lastly, make use of the promoters. Those who gave 9 or 10 are the audience most willing to refer, review publicly and become social proof. A referral or review request sent right after the high score, still in the same WhatsApp flow, converts better than any generic campaign, because it arrives at the exact moment satisfaction is at its peak.

To sum up the cycle: ask at the right time, collect without effort, close the loop with detractors and ask promoters for a referral. On ZapZap API, collection runs through the API and webhook on your own number, and the answers land in your system to become action the same day.

Quick summary

  • One question per message: score first, reason after. The score tells you how much, the text tells you why.
  • Timing is everything: CSAT right after support, NPS on a monthly or quarterly cadence per customer, always during business hours.
  • Automate collection with an API and webhook to capture replies in real time and avoid duplicate sends or duplicate counting.
  • Close the loop with detractors the same day and use promoters for referrals and social proof.
  • A healthy number matters: warm-up and anti-ban reduce the risk of losing reach in the middle of a survey campaign.

Also read

Frequently asked questions

What is the difference between NPS and CSAT on WhatsApp?

NPS measures long-term loyalty with the 0 to 10 recommendation question, and makes sense on a periodic cadence. CSAT measures satisfaction with a specific event, such as a support conversation that just ended, and uses a smaller scale, from 1 to 5. Many operations use CSAT after each interaction and NPS from time to time to track the relationship as a whole.

When is the best time to send the survey?

For support CSAT, send right after the conversation closes, from a few minutes to a few hours later, while the experience is fresh. For a purchase or delivery, wait for the customer to try the product. For relationship NPS, use a monthly or quarterly interval per customer. Avoid late night, weekends and holidays, unless your audience expects contact at those times.

How do I automate collecting the answers?

Use a WhatsApp API to send the question and a webhook to receive the reply in real time in your system, which classifies the score and decides the next step. ZapZap API, unofficial and prepaid at R$15 per number per month with a welcome credit when you create the account, subject to the current campaign, lets you build this flow, and an optional AI layer can interpret open answers and escalate only low scores to a human.

Doesn't sending surveys in volume put the number at risk?

Bulk sending from a new SIM card catches the attention of WhatsApp's filters. To reduce that risk, spread the sends through the day and use instance warm-up before scaling. ZapZap API offers warm-up and anti-ban features that help simulate a more organic usage pattern, without guaranteeing immunity, since the final decision always belongs to the platform.

Find out what your customers think

Connect a number and send your first score survey. Verify your phone and you get a welcome credit to test without depositing (one per phone, subject to the current campaign).