The challenge
A retail bank collected thousands of comments a month explaining why customers would or would not recommend it. The insight team had no consistent way to group the comments, so the reasons behind score changes were hard to report.
Our approach
We built a code frame from real comments and coded every response each month against the same frame.
- Read a sample of comments to draft a code frame of reasons, with nets for service, fees, digital and branches
- Agreed the frame with the bank's insight team before full coding
- Coded every comment each month, with second-coder checks on a share of the work
- Weighted results by customer segment and delivered tables by branch region
The results
- Clear reasons behind every movement in recommendation scores
- A stable code frame, updated only with logged changes
- Monthly tables the insight team uses without rework
Illustrative scenario based on typical engagements. Client details are anonymised.


