TL;DR: we built a full customer listening programme inside Odoo, covering NPS, complaints, testimonials and internal feedback. This article is about the design decisions rather than the feature list: why the score hides below ten responses, why the same contact cannot be asked twice within thirty days, why complaints follow ISO 10002, and why a 360 refuses to show an average below three respondents. One section covers the move from collection to an action plan, which is where most listening programmes die. Every choice is backed by a source listed at the end.
In 1997, a Pew Research Center telephone survey got a 36% response rate. By 2018, the same kind of survey got 6%. Pew eventually moved most of its work to an online panel, because the phone had stopped answering.
That number should humble anyone about to send a survey. People have not stopped having opinions: they have stopped answering the organisations that ask too often, at too much length, and never show what they did with the answers. That is exactly the trap an SMB walks into when it discovers NPS and starts sending it to everyone.
We spent the last few months building a customer experience module inside our own Odoo. Here are the decisions we made, and what they rest on.
The real risk is asking one time too many
The first thing we coded was not a survey. It was a guardrail.
The same contact cannot receive two feedback requests less than thirty days apart, across every channel. Not thirty days per survey: thirty days for everything the system sends. An NPS invitation, an end-of-mandate rating, a post-signature request, all of it draws on the same budget. On our relationship survey we raised the pace to ninety days, because a question about the business relationship does not need asking every quarter.
A contact blocked by that guardrail is not lost: the request is deferred and picked up later, and the reason for the deferral is written to the record. That avoids the classic scenario where a team believes it surveyed two hundred clients when a third of them were silently skipped.
Underneath the guardrail sits the legal floor. In Canada, every commercial electronic message must carry an unsubscribe mechanism that is easy to use and free, and the business has ten business days to honour the request. Ours is a cryptographically signed, personal link, it only takes effect on explicit confirmation, and unsubscribing feeds the same list every guardrail consults. So the ten-day window is zero: the block is immediate.
Two more exclusions are hard-coded. A client in collections never receives a "how are we doing?" the same week as a formal demand letter. And anyone on the do-not-contact register in the privacy side is removed before the pacing rule is even calculated.
What NPS measures, and what people make it say
The Net Promoter Score comes from a Frederick Reichheld article published in Harvard Business Review in December 2003. A single question, scored 0 to 10: how likely are you to recommend us? Nines and tens are promoters, sevens and eights passives, the rest detractors. The score is the percentage of promoters minus the percentage of detractors.
The original promise was a big one: this would be the best predictor of growth. Four years later, a team led by Timothy Keiningham redid the exercise across twenty-one firms and more than fifteen thousand interviews, in the very industries Reichheld had held up as examples. The result: the claimed superiority of NPS over other measures does not replicate. NPS correlates strongly with plain customer satisfaction, and it is sometimes the best indicator, not always. The paper won the Journal of Marketing's H. Paul Root Award, which is not the usual fate of a sloppy critique.
We kept NPS anyway. Not because it is magic, but because it is comparable: nearly everyone calculates it the same way, which gives you a reference point over time. We simply treated it as what it is, a noisy indicator.
Why the score hides below ten responses
An NPS is a difference between two proportions, computed on a sample. So it carries a confidence interval, and that interval is wide when the sample is small. The methodological literature on this, notably MeasuringU's work on the adjusted-Wald interval, validates the coverage of those intervals across sample sizes from 25 to 500.
In other words: below twenty-five responses you are already outside the range where the method was tested. Our threshold of ten is generous, not cautious. Below it, the dashboard shows no score at all: it shows "n too small" and the number of responses received. We preferred an honest blank to a figure that would look like a result.
This is the kind of detail that separates a measurement tool from a reporting tool. A "+40" computed on three responses always ends up in a slide deck.
A score with no follow-up is theatre
Bain, the firm NPS came from, does not present the score as a deliverable. It presents it as the trigger for two loops. The inner loop is the person who calls the unhappy client back, directly and quickly, in that client's own words. The outer loop is what escalates to decision-makers when the problem is bigger than one team: a policy, a process, a price, a product feature.
Both are coded. A detractor score or a dissatisfied rating automatically creates a follow-up task assigned to the account owner, with a deadline. If the client corrects their score afterwards, the follow-up updates instead of staying frozen on the first version. And comments can be tagged by theme, which feeds the outer loop: three clients naming the same irritant is no longer three anecdotes.
A word on transactional measurement, because relationship NPS does not cover everything. In 2010, Matthew Dixon, Karen Freeman and Nicholas Toman published a study in Harvard Business Review covering more than 75,000 people who had dealt with customer service. Their conclusion cut against the grain: spectacular efforts to "delight" customers barely move loyalty. What counts is solving the problem simply and fast. That is where the Customer Effort Score came from.
Hence the choice, for everything transactional on our side, of a three-emoji request rather than a questionnaire. After a meeting report, after an appointment, after a maintenance window, after a signature: three buttons in the email, one click, done. The long questionnaire is reserved for relationship measurement, two or three times a year at most.
A complaint is not negative feedback
A detractor gives a score. A complainant wants an answer. Running both through the same flow guarantees that neither gets handled well.
The complaints side follows ISO 10002:2018, the standard covering complaints handling in organisations. It insists on a process that is open and easy to use, on acknowledgement, on keeping the complainant informed of progress, and on the improvement loop that should follow.
In practice: every complaint gets an acknowledgement deadline, and the actual acknowledgement date is recorded separately from the received date. So we measure the delay that was lived, not the one that was promised. An alert fires if the deadline approaches without acknowledgement. Resolving requires a written root cause and corrective action, otherwise the record refuses to close. And after closure we ask the complainant whether they are satisfied with how it was handled, which is a different question from "are you satisfied with us".
One design detail we are happy with: the file number stays internal, and the complainant receives a short, non-sequential confirmation code instead. A complaint numbered PLT0007 tells its recipient they are the seventh in the company's history. A sequential number sent outside the building is a business-volume leak.
If you are starting a customer listening programme, the order we recommend:
- Decide first who calls an unhappy client back, and how fast. Without that, do not ask the question.
- Set a maximum solicitation pace before you write the first survey.
- Separate complaints from the rest, with a dated acknowledgement.
- Measure transactional moments in one click, keep questionnaires for the relationship.
- Do not publish a score until you have enough responses for it to mean something.
Quoting a client is something you ask for
A testimonial on a website is personal information used for promotional purposes. In Quebec, Law 25 requires consent to be manifest, free, informed and given for specific purposes. The Commission d'accès à l'information has published guidelines detailing those criteria, including granularity, time limits and the requirement that the request be distinct.
Translated into software logic: a testimonial cannot move to "published" unless proof of consent is on file. Verbal consent is allowed, but it requires a note saying when and how. And when consent is withdrawn in the privacy register, the published testimonial is pulled from the site automatically, with no human involved. That is the part most often forgotten: getting consent is easy, honouring its withdrawal a year later requires the two systems to talk to each other.
On the rest of the law's obligations, we have written about privacy regimes across jurisdictions.
The 360, where you can actually do harm
The original project brief also asked for internal feedback, of the 360-degree kind. It is the most delicate function in the whole module, because it is the only one that is about people rather than a service.
Two research findings shaped the design. The first comes from the Smither, London and Reilly meta-analysis published in Personnel Psychology in 2005, which pooled twenty-four longitudinal studies: performance improvement after multisource feedback is generally small. It exists, but it depends mostly on context, in particular on whether the person receives a clear signal that change is needed and actually wants to improve. A 360 tool therefore produces no result by itself. What matters is what comes after.
The second comes from the Center for Creative Leadership, which makes two points: data confidentiality and rater anonymity have to be settled up front, and a 360 is a development exercise, not a performance appraisal and not a pay input. Raters need to know that before they answer.
Hence three choices. Feedback is filed under the person being reviewed, not the respondent, which is the only way to read it per person. The respondent's name is not written to the register: lists, groupings and exports never name them. And a person's average refuses to display below three responses, for the same reason NPS hides below ten, with one added risk: at two respondents an average becomes a guessing game about who said what.
We are straight about how far that anonymity goes. The masking covers the register, not the database: a manager still has technical access to the survey response itself. And in a team of three, a comment stays recognisable by its content no matter what the software does. You say that to people before asking them to answer, and the invitation email says it.
If internal feedback is your topic, our piece on staff retention and the tools people use tackles the other end of the problem.
From collection to an action plan
Collecting cleanly is the easy half. What fails most often is everything between the dashboard and an actual change.
That is not a hunch. Neil Morgan, Eugene Anderson and Vikas Mittal published a field study in the Journal of Marketing in 2005, covering 142 managers across 38 firms, 37 of which were kept for analysis, looking specifically at how organisations use the satisfaction information they gather. The picture is consistent: collection is well equipped, use is far less so.
A few of their findings deserve to go up on a wall. Roughly 40% of firms do not routinely push satisfaction data back down to frontline employees. Data is often circulated without anyone having identified root causes or fixes to guide the people receiving it. Many internal users are sceptical of the numbers they are sent. More than half of firms run no analysis of the drivers behind the overall score. And a single firm in the sample linked satisfaction to purchase behaviour, none to profitability.
| What the study observes | What we do instead |
|---|---|
| Data never reaches the front line | Feedback lands on the client record, visible to the people working on it, not in a monthly report reserved for management |
| Circulated with no root cause and no fix | No complaint closes without a written root cause and corrective action |
| No analysis of what drives the score | Every comment is tagged by theme, and it is the volume per theme that steers, not the score |
| Used tactically rather than strategically | A recurring theme becomes a dated task with an owner, in the same system as the rest of the work |
| Internal scepticism about the numbers | The score stays hidden until it is solid, and the response count is always shown next to it |
The sequence that works
Bain describes the mechanics of the outer loop precisely enough to copy. Information is captured, then routed to the decision-makers and performers concerned. A team is assigned, it investigates root causes, it develops solutions, and above all it weighs the priority of those solutions against every other initiative in the company before acting. Throughout, both customers and employees are kept informed of progress whenever that is relevant.
That last point is the one everyone drops. A client who reports an irritant and then never hears anything again learns exactly one thing: answering is pointless. That is precisely how you manufacture a 6% response rate.
The prioritisation deserves to be taken seriously too. An action plan drawn from client feedback that lives in its own spreadsheet, next to the strategic plan, loses every time. On our side, a theme that surfaces becomes an ordinary task, with a deadline and an owner, in the same queue as everything else. It has to defend itself against other priorities instead of floating in a parallel document.
What a fix does not buy back
One honest nuance to close on, because it changes how you sell a listening programme internally. The "service recovery paradox" holds that a client whose problem you solve brilliantly ends up more loyal than if the problem had never occurred. The meta-analysis by Celso de Matos, Jorge Henrique and Carlos Rossi, published in the Journal of Service Research in 2007, pooled the studies on the question. The result is more measured: the effect is real and positive on satisfaction, but it is not significant on repurchase intentions, on word of mouth, or on corporate image.
Put plainly, recovering well repairs the mood, not necessarily the commercial relationship. So the return on a listening programme does not come from spectacular rescues of angry clients. It comes from no longer creating the problem, which brings everything back to the same place: the outer loop, root causes, and an action plan that actually gets finished.
It is also what the 360 meta-analysis cited earlier says in a different register: feedback does not produce change by itself. What produces change is what the organisation decides to do with it, and whether it really decides.
The blind spots
This module does not replace a specialised platform on every front, and pretending otherwise would be dishonest.
Automated analysis of written comments is not there. We had written it, wired to our local AI, and we switched it off before going live: sending unfiltered client comments to a service that can execute actions opens an injection door. It will come back once the entry point is walled off as read-only.
There are no industry benchmarks. The large platforms sell sector comparisons built on their own data, and that is not something you improvise.
The SMS channel is capped by the telephony provider, at under thirty messages a day. That is useful for reaching contacts with no email address, not for a campaign.
And the biggest one: software does not create the culture. It can force a dated acknowledgement, it cannot force anyone to call a client back. The 360 meta-analysis says the same thing in different words. The tool makes follow-up visible and measurable, the follow-up stays human.
Already measuring satisfaction somewhere, in a spreadsheet or a separate survey tool? Bringing it back into the ERP changes one thing above all: the score arrives attached to the client record, the project and the invoice. Let's talk about your situation.
At Blue Fox
The module runs in our own Odoo, as eighteen components: the central register and its bridges into CRM, projects, the help desk, e-signature, hosting, the website and the client portal. It is published under the LGPL-3 free licence alongside the rest of our in-house modules, and covered by roughly sixty automated tests, a good third of which exist purely to verify that no client-facing message goes out while it is supposed to be switched off.
Because that is the last design choice, and not the smallest: every outbound message to a client is disabled by default. Post-meeting feedback, the survey after a lost opportunity, the request after an appointment, the one after a maintenance window, the one after a signature: each has its own switch, and each ships off. We would rather an organisation turn its channels on one at a time, knowing what it is turning on, than discover after the fact that its ERP has been writing to its clients.
The post-meeting trigger builds on our meeting records module, which gives you a free measurement: the client has just received the report, so that is the best moment to ask whether the meeting was useful.
Does measuring customer experience make sense for your organisation? Let's explore it together.
Sources
- Pew Research Center: telephone survey response rates fell from 36% in 1997 to 6% in 2018.
- CRTC, Canada's Anti-Spam Legislation FAQ: mandatory unsubscribe mechanism, honoured within ten business days.
- Frederick Reichheld, "The One Number You Need to Grow", Harvard Business Review, December 2003: the article that introduced the Net Promoter Score.
- Keiningham, Cooil, Andreassen and Aksoy, "A Longitudinal Examination of Net Promoter and Firm Revenue Growth", Journal of Marketing, 2007: the claimed superiority of NPS does not replicate across 21 firms and more than 15,000 interviews.
- MeasuringU, statistical analysis of NPS: adjusted-Wald interval, coverage validated on samples of 25 to 500.
- Bain & Company, Net Promoter System, the inner loop: call the client back directly, and escalate what is bigger than the team.
- Dixon, Freeman and Toman, "Stop Trying to Delight Your Customers", Harvard Business Review, July 2010: a study of more than 75,000 people, and the origin of the Customer Effort Score.
- ISO 10002:2018: guidelines for complaints handling in organisations.
- Commission d'accès à l'information du Québec, guidelines 2023-1 on valid consent (in French): consent must be manifest, free, informed, granular and distinct.
- Smither, London and Reilly, "Does Performance Improve Following Multisource Feedback?", Personnel Psychology, 2005: meta-analysis of 24 longitudinal studies, improvements generally small.
- Center for Creative Leadership, implementing a 360 feedback initiative: confidentiality and anonymity settled up front, and 360 as a development exercise.
- Morgan, Anderson and Mittal, "Understanding Firms' Customer Satisfaction Information Usage", Journal of Marketing, 2005: field study of 142 managers across 38 firms, on the gap between collecting and using.
- Bain & Company, Net Promoter System, the outer loop: route to decision-makers, investigate root causes, prioritise against other initiatives, report on progress.
- De Matos, Henrique and Rossi, "Service Recovery Paradox: A Meta-Analysis", Journal of Service Research, 2007: positive effect on satisfaction, not significant on repurchase, word of mouth or corporate image.