Purpose
Turn a messy pile of qualitative feedback into a structured, evidence-backed synthesis — ranked themes, the patterns behind them, supporting verbatim quotes, and prioritized product insights — so a PM or researcher can move from "we have 40 interviews" to "here are the three things we should build" without losing the signal in the noise.
When to Use
Invoke this skill when the user asks to:
- Synthesize user interview notes or transcripts into themes
- Analyze open-ended survey responses for recurring patterns
- Make sense of support tickets, NPS comments, or churn feedback
- Find what customers keep asking for or complaining about across sources
- Build a research readout or insights summary for a discovery sprint
- Decide what to prioritize based on qualitative customer data
Inputs Required
Before starting, collect:
- Feedback corpus: The raw notes, transcripts, survey exports, or quotes (paste or describe volume)
- Source type: Interviews / surveys / support tickets / sales calls / reviews / mixed
- Research goal: The question this research was meant to answer
- Audience segment: Who provided the feedback (role, plan tier, lifecycle stage, persona)
- Product context: What the product does and where it is in its lifecycle
- Decision at stake: What the synthesis will inform (roadmap, a feature, a pivot, messaging)
If the research goal or decision is missing, infer the most likely intent from the corpus and state the assumption explicitly before delivering.
Instructions
Step 1: Tag and Code the Raw Data
Read the full corpus and apply open coding before forcing structure.
- Assign each distinct statement a short code (e.g., "onboarding too long," "wants Slack integration," "pricing unclear")
- Tag each code with a valence: Pain / Desire / Praise / Behavior / Objection
- Track the source ID so every code traces back to a specific respondent — this preserves the evidence trail
- Do not merge codes prematurely; capture nuance first, cluster second
Step 2: Cluster Codes into Themes
Group related codes into 4–8 themes using affinity logic.
- A theme requires support from at least 2 distinct sources — single-source observations are flagged separately as "weak signal," not themes
- Name each theme as an insight, not a topic: "Users abandon setup when forced to invite teammates first" beats "Onboarding"
- Note when codes pull in opposite directions — contradictions are findings, not errors
Step 3: Score Each Theme
For every theme, assign three scores:
- Frequency: How many distinct sources raised it (count, not vibe)
- Severity: High / Medium / Low — how much it blocks the user's goal or threatens retention
- Confidence: Strong / Moderate / Tentative — based on source count, consistency, and how directly the data supports the interpretation
Rank themes by a blended view of frequency × severity, surfacing high-severity themes even when frequency is moderate.
Step 4: Attach Verbatim Evidence
For each theme, include 2–3 representative verbatim quotes drawn from the corpus.
- Quotes must be real excerpts from the provided feedback — never fabricated or paraphrased into a quote
- Choose quotes that show the emotion and specificity behind the theme, not the blandest restatement
- If the corpus lacks a usable quote for a theme, note that the theme is inferred from coded patterns rather than a clean verbatim
Step 5: Separate Signal From Noise
Explicitly call out:
- Strong signals: Themes with high frequency and consistency
- Weak signals: Single-source or low-confidence items worth watching, not acting on
- Contradictions: Where segments or individuals want opposing things — and a hypothesis for why
- Surprises: Findings that contradict the team's likely assumptions
Step 6: Translate Themes into Product Insights
Convert the top themes into decision-ready insights. For each:
- Insight: What the data tells us (one sentence, declarative)
- So what: The implication for the product or business
- Recommended action: Build / investigate / monitor / deprioritize — with a concrete next step
- Validation gap: What you'd need to learn before committing significant resources
Step 7: Prioritized Recommendation
Close with the top 3 actions in priority order, each tied back to its supporting theme and score. Be decisive — name what to do first.
Output Format
- Structure: Executive summary → ranked theme table → per-theme detail with quotes → signal/noise/contradiction callouts → product insights → top 3 prioritized actions
- Length: 1,000–1,500 words
- Format: Structured document; a scannable theme table plus prose detail blocks and bulleted insights
- Sections: Summary (3–4 sentences) / Theme Ranking Table (Theme · Frequency · Severity · Confidence) / Theme Detail (with quotes) / Signal vs. Noise / Product Insights / Top 3 Prioritized Actions
- Tone: Senior researcher briefing a product team — evidence-first, plain-spoken, willing to make a call
Quality Checklist
Before delivering output, verify:
- [ ] 4–8 themes are identified, each backed by at least 2 distinct sources
- [ ] Every theme has a frequency count, severity rating, and confidence rating
- [ ] Every quote is a real excerpt from the provided corpus — none fabricated
- [ ] Themes are named as insights, not single-word topics
- [ ] Contradictions and weak signals are flagged separately from strong themes
- [ ] The top 3 actions are ranked and each traces back to a scored theme
Notes
- The most common synthesis failure is mistaking the loudest respondent for the most representative one — frequency counts guard against this; always count distinct sources, not mentions.
- High-severity, low-frequency themes (e.g., a single enterprise account describing a dealbreaker) are easy to bury and often the most consequential — never let raw frequency alone bury them.
- If the corpus is too small for confident patterns (fewer than ~5 sources), say so plainly and frame the output as directional hypotheses rather than validated findings.
- Resist synthesizing toward what the team already wants to hear — surprises and contradictions are where the value lives.
How to use this skill
This file is a Claude Code skill in Anthropic's standard format — markdown with YAML frontmatter at the top.
Installing in Claude Code:
~/.claude/skills/<folder-name>/SKILL.md— auto-loads in every session anywhere on your machine (recommended for skills you'll use across multiple projects)<your-project>/.claude/skills/<folder-name>/SKILL.md— auto-loads only when working in that project (recommended for project-specific skills)
Restart Claude Code or open a new session to register.
Using in Claude.ai, ChatGPT, Gemini, or other AI tools:
- Drag this file into a new chat, or copy and paste its contents
- Send your task or request as your next message — the AI will apply the skill where it fits
For Claude Code skill details: https://docs.anthropic.com/en/docs/claude-code/skills