Purpose
Turn a messy corpus of qualitative user feedback into a structured, evidence-backed insight report — themed pain points, JTBD statements, and prioritized opportunities — so the product team can move from "we have a lot of feedback" to "here are the three things worth building next" without a manual affinity-mapping marathon.
When to Use
Invoke this skill when the user asks to:
- Synthesize a batch of user interview transcripts into themes
- Mine app store reviews or NPS verbatims for recurring complaints and praise
- Extract patterns from support tickets or Intercom/Zendesk conversations
- Turn survey open-ended responses into product insights
- Consolidate feedback from multiple sources into one prioritized view
- Prepare a research readout or insight deck for stakeholders
Inputs Required
Before starting, collect:
- Raw data: The transcripts, reviews, tickets, or survey responses (pasted text, quotes, or a summary of the corpus)
- Data source type: Interviews / app store reviews / support tickets / survey open-ends / mixed
- Product area: The feature, flow, or product the feedback concerns
- Research question or goal: What decision this feedback is meant to inform (e.g., "should we redesign onboarding?")
- User segment (if known): New users, power users, churned users, a specific persona
- Sample size: Approximate number of items in the corpus (helps calibrate frequency claims)
If the research goal is missing, default to a general "what are the top pain points and opportunities in this area" analysis and note the assumption.
Instructions
Step 1: Classify and Normalize the Raw Data
Read the corpus and tag each distinct piece of feedback before theming:
- Signal type: Pain point / feature request / praise / confusion / bug report / behavioral observation
- Sentiment: Negative / neutral / positive
- Emotional intensity: Low / medium / high (calm complaint vs. rage-quit)
- Discard duplicates and non-signal noise (off-topic, spam, single-word ratings with no text), but count how many items were excluded so frequency stays honest
Step 2: Cluster Into Themes
Group individual signals into 4–8 coherent themes. Each theme is a distinct user problem or need, not a feature.
- Name each theme in plain user language, not internal jargon ("I can't tell if my payment went through," not "payment confirmation UX debt")
- Merge themes that describe the same underlying job; split themes that bundle two different problems
- For each theme, tally how many source items support it (frequency)
Step 3: Score Each Theme
For every theme, assign:
- Frequency: How many of the total items mention it — express as a count and a rough % of the corpus
- Severity: How much it hurts the user — Blocker (can't complete the job) / Major (workaround exists but painful) / Minor (annoyance) / Delighter (positive, worth protecting)
- Confidence: High / Medium / Low — based on sample size and consistency of the signal. Flag any theme resting on fewer than 3 items as Low confidence
- Segment concentration: Whether the theme is spread across users or concentrated in one segment
Step 4: Attach Verbatim Evidence
For each theme, pull 2–3 representative direct quotes from the corpus (lightly cleaned for typos, never for meaning). Evidence is non-negotiable — every insight must be traceable to something a real user said. If the input was summarized rather than raw, paraphrase closely and label it as such.
Step 5: Write Jobs-To-Be-Done Statements
For the top themes, reframe the pain into a JTBD statement using the structure: "When [situation], I want to [motivation], so I can [expected outcome]." This shifts the theme from a complaint into a designable need.
Step 6: Identify Opportunity Areas
Translate the highest-priority themes into 3–5 opportunity areas. For each:
- The opportunity: What could be built, fixed, or changed
- Why now: The evidence and severity that justify it
- Rough effort signal: Quick win / medium / large bet (directional, not an estimate)
Step 7: Prioritize and Recommend
Rank the opportunities using a frequency × severity × confidence lens. Deliver a clear top 3 with a one-line rationale each. Be opinionated — call out the single most important thing to address first, and name any loud-but-low-impact signals the team should deliberately not chase.
Output Format
- Structure: Executive summary → themed insight table → JTBD statements → opportunity areas → prioritized recommendations
- Length: 900–1,300 words
- Format: Structured document with a theme table (Theme | Frequency | Severity | Confidence | Segment) plus prose for JTBD, opportunities, and recommendations
- Sections: Summary of what was analyzed → Top themes (scored table) → Verbatim evidence per theme → JTBD statements → Opportunity areas → Top 3 prioritized recommendations
- Tone: UX researcher briefing a product team — precise, evidence-anchored, decisive; distinguishes what the data shows from what the analyst infers
Quality Checklist
Before delivering output, verify:
- [ ] Every theme has a frequency count and severity rating — no unscored themes
- [ ] Each theme is backed by at least one direct verbatim quote (or clearly labeled paraphrase)
- [ ] Themes rest fewer than 3 items are flagged as Low confidence — no overclaiming from thin data
- [ ] JTBD statements follow the "When… I want to… so I can…" structure
- [ ] The final recommendation names one clear top priority, not a flat list
- [ ] Excluded/duplicate item count is reported so frequency percentages are honest
Notes
- The most common failure mode is confusing feature requests with underlying needs — always ask what job the requested feature would do before treating a request as an insight
- Praise and delighters matter: a theme showing what users love is a signal to protect, not just to fix
- When sources are mixed (e.g., reviews plus support tickets), note where a theme appears across multiple sources — cross-source themes are the most reliable
- If the corpus is small (under ~10 items), lead with a caveat that findings are directional and warrant a larger sample before major investment
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