Skip to content This library is free, offered as dana. If it helps your work, donate here →

This is one of 3,622 free prompts in the penguin tree ai library. Sign up once and the whole library opens, with new prompts by email.

open the library →

User insight extractor

Transforms raw qualitative data — user interviews, app store reviews, support tickets, survey open-ends — into a structured insight report with themed pain points, verbatim evidence, severity and frequency scoring…

download .md

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:

  1. Drag this file into a new chat, or copy and paste its contents
  2. 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