Hunch

Analyze NPS comments in Google Sheets

Updated · Edoardo Panichi, maker of Hunch

=HUNCHMULTI(text, questions) asks several yes/no questions about one comment in a single formula and returns one probability column per question. Point it at NPS or CSAT comments with a question per theme, price, bugs, support, missing features, and every row gets a probability for each, ready to count against the score band next to it.

The score says how they feel, not why

A 3 and a 6 are both detractors, but one wrote about a bug and the other wrote about a renewal price, and the fix for each is a different team's problem. Reading a spreadsheet of free-text comments by eye to find that split works for fifty rows and stops working well before five hundred.

One formula, four themes

=HUNCHMULTI(A2:A500, "Does this comment mention price or value for money?|Does this comment mention a bug or reliability problem?|Does this comment mention customer support?|Does this comment mention a missing feature?")

In Excel: =HUNCH.MULTI(A2:A500, "Does this comment mention price or value for money?|Does this comment mention a bug or reliability problem?|Does this comment mention customer support?|Does this comment mention a missing feature?")

Pipe-separated here, or point the second argument at a row of header cells, one question per cell, if that reads easier in your sheet. Either way you get one probability column per question, up to ten questions in a single call. Full syntax is on the HUNCHMULTI reference.

Real outputs

Eight comments from an NPS export, the score itself left out of the grid below and kept in its own column, exactly where your export already has it.

RowABCDE
1CommentPrice?Bug?Support?Missing feature?
2Great tool, but the price jumped a lot at renewal and now I am not sure it is worth it.0.990.030.010.02
3Crashes almost every time I export a report. Otherwise does what we need.0.020.990.020.06
4Support answered within an hour and fixed my issue. Really impressed.0.020.140.980.01
5Would use it more if it had a mobile app.0.030.030.010.98
6It just works. Nothing to complain about.0.020.040.020.02
7Too expensive for a team our size, we are evaluating alternatives.0.990.020.020.03
8The onboarding call was useless and now nobody responds to my emails.0.290.110.660.04
9Love it. Wish it integrated with our billing system though.0.100.040.020.97

The billing line is the case worth reading twice: "wish it integrated with our billing system" scores 0.97 on missing feature and only 0.1 on price, because the comment asks for an integration, not lower cost, and the four columns keep those apart instead of both lighting up on the word billing. The onboarding complaint sits in a harder spot: support lands at 0.66, high enough to count, while price sits at 0.29, elevated above the near-zero baseline every other row shows but not high enough to count as a price complaint. That 0.29 is worth a manual read rather than a rule, since the comment names a call and slow email replies, not a dollar figure, and a 0.5 threshold correctly leaves it out.

Short and vague comments

Free-text NPS fields are optional in most surveys, and a good share of what comes back is this short.

RowABCDE
1CommentPrice?Bug?Support?Missing feature?
2meh0.030.040.010.03
3n/a0.040.060.050.08
4good0.040.030.030.03
5Fine for now, price will decide if we renew.0.990.040.040.03
6Nobody ever fixed the bug I mentioned last time, still slow to respond honestly.0.020.990.690.13
7:)0.020.020.020.03

The three genuinely empty comments, "meh", "n/a", and a bare smiley, score near zero on all four themes alike, 0.01 to 0.08, which is the model correctly reporting nothing to go on rather than guessing a theme into an empty comment. Length alone is not the deciding factor: "Fine for now, price will decide if we renew" is barely longer and scores 0.99 on price, and "Nobody ever fixed the bug I mentioned last time, still slow to respond honestly" scores 0.99 on bug and 0.69 on support at once, a real double complaint rather than noise. A short comment only reads flat when it carries no theme, not because it is short.

Band the score and count themes

Comments sit in column A, the four theme probabilities in C through F, and the 0–10 NPS score your survey tool already collected sits in column B, untouched by any of this.

=COUNTIFS(C2:C500, ">=0.5", $B2:$B500, ">=9")
=COUNTIFS(D2:D500, ">=0.5", $B2:$B500, "<=6")

The first counts promoters, score 9 or 10, whose comment mentions price. The second counts detractors, score 6 or under, whose comment mentions a bug. Run all four themes against both bands and you have a small table: which complaint is common among the people about to leave, and which one promoters mention anyway without it costing them.

=QUERY(A1:F500, "select count(A) where C >= 0.5 and B <= 6 label count(A) 'detractors mentioning price'")

The same pattern in one line per theme builds a short table: theme down the rows, detractor count and promoter count as the two columns. Nothing here needs a pivot table, though a pivot works too if that is what your team already reads.

A theme that shows up often among detractors and rarely among promoters is the one to fix first. A theme that shows up evenly across every score band is a preference, not a churn risk.

Limits

Copy the template to try this on your own export. The survey coding guide covers a similar theme-per-column pattern with HUNCH and HUNCHPICK instead, and the sentiment analysis guide pairs well with this one if you also want an overall tone score.

Questions

Is HUNCHMULTI cheaper than four separate HUNCH columns?
Same number of credits, one per question per row either way. HUNCHMULTI is one formula instead of four and reads the comment once instead of four times, so it runs faster and is easier to maintain, not cheaper.
Does a blank comment cost anything?
No. Blank cells are free across every question in the call, and most NPS exports have plenty of them since the comment field is usually optional.
Can I use this for CSAT on a 1–5 scale instead of NPS on 0–10?
Yes. The theme questions do not change; only the band you write in COUNTIFS does, for example ">=4" for a CSAT promoter equivalent.
How many themes should I track?
Start with three or four that your team already argues about. Read what lands in none of them; if a pattern shows up there, add a fifth theme rather than stretching an existing one to cover it.
What if a comment mentions the same theme twice, once good and once bad?
The probability reflects the whole comment, so a mixed mention lands somewhere in the middle rather than at either extreme. Read anything between about 0.4 and 0.6 yourself rather than treating it as a clean yes or no.

Run it on your own column

Copy the template (or use the Excel add-in), paste your key, point the formula at your data. Every formula here has its Excel spelling underneath. 100 rows free to start, then $29 for 5,000 rows. Credits never expire and there is no subscription.

Reference: HUNCHMULTI

More guides