Net Promoter Themes
1. Overview
This process extracts, consolidates, and presents the most common themes that appear in Net Promoter Score (NPS) feedback comments. It turns a raw list of NPS responses into a concise set of topics, each linked to how customers feel (promoter, passive, detractor). The result is a ready‑to‑use summary that can be used for analysis, reporting, and action planning.
2. Business Value
- Customer Insight – Reveals what drives high and low scores, giving the CX team concrete topics to address.
- Prioritization – Highlights the most‑frequent pain points or strengths, guiding resource allocation.
- Reporting Efficiency – Produces a clear, repeatable output that can be included directly in stakeholder presentations or weekly CX dashboards.
3. Operational Context
-
When to run:
- After each NPS survey cycle when the raw feedback has been collected and is ready for analysis.
- Whenever a new batch of NPS comments is received (e.g., monthly, quarterly, or after a major product release).
-
Who uses it:
- Customer Experience Analysts, CX Managers, and any team members responsible for turning customer feedback into actions.
-
How often:
- Typically once per survey period (monthly, quarterly, or after each major survey release), but can be repeated as often as new NPS data is gathered.
4. Inputs
4.1 NPS Feedback Data
- Name/Label: NPS Feedback List
- Type: List of feedback entries (one entry per respondent)
Details Provided
Each entry in the list must contain the following three fields:
| Field Name | Data Type | Description |
|---|
| Customer Reference | Text (optional) | A recognizable identifier for the respondent (e.g., “John Doe”, “Acme Inc.”). |
| NPS Score | Number (0‑10) | The numeric NPS rating supplied by the respondent. |
| Comment | Text | The free‑text comment the respondent submitted. The comment may be a sentence or a short paragraph. |
Note: The list must contain at least one entry. If the list is empty, the process will end with an “No data” notice.
5. Outputs
5.1 Theme Summary Table
- Name/Label: Themes Summary
- Contents: A table that lists every identified theme across all NPS comments, together with the NPS category it most closely aligns with, how often it appears, and up to two example comments that illustrate the theme.
- Formatting Rules:
- Use a Markdown table with four columns: Theme, Category, Frequency, Example Comments.
- Theme – short, title‑case phrase (e.g., “Delivery Speed”).
- Category – “Detractor”, “Passive”, “Promoter” or “All” (if the theme appears across categories).
- Frequency – total number of comments that contain the theme.
- Example Comments – quoted snippets from the original comments, separated by a semicolon; each snippet must be no longer than 140 characters.
| Theme | Category | Frequency | Example Comments |
|---|
| (e.g., Delivery Speed) | Detractor | 12 | “Delivery was slow and the package arrived damaged”; “The slow shipping made me look elsewhere.” |
5.2 Top 5 Themes per Category
- Name/Label: Top 5 Themes per Category
- Contents: For each NPS category (Detractor, Passive, Promoter) a list of the five most‑frequent themes, sorted by frequency. If fewer than five themes exist for a category, list all available.
- Formatting Rules:
- Use a single Markdown table with columns: Category, Rank, Theme, Frequency.
- Rank – 1 = most frequent, 5 = fifth‑most frequent.
| Category | Rank | Theme | Frequency |
|---|
| Detractor | 1 | Delivery Speed | 12 |
| Detractor | 2 | Product Quality | 10 |
| Detractor | 3 | Price | 9 |
| Detractor | 4 | Customer Service | 8 |
| Detractor | 5 | Return Process | 7 |
| ... | ... | ... | ... |
(Repeat rows for Passive and Promoter categories.)
6. Detailed Plan & Execution Steps
-
Verify Input
- Ensure the NPS Feedback List is present.
- Confirm every entry contains a numeric NPS score (0‑10) and a comment. If any entry lacks a score or comment, flag it for manual review and exclude it from the analysis.
-
Add NPS Category
- Convert each NPS score to a category:
- Detractor: 0‑6
- Passive: 7‑8
- Promoter: 9‑10
- Add a new field Category to each entry based on this rule.
-
Separate by Category
- Split the entire list into three groups: Detractors, Passives, Promoters.
-
Normalize Comments
For every comment in all groups:
a. Convert to lower case.
b. Remove punctuation (periods, commas, etc.).
c. Split into words.
d. Remove all stop words (see Appendix C).
e. Discard words shorter than three characters (except “no” and “yes”).
-
Count Word Occurrences
- For each group (and for the combined “All” group) tally the number of times each remaining word appears across all comments in that group.
-
Identify Candidate Themes
- A word (or short phrase) becomes a candidate theme if it meets either of these thresholds:
- Appears in ≥ 5 % of the comments within the group, or
- Appears in at least 3 separate comments (whichever is lower).
- For each candidate, record:
- The total count (frequency).
- The list of comments in which it appears (for later example selection).
-
Merge Similar Words
- Using the Synonym Mapping in Appendix C, combine synonyms (e.g., “price” and “cost” become a single theme “Price”).
- Combine counts and merge example comments accordingly.
-
Assign Primary Category
- For each theme, calculate the proportion of comments that belong to each NPS category.
- If a single category accounts for > 60 % of the theme’s mentions, assign that category (Detractor, Passive, or Promoter).
- If no single category meets the threshold, label the theme as “All”.
-
Select Example Comments
- From the list of comments that contain the theme, select up to two examples that are most representative (i.e., contain the exact term and are clear).
- Preserve the original wording and capitalization (do not lower‑case these examples).
-
Build the Theme Summary Table (see 5.1).
- Populate the table rows in descending order of Frequency.
-
Build Top 5 Themes per Category (see 5.2).
- Sort each category’s list by frequency, assign ranks 1‑5.
-
Finalize Output
- Produce both tables.
- Ensure no empty cells; any missing data should cause the row to be omitted, not left blank.
-
Document Completion
- Record the date of analysis and the analyst’s name (optional) in a separate note (not part of the output tables).
7. Validation & Quality Checks
-
Missing Data Check – Verify every entry used in the analysis contains both an NPS score and a comment. If any entry is missing, it must be logged for manual review and excluded from the counts.
-
Category Assignment Check – Confirm that each theme’s Category matches the 60 % rule described in step 8. If not, re‑evaluate the theme’s distribution.
-
Frequency Threshold Check – Confirm each theme appears in at least the required minimum number of comments (≥ 5 % or ≥ 3). If any listed theme fails this check, remove it.
-
Example Consistency Check – Verify that each Example Comment indeed contains the exact theme wording (case‑insensitive) and is under 140 characters.
-
Duplicate Removal Check – Verify that synonym merging has eliminated duplicate entries for the same underlying theme.
-
Final Review – Scan the final tables for spelling errors, missing columns, or misplaced data (e.g., a numeric value placed in the “Example Comments” column).
-
Error Handling – If the input list is empty, produce a short notice: “No NPS comments were provided; no themes can be generated.” Do not generate any tables.
8. Special Rules / Edge Cases
-
Short Comments:
- If a comment becomes empty after stop‑word removal, exclude it from the word‑count process (but keep the entry for overall counts).
-
Very Small Data Sets:
- If total comments < 10, lower the absolute count requirement to 2 occurrences for a term to become a theme.
-
Multiple Themes per Comment:
- A single comment may contribute to several theme counts. This is expected and helps reflect the comment’s full meaning.
-
Tie‑Breakers:
- If two themes have the same frequency, sort them alphabetically.
-
Profanity or Sensitive Language:
- Include the comment verbatim in the example, but flag the entry for possible review. The presence of profanity does not affect counting.
-
Unusual Words:
- If a word appears only once but is a product name or brand, treat it as a Unique Mention and do not include it as a theme unless the 5 % or 3‑comment threshold is met.
-
No Valid Themes:
- If no word meets the threshold for any category, return a single-row table with “No significant themes identified.”
-
Formatting Limits:
- Do not generate more than 10 themes per category; the top 5 are mandatory, any additional can be listed under “Additional Themes” if needed, but they are optional and not required for the core output.
9. Example
Input (sample NPS feedback)
1. Customer: John Doe
NPS Score: 2
Comment: “The delivery was **slow** and the package arrived **damaged**.”
2. Customer: ACME Corp.
NPS Score: 9
Comment: “Great product quality and **fast shipping**. I’ll recommend to friends.”
3. Customer: Maria L.
NPS Score: 7
Comment: “The product is good, but the **price** is a bit high. Shipping was ok.”
4. Customer: Bob K.
NPS Score: 5
Comment: “**Customer service** was unhelpful when I asked about a return.”
5. Customer: Susan R.
NPS Score: 8
Comment: “Overall happy, but **pricing** could be more competitive. The **support team** was friendly.”
Expected Output
Theme Summary Table
| Theme | Category | Frequency | Example Comments |
|---|
| Delivery Speed | Detractor | 1 | “The delivery was slow and the package arrived damaged.” |
| Product Quality | Promoter | 1 | “Great product quality and fast shipping.” |
| Price | All | 3 | “The price is a bit high.”; “Pricing could be more competitive.” |
| Customer Service | Detractor | 1 | “Customer service was unhelpful.” |
| Shipping | All | 2 | “Fast shipping.”; “Shipping was ok.” |
Top 5 Themes per Category
| Category | Rank | Theme | Frequency |
|---|
| Detractor | 1 | Delivery Speed | 1 |
| Detractor | 2 | Customer Service | 1 |
| Detractor | 3 | (none) | – |
| Passive | 1 | Price | 2 |
| Passive | 2 | Shipping | 1 |
| Promoter | 1 | Product Quality | 1 |
| Promoter | 2 | Shipping | 1 |
| Promoter | 3 | (none) | – |
(Only the themes that met the 5 %/3‑occurrence rule are shown; in this tiny sample the thresholds are relaxed, so any term appearing at least once appears.)
Appendix A – FAQ
1. What if a comment contains more than one theme?
All relevant themes are recorded. The comment will be counted toward each theme it mentions, and the example comment can be reused for each theme that appears in it.
2. How do I decide the number of top themes to show?
The SOP specifies the top five per category. If fewer than five unique themes exist, list all that meet the threshold.
3. What if two themes have exactly the same frequency?
Sort the tied themes alphabetically.
4. Do I need to manually read each comment?
The steps are written so they can be performed manually or with a simple text‑processing tool. The process does not rely on any external data source.
5. What if the NPS score is missing or outside the 0‑10 range?
Flag the entry for manual review. Do not include it in the analysis.
6. How many stop words should I use?
Use the comprehensive list provided in Appendix C. If you wish to add or remove words, do so only in the appendix; the process itself does not change.
7. My comments contain emojis or non‑ASCII characters—what should I do?
Remove any non‑textual characters (including emojis) before the word‑count step.
8. Can I add custom synonyms (e.g., “shipping” = “delivery”)?
Yes, add them to the Synonym Mapping in Appendix C. The process will automatically combine the counts for those terms.
9. What if the same theme appears under multiple categories?
The theme will be assigned to the category that contains at least 60 % of its occurrences; otherwise it will be labeled “All”.
10. How is “frequency” calculated?
Frequency is the number of distinct comments that contain the theme, not the total word count.
11. What should I do if the output table is too long for a report?
You may filter to the top‑5 per category (already provided). For internal use, retain the full table; for external reporting, use the top‑5 table only.
12. Is there a limit to comment length?
Comments longer than 500 characters are acceptable, but the “Example Comments” column will truncate at 140 characters (including ellipsis).
13. What if there are no comments for a given NPS category?
The “Top 5 Themes per Category” table will still list the category, but the rows will indicate “No comments” for that category.
14. Should I remove duplicate comments before processing?
Yes. If the exact same comment appears multiple times, each instance counts toward frequency (it reflects multiple customers expressing the same theme).
15. Can this process be used for non‑NPS feedback?
Yes, provided you have a numeric rating that can be mapped to categories (e.g., satisfaction scores). Adjust the “Category” mapping accordingly in step 2.
16. How are ties for the “All” category resolved?
If no single category reaches 60 % of the theme’s mentions, the theme is labeled “All”.
17. What if a comment contains only a stop word?
If the comment becomes empty after stop‑word removal, it is excluded from the word‑count step.
18. Can the process be run on a weekly basis?
Yes. The SOP is repeatable for each new batch of NPS feedback.
19. How do I handle new product names that appear often?
Add them to the Synonym Mapping if they are synonymous with an existing theme, or treat them as separate themes if they represent a distinct concept.
20. Is there a recommended way to present the final tables?
Insert the Markdown tables directly into a Markdown‑compatible document (e.g., a Confluence page or a plain‑text report).
21. How to handle non‑English comments?
The current SOP only supports English. If non‑English comments are present, filter them out or translate them before processing.
22. Can the process be used with other rating systems (e.g., CSAT)?
Yes, if you map the numeric rating to an equivalent “Detractor/Passive/Promoter” classification, the steps remain the same.
23. What should I do if the same theme appears with different wording (e.g., “fast” and “quick”)?
Add both terms to the Synonym Mapping so they merge into a single theme.
24. How to handle spelling errors?
The basic process does not include spell‑check. You may manually correct obvious errors before the analysis step.
25. Where can I find the list of stop words and synonyms?
See Appendix C.
26. Do I need to include the date of the NPS survey in the output?
Optional – you may add a note outside the tables.
27. Can the process be automated in a spreadsheet?
Yes; the steps are simple enough for a spreadsheet with formulas and text functions.
28. How do I handle comments that contain both positive and negative sentiments?
Count each relevant theme separately; the comment may appear under multiple categories if the score dictates so.
29. What if a comment contains a URL or email?
Remove URLs or emails as part of the “Remove punctuation and non‑text” step.
30. Is there a limit to the number of themes?
The SOP will generate any number of themes that meet the threshold; the final tables can be as long as necessary, but the “Top 5” table always includes at most five per category.
31. What if the “NPS Score” is missing but the comment is valuable?
The comment cannot be categorized; flag for manual review.
32. How do I handle a comment that only contains a product name?
If the product name appears in multiple comments, it will become a theme. If it appears only once and does not meet the threshold, it will be ignored.
33. Should I include the “Customer Reference” in the output?
No. The output focuses on themes, not individual identities.
34. How to deal with duplicate themes after synonym merging?
After merging, ensure only one row per theme remains.
35. What is the recommended way to share the output with stakeholders?
Copy the Markdown tables into a shared document (e.g., Google Docs, Confluence) where they render correctly.
36. How to verify that the “Example Comments” actually contain the theme?
Perform a quick search (Ctrl + F) for the theme word in the original comment.
37. Is it acceptable to use the same example comment for multiple themes?
Yes, if the comment includes both themes.
38. How do I handle multiple languages?
Translate all comments into English before applying the SOP, then process as described.
39. Do I need to document the methodology?
Yes, you can keep this SOP as the documented method for future reference.
40. What if a comment contains a brand name that is also a theme (e.g., “Apple”)?
Treat it as a theme only if it meets the frequency threshold.
Appendix B – Glossary
| Term | Definition |
|---|
| NPS (Net Promoter Score) | A numeric rating (0‑10) that indicates how likely a respondent is to recommend a product or service. |
| Detractor | An NPS rating of 0‑6; indicates an unhappy customer. |
| Passive | An NPS rating of 7‑8; indicates a neutral or indifferent customer. |
| Promoter | An NPS rating of 9‑10; indicates a satisfied, enthusiastic customer. |
| Theme | A recurring topic, issue, or compliment that appears in multiple customer comments (e.g., “delivery speed”, “price”). |
| Theme Summary | A list that shows each identified theme, its category, how often it appears, and example comments. |
| Frequency | The number of distinct comments that mention a particular theme. |
| Example Comment | A short excerpt from a customer’s comment that illustrates the theme. |
| Stop Words | Common words (e.g., “the”, “and”, “but”) that are removed from the text before counting words. |
| Synonym Mapping | A list of words that have the same meaning for the purpose of merging themes (e.g., “price” = “cost”). |
| Category | The NPS segment (Detractor, Passive, Promoter) that a theme is most associated with. |
| Keyword | A single word used in the word‑count analysis. |
| Phrase | Two or more words that together convey a concept (e.g., “customer service”). |
| NPS Survey Cycle | The period in which an NPS survey is distributed, completed, and the data collected. |
| CX (Customer Experience) | The overall perception and interaction a customer has with a company or its products. |
Appendix C – Reference Materials
C.1. Stop Word List
(These words are ignored in the word‑count step. The list is exhaustive to ensure consistency.)
a, an, and, as, at, be, because, been, before, but, by, can,
could, did, do, does, done, for, from, had, has, have,
he, her, hers, his, i, if, in, into, is, it, its,
just, like, may, might, my, no, not, of, off, on,
once, only, or, other, out, over, said, same,
should, so, some, such, than, that, the,
their, them, then, there, these, they,
this, those, to, too, up, us, was,
we, were, what, when, where, which, while, who,
whom, why, with, would, you, your,
the, a, an, and, or, but, nor, for,
so, yet, although, because, if, unless,
while, where, when, how, what,
who, that, which,
(The list continues with all common English stop words.)
Note: The stop‑word list can be expanded or reduced based on business needs. Adjustments must be made in this appendix; the process itself remains unchanged.
C.2. Synonym Mapping (for Theme Merging)
| Primary Theme | Synonyms (including variations) |
|---|
| Price | price, cost, pricing, expensive, cheap, cost‑effective |
| Delivery | shipping, delivery, shipping speed, shipping time, shipment |
| Quality | quality, quality‑of‑product, product quality, durable, durability |
| Customer Service | support, customer service, service, help, assistance |
| Return | return, returns, return process, refund, exchange |
| Website | website, site, web, online platform, portal |
| Product | product, item, product line, offering |
| Experience | experience, user experience, UX, user‑interface |
| Pricing | price, pricing, cost, cost‑related |
| Support | support, help, assistance, customer support |
| Fast | fast, quick, rapid, speedy |
| Slow | slow, delayed, sluggish |
| Easy | easy, simple, straightforward, effortless |
| Complicated | complex, complicated, difficult |
| Friendly | friendly, helpful, courteous |
| Professional | professional, professional‑tone, formal |
| Reliable | reliable, dependable, trustworthy |
| Flexible | flexible, adaptable |
| Responsive | responsive, quick‑response |
| Clear | clear, understandable, clear‑cut |
| Confusing | confusing, unclear, ambiguous |
| Bug | bug, error, glitch, issue, problem |
| Feature | feature, functionality, capability |
| Price (duplicate for emphasis) | cost, pricing, expensive, cheap |
| Satisfaction | satisfaction, happy, satisfied, content |
| Feedback | feedback, comments, remarks |
| Support Team | support team, customer support team, help team |
Guidelines for Using Synonyms
- When a word in a comment matches any of the synonyms, count it as an occurrence of the primary theme.
- If multiple synonyms appear in the same comment, they still count as a single occurrence for that theme.
- If a synonym appears as part of a larger phrase (e.g., “fast delivery” vs. “fast”), count both the word “fast” and the phrase “fast delivery” as separate occurrences only if the phrase itself meets the threshold.
C.3. Theme Naming Style Guide
-
Case: Use Title Case (first letter of each word capitalized, except for pre‑positions and conjunctions that are not the first word).
- Correct: “Delivery Speed”
- Incorrect: “delivery speed”
-
Punctuation: No trailing punctuation (periods, exclamation marks, or question marks) at the end of the theme.
-
Singular vs. Plural: Use the singular form unless the concept is inherently plural (e.g., “Delivery Times” is acceptable if “times” is part of the concept).
-
Avoid Duplicate Themes: Check the Synonym Mapping to prevent duplicate themes (e.g., “Price” vs. “Pricing”).
-
Clarity: Keep the theme short (no more than 3‑4 words). If a concept needs more detail, use the “Example Comments” to provide context.
-
No Personal Data: Do not include customer names, email addresses, or any personally identifiable information in the themes.
-
Spell Checking: Ensure all theme names are correctly spelled and free of typographical errors.
-
Language Consistency: All themes should be in English unless the whole dataset is in a different language – then translate to English before processing.
-
No Acronyms (unless widely understood in the business context).
C.4. Example Themes (Common in CX)
- Delivery Speed
- Product Quality
- Pricing
- Customer Service
- Return Process
- Website Usability
- Support Team
- Communication
- Reliability
- Ease of Use
- Feature Set
- Value for Money
- Technical Issue
- Order Accuracy
- Shipping Costs
- Billing Issues
- Account Management
- Mobile App
- Online Ordering
- Training Materials
C.5. Sample Workflow Checklist (for quick reference)
- Load Data – Ensure NPS feedback list is complete.
- Validate Scores – All scores must be 0–10. Flag missing/invalid.
- Assign Categories – Detra., Passive, Promoter.
- Normalize Text – lower case, remove punctuation.
- Remove Stop Words – Use stop‑word list.
- Count Words – Tally across all comments and per category.
- Apply Synonym Mapping – Merge counts.
- Determine Themes – Apply frequency thresholds.
- Assign Category – 60 % rule.
- Select Example Comments – pick up to two per theme.
- Generate Theme Summary Table – Populate.
- Generate Top 5 Table – Populate per category.
- Review & Validate – Ensure no missing fields, correct counts.
- Finalize & Save – Output both tables.
C.6. Frequently Used Phrases (to assist analysts)
- “fast shipping”, “quick delivery”, “slow delivery”, “late delivery”, “on‑time”, “delayed”, “slow service”, “friendly staff”, “rude service”, “helpful”, “unhelpful”, “price too high”, “cost effective”, “expensive”, “cheap”, “quality is good”, “poor quality”, “broken”, “defective”, “easy to use”, “hard to use”, “confusing”, “clear instructions”, “bad packaging”, “missing parts”, “no response”, “fast response”, “website bug”, “site down”, “payment problem”, “billing error”, “refund not received”, “return process”, “easy return”, “complicated return”, “no feedback”, “no comment”, “the product is…”, “the service was…”, “I would recommend”, “I will not recommend”, “I love”, “I hate”, “I am satisfied”, “I am not satisfied”.
C.7. Documentation Version History
| Version | Date | Author | Change Summary |
|---|
| 1.0 | 2025‑08‑11 | Alex Martinez | Initial SOP for Net Promoter Themes (CX). |
| 1.1 | 2025‑08‑15 | Alex Martinez | Added detailed stop‑word list and expanded synonyms. |
| 1.2 | 2025‑08‑20 | Alex Martinez | Added FAQ, expanded Glossary, added workflow checklist. |
**