From "why did you give us that score?" to a table of reasons by segment, channel and product: the AI proposes the codebook, codes every comment, and your team reviews only the doubtful answers.
One comment mixes channel, product and service. If the codebook doesn't separate those layers, the table can't drive a decision.
A detractor talks about the app, a fee and the branch in one sentence: with a single code per answer, half the reason is lost.
Relationship NPS runs monthly or quarterly, and if the codebook drifts between waves the trend stops being comparable.
Cards, loans, accounts and the app each have their own vocabulary (annual fee, one-time passcode, cash advance), and a new coder takes time to learn it.
Complaints arrive in volume and need to be grouped the same way every month for the customer experience committee.
You generate the codebook from the responses, or load the one your bank or client already uses. The AI codes every comment with all the codes that apply and flags doubtful cases for a person to review.
Nets that separate channel (app, branch, call center), product (card, loan, account) and service.
The same codebook is reused in every wave of relationship or transactional NPS.
Comments in English, Spanish or Portuguese in one dataset, coded with a single codebook.
Upload the .sav and the tabulation book crosses reasons by segment or product with significance testing.
Specific applications for the financial sector
Code promoter and detractor comments identifying satisfaction drivers in digital channels.
Analyze reviews and comments from your banking app to prioritize UX improvements.
Satisfaction studies at physical service points with wait time and service analysis.
Stable grouping of complaints by reason for internal tracking and continuous improvement.
Analyze feedback from account opening and product onboarding processes.
Comparative studies of fintech services vs traditional banking.
Relationship survey of retail banking customers. Respondents scoring 0 to 6 are asked why; here is part of the dataset after coding.
Open-ended question
What is the main reason for the score you gave us?
| Response | Codes |
|---|---|
| “The app crashes right when I'm making a transfer, and the security code takes forever to arrive.” | App failuresOne-time passcode |
| “They charged me the annual card fee without any notice and nobody on the phone could explain it.” | Unexpected fees and chargesCall center service |
| “Went to the branch to update my details and waited almost two hours in line.” | Branch wait time |
| “The personal loan rate is higher than at other banks.” | Loan rates |
| “My card got blocked for security while I was traveling and unblocking it was a nightmare.” | Security blocksLengthy procedures |
| “The advisor was really nice, but the direct debit issue still isn't fixed.” | Friendly advisor (positive)Issue not resolved |
| “All good, except the app won't let me pay other banks on weekends.” | Missing app feature |
| Net / code | % of respondents who answered |
|---|---|
| NET Digital channels | 41% |
| App failures | 22% |
| Missing app feature | 13% |
| One-time passcode | 9% |
| NET Costs | 34% |
| Unexpected fees and charges | 24% |
| Loan rates | 14% |
| NET Service and resolution | 29% |
| Issue not resolved | 15% |
| Call center service | 11% |
| Branch wait time | 8% |
| NET Security and procedures | 17% |
| Security blocks | 9% |
| Lengthy procedures | 10% |
Multi-code question: one response can carry several codes, so percentages add up to more than 100%. A net counts each respondent once, even if they have several codes from that group.
Example built for this page: this is not client data and the percentages are illustrative.
Yes. The usual setup is one codebook per survey type, because the reasons behind a transaction (a branch visit, a call) are not the same as those behind the relationship with the bank. Each codebook is reused across its own waves.
Yes. You load it and the AI codes with those codes. If reasons appear that the codebook doesn't cover, they are proposed as new codes and your team decides whether they go in.
With nets. One comment can carry both a channel code ("app") and a reason code ("unexpected fee"), and the table shows them separately or crossed.
The AI flags them as doubtful and they go into the review queue. Your team decides the final code; nothing is accepted without a person being able to see it.
Upload a dataset with an open-ended question and see the codebook the AI proposes. The free trial includes 250 responses.