What This Template Is For
Running customer interviews is only half the job. The other half is turning hours of conversation into clear, actionable insights. Most teams skip this step. They write a few bullet points after each call, file them in a Google Doc, and forget about them. Three months later, nobody can remember what they learned.
This template provides a systematic process for analyzing customer interview data. It covers quote coding (tagging quotes by theme), affinity mapping (grouping coded quotes into patterns), and a decision matrix that translates qualitative patterns into prioritized product actions.
It works best when you have completed 10-20 interviews and need to extract patterns from the accumulated data. For guidance on conducting the interviews themselves, use the Customer Discovery Interview Template and the Product Discovery Handbook.
The RICE Calculator is useful after analysis when you need to score and rank the opportunities you have identified. For understanding key discovery terms, the product-market fit glossary entry provides essential context.
How to Use This Template
- Gather your raw data. Collect all interview transcripts, notes, and recordings in one place. You need the original material, not just summaries.
- Code individual quotes (Part 1). Go through each interview and tag every meaningful quote with one or more theme codes. This is the most time-consuming step but also the most valuable.
- Build the affinity map (Part 2). Group coded quotes by theme. Look for clusters where 5+ quotes from different users point to the same pain, behavior, or need.
- Extract patterns (Part 3). For each cluster, write a pattern statement. Quantify how many users mentioned it, how severe it is, and what evidence supports it.
- Run the decision matrix (Part 4). Score each pattern on impact, frequency, and feasibility. This produces a ranked list of opportunities.
- Present findings (Part 5). Use the research summary template to share results with stakeholders. Lead with the top 3 patterns, not a data dump.
The Template
Part 1: Quote Coding Sheet
Go through each interview transcript. For every meaningful statement, log it here with theme codes.
How to code quotes:
- Read each statement and ask: "What is this person telling me about their problem, behavior, or need?"
- Assign one or more theme codes from the code list below
- Create new codes as needed. Your code list will grow during the first 3-5 interviews, then stabilize
Starter code list (customize for your domain):
| Code | Theme | Description |
|---|---|---|
| PAIN | Pain point | User describes frustration, difficulty, or failure |
| BEHAV | Behavior | User describes what they actually do (not what they wish they did) |
| NEED | Unmet need | User describes something they want but cannot get from current solutions |
| WORK | Workaround | User describes a hack or manual process they use to compensate |
| SWITCH | Switching behavior | User describes trying, adopting, or abandoning a tool |
| VALUE | Value statement | User describes what matters most to them in a solution |
| COST | Cost/impact | User quantifies the cost of the problem (time, money, outcomes) |
| CONTEXT | Context | Background about the user's role, team, or environment |
Quote coding log:
| Quote ID | Interview | Verbatim Quote | Codes | Notes |
|---|---|---|---|---|
| Q-001 | [Int #1, Name] | "[Exact words]" | PAIN, COST | [Your interpretation or question] |
| Q-002 | [Int #1, Name] | "[Exact words]" | BEHAV, WORK | [Your interpretation or question] |
| Q-003 | [Int #2, Name] | "[Exact words]" | NEED, VALUE | [Your interpretation or question] |
Coding rules:
- ☐ Use exact quotes, not paraphrases. You will need the original words for stakeholder presentations
- ☐ One quote per row, even if the user said multiple things in one sentence
- ☐ Apply codes based on what the user said, not what you think they meant
- ☐ Mark surprising or contradictory quotes with a star for later attention
Part 2: Affinity Map
Group coded quotes into clusters. Each cluster represents a theme that appeared across multiple interviews.
Cluster template:
Cluster name: [Descriptive label for this pattern]
Theme code(s): [PAIN, NEED, etc.]
Quote count: [How many coded quotes belong here]
Unique users: [How many different interviewees contributed quotes to this cluster]
Representative quotes (top 3-5):
- "[Quote]" - [User name/ID, role, company type]
- "[Quote]" - [User name/ID, role, company type]
- "[Quote]" - [User name/ID, role, company type]
Summary statement: [One sentence that captures the core insight from this cluster]
Confidence level:
- ☐ High: 8+ users, consistent language, strong emotional signals
- ☐ Medium: 4-7 users, similar themes but varied language
- ☐ Low: 2-3 users, possibly coincidental
Part 3: Pattern Extraction
For each high-confidence cluster, extract a formal pattern statement.
Pattern template:
| Field | Content |
|---|---|
| Pattern ID | [P-001] |
| Pattern statement | [One clear sentence: "Users in [segment] experience [problem] when [context], causing [impact]"] |
| Evidence strength | [High / Medium / Low] |
| User mentions | [X] of [Y] interviews |
| Behavioral evidence | [What users DO about this, not just what they SAY] |
| Emotional intensity | [How strongly users feel: mild annoyance, significant frustration, rage, resignation] |
| Current workaround | [What users do today to cope] |
| Cost of the problem | [Time, money, or outcomes lost. Use user-reported numbers.] |
| Contradicting evidence | [Any quotes or behaviors that challenge this pattern] |
| Open questions | [What you still do not know and need to investigate] |
Pattern registry:
| ID | Pattern Statement | Evidence | Mentions | Intensity | Cost |
|---|---|---|---|---|---|
| P-001 | [Statement] | High/Med/Low | X/Y | High/Med/Low | [$X/time] |
| P-002 | [Statement] | High/Med/Low | X/Y | High/Med/Low | [$X/time] |
| P-003 | [Statement] | High/Med/Low | X/Y | High/Med/Low | [$X/time] |
Part 4: Decision Matrix
Score each pattern to create a prioritized list of opportunities.
Scoring criteria (1-5 each):
| Dimension | 1 (Low) | 3 (Medium) | 5 (High) |
|---|---|---|---|
| Frequency | 2-3 users mention it | 5-7 users mention it | 10+ users mention it |
| Intensity | Mild annoyance, low emotional energy | Moderate frustration, active workarounds | Strong emotion, significant time/money cost |
| Feasibility | Requires new technology or major infrastructure | Moderate effort, 1-2 sprints | Can ship in days, extends existing functionality |
| Strategic fit | Tangential to product vision | Supports product direction | Core to differentiation and roadmap |
| Revenue signal | No willingness to pay mentioned | Some users would pay more for this | Users explicitly ask to buy a solution |
Decision matrix:
| Pattern | Frequency | Intensity | Feasibility | Strategic Fit | Revenue Signal | Total | Rank |
|---|---|---|---|---|---|---|---|
| P-001 | [1-5] | [1-5] | [1-5] | [1-5] | [1-5] | [sum] | [rank] |
| P-002 | [1-5] | [1-5] | [1-5] | [1-5] | [1-5] | [sum] | [rank] |
| P-003 | [1-5] | [1-5] | [1-5] | [1-5] | [1-5] | [sum] | [rank] |
Action classification:
| Total Score | Action | Timeline |
|---|---|---|
| 20-25 | Build now. High confidence, high impact. | This quarter |
| 14-19 | Plan and validate further. Run a prototype test or targeted survey. | Next quarter |
| 8-13 | Monitor. Log the insight, revisit after more interviews. | Backlog |
| 5-7 | Deprioritize. Low evidence, low impact, or poor strategic fit. | Archive |
Part 5: Research Summary (For Stakeholders)
Customer Interview Research Summary
Date: [YYYY-MM-DD]
Researcher: [Name]
Interviews analyzed: [count]
User segment: [Description of who was interviewed]
Methodology: [e.g., "20 semi-structured interviews, 30-45 minutes each, with engineering managers at B2B SaaS companies (50-200 employees). Interviews focused on project planning workflows and tool usage."]
Top 3 findings:
- [Pattern statement] ([X] of [Y] users, [evidence strength] confidence)
- Key quote: "[Representative quote]"
- Implication: [What this means for the product]
- [Pattern statement] ([X] of [Y] users, [evidence strength] confidence)
- Key quote: "[Representative quote]"
- Implication: [What this means for the product]
- [Pattern statement] ([X] of [Y] users, [evidence strength] confidence)
- Key quote: "[Representative quote]"
- Implication: [What this means for the product]
Surprising insights:
- [Something the team did not expect]
- [A use case or behavior that challenges assumptions]
Recommended next steps:
- [Specific action, owner, timeline]
- [Specific action, owner, timeline]
- [Specific action, owner, timeline]
Open questions for further research:
- [Question 1]
- [Question 2]
Filled Example: CloudDeploy (CI/CD Platform)
Quote Coding (Sample)
| Quote ID | Interview | Quote | Codes |
|---|---|---|---|
| Q-014 | Int #3, Amir (DevOps Lead) | "I spend 2 hours every Friday cleaning up failed deploys that nobody claimed." | PAIN, COST |
| Q-015 | Int #3, Amir | "We built a Slack bot that pings the person who pushed the bad commit. Took us a week to set up." | WORK, BEHAV |
| Q-031 | Int #7, Kenji (SRE) | "Rollbacks should be one click. Ours take 45 minutes because we have to manually verify each service." | NEED, COST |
| Q-044 | Int #11, Lisa (VP Eng) | "I would pay 2x our current CI/CD bill for reliable one-click rollbacks." | VALUE, COST |
Affinity Map (Cluster: Deploy Failure Ownership)
Cluster name: Nobody claims failed deploys
Quote count: 14 quotes from 9 users
Representative quotes:
- "I spend 2 hours every Friday cleaning up failed deploys that nobody claimed." - Amir, DevOps Lead
- "When a deploy fails at 5pm, nobody wants to own it. It sits broken until morning." - Carla, Eng Manager
- "The hardest part of my job is figuring out who broke the build, not fixing it." - Sam, SRE
Summary: Teams waste 2-5 hours/week tracing failed deployments to the responsible developer because current tools do not auto-assign ownership.
Decision Matrix
| Pattern | Freq | Intensity | Feasibility | Strategy | Revenue | Total | Rank |
|---|---|---|---|---|---|---|---|
| Auto-assign deploy failures | 5 | 5 | 4 | 5 | 4 | 23 | 1 |
| One-click rollback | 4 | 5 | 2 | 5 | 5 | 21 | 2 |
| Deploy queue visibility | 3 | 3 | 5 | 3 | 2 | 16 | 3 |
Key Takeaways
- Code quotes individually before grouping. Premature grouping creates confirmation bias
- Use exact quotes, not summaries. Stakeholders respond to real user words, not researcher paraphrases
- Quantify patterns. "Users mentioned this" is weaker than "14 of 20 users independently described this pain"
- Always log contradicting evidence. If 15 users confirm a pattern and 3 contradict it, the contradictions often reveal important edge cases
- Score patterns before acting. The decision matrix prevents you from chasing the most emotional quote instead of the most impactful opportunity
About This Template
Created by: Tim Adair
Last Updated: 3/5/2026
Version: 1.0.0
License: Free for personal and commercial use
