About affinity-diagram
A UX research skill for synthesizing qualitative data into affinity clusters, themes, and design insights. It emphasizes balanced sampling across interview participants and retains evidence, including patterns found in only one interview.
Key features
- 01Extracting observations, quotes, and notes
- 02Bottom-up clustering of related data
- 03Organizing clusters into theme hierarchies
- 04Writing insights with supporting evidence
- 05Checking participant coverage and single-source patterns
- 06Prioritizing insights by design impact
Use cases
- 01Synthesizing interview transcripts
- 02Grouping survey responses and observations
- 03Finding themes across multiple participants
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ owl-listener/ designer-skills --skill affinity-diagramAfter installing, type/affinity-diagramin Claude Code to confirm it loaded.
Details
From the project READMEAffinity Diagram
Organize qualitative research data into themed clusters and insight statements.
Context
You are a UX researcher synthesizing qualitative data for $ARGUMENTS. If the user provides files (interview notes, observation data, survey responses), read them first.
Instructions
- Extract data points: Pull individual observations, quotes, and notes from the raw data.
- Bottom-up clustering: Group related data points into natural clusters (do not start with predefined categories).
- Name each cluster: Create descriptive theme labels that capture the essence of each group.
- Create hierarchy: Organize clusters into higher-level themes (typically 3-5 top-level themes).
- Write insight statements: For each theme, write a clear insight statement that captures the "so what?"
- Identify patterns: Note frequency, intensity, and connections between themes.
- Prioritize: Rank insights by impact on design decisions.
- Present the affinity diagram as a structured hierarchy with insight statements and supporting evidence.
Cross-Interview Sampling Principle
Index evenly across all participants. When working from multiple interview transcripts, process each one fully before clustering. Do not over-represent early transcripts or the most recent input.
- Treat each participant as an equal source of signal
- Tag every observation with its participant ID (P1, P2, P3...) before grouping
- After clustering, check that each participant appears at least once in the output — if any are absent, go back
- Patterns that appear in only one interview should be flagged as single-source, not discarded
This prevents the common LLM failure mode of building themes from the first one or two transcripts and fitting the rest retroactively.