discover-interview-synthesis
Discover-Interview-Synthesis aggregates raw user research data from multiple interviews into structured patterns, insights, and actionable recommendations for product decisions. Use this skill after completing rounds of user interviews, customer discovery calls, or usability testing sessions to extract evidence-backed findings and communicate research results to stakeholders before ideation or problem definition work.
git clone --depth 1 https://github.com/product-on-purpose/pm-skills /tmp/discover-interview-synthesis && cp -r /tmp/discover-interview-synthesis/skills/discover-interview-synthesis ~/.claude/skills/discover-interview-synthesisSKILL.md
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
# Interview Synthesis
An interview synthesis transforms raw user research data into structured insights that drive product decisions. Rather than simply listing what participants said, a good synthesis identifies patterns across conversations, connects observations to underlying user needs, and translates findings into actionable recommendations.
## When to Use
- After completing a round of user interviews (typically 5+ participants)
- Following customer discovery calls or sales feedback sessions
- After usability testing sessions to consolidate observations
- When stakeholders need a summary of research findings
- Before ideation sessions to ground the team in user reality
## When NOT to Use
- You are summarizing one internal meeting for its attendees -> use `foundation-meeting-recap`
- You need patterns across multiple meetings over time -> use `foundation-meeting-synthesize`
- Your data is survey responses rather than interviews -> use `measure-survey-analysis`
- The findings are synthesized and you are ready to frame the problem -> use `define-problem-statement`
- You have synthesized findings and want to map them onto a customer's journey across stages and touchpoints -> use `discover-journey-map`
## Instructions
When asked to synthesize interview findings, follow these steps:
1. **Gather the Raw Material**
Collect all interview notes, transcripts, or recordings. Ensure you have data from at least 3 participants to identify meaningful patterns. Note the research objective and methodology used.
2. **Create Participant Profiles**
Document each participant with relevant context: their role, segment, tenure, and any notable characteristics. This helps readers assess the representativeness of findings.
3. **Identify Recurring Themes**
Read through all notes and tag observations by topic. Look for themes that appear across multiple participants (ideally 3+). Distinguish between frequently mentioned topics and one-off comments.
4. **Extract Meaningful Quotes**
Capture 3-5 verbatim quotes per theme that powerfully illustrate the insight. Good quotes are specific, emotional, or particularly articulate. Always attribute quotes to participant IDs.
5. **Synthesize into Insights**
Transform themes into insight statements. An insight goes beyond observation ("users mentioned X") to interpretation ("users need Y because of Z"). Connect what you heard to why it matters.
6. **Formulate Recommendations**
Based on the insights, propose prioritized actions. Each recommendation should tie directly to an insight. Note confidence level based on strength of evidence.
7. **Document Limitations**
Acknowledge what you didn't learn, sample biases, or areas needing further research. Honest limitations increase credibility.
## Project Memory Contract
Active only when `.claude/pm-skills.local.md` exists. With no file, ignore this section entirely
and behave exactly as described above.
- **Reads:** `phase` and `active_initiative`, so findings are framed against the initiative in flight instead of asking you to restate it.
- **Writes:** the personas and findings as an `interpretation` artifact, so a later skill can consume them without you pasting them again.
- **Posture:** propose the entry and wait for confirmation before writing, unless
`memory_auto_append: true` is set, in which case append and echo what was written.
- **Write discipline:** re-read the file immediately before writing, never from the copy that
produced the proposal. If it changed in between, merge your entry into the current state and
re-propose rather than overwriting; add only your own entry and leave every other field and
section byte-identical. Nothing enforces this at runtime and the file is gitignored, so a
careless whole-file write loses another session's work with no way to recover it.
This is the writer half of the loop the cohort exists to demonstrate: what this skill records, `deliver-prd` later reads.
## Output Format
Use the template in `references/TEMPLATE.md` to structure the output. A complete synthesis fills every template section: Research Overview; Key Themes; Notable Quotes; Insights; Recommendations; and Appendix.
## Quality Checklist
Before finalizing, verify:
- [ ] Themes are supported by evidence from 3+ participants
- [ ] Quotes are verbatim and attributed to participant IDs
- [ ] Insights explain "why" not just "what"
- [ ] Recommendations are specific and actionable
- [ ] Participant identities are protected (no PII)
- [ ] Limitations and biases are acknowledged
## Examples
See `references/EXAMPLE.md` for a completed example.Run an ad-hoc ordered chain of pm-skills with shared context (ephemeral; routes to the pm-workflow-orchestrator)
Defines a testable hypothesis with clear success metrics and a validation approach. Use when forming assumptions to test or aligning a team on what success looks like, before any experiment is designed. To design the A/B test or experiment that will validate the hypothesis, use measure-experiment-design.
Creates a Jobs to be Done canvas capturing the functional, emotional, and social dimensions of a customer job. Use when deeply understanding customer motivations, designing for jobs, or reframing product positioning.
Creates an opportunity solution tree connecting a desired outcome to customer opportunities and candidate solutions, preventing solution-first jumps in continuous discovery. Use when structuring scattered feature ideas or communicating how the roadmap traces to outcomes. For ranking an existing flat list of candidates, use define-prioritization-framework instead; this skill discovers the list, it does not score one.
Run applicable prioritization frameworks (RICE, ICE, MoSCoW, Weighted Scoring, Kano) against a list of features or initiatives. Produces a comparison table showing where rankings agree and diverge across frameworks, and an executive summary with recommendation. Framework applicability is filtered by data availability; Kano requires customer research. Refuses to fabricate scores; produces an estimation scaffold when input data is missing.
Creates a clear problem framing document with user impact, business context, and success criteria. Use when starting a new initiative, realigning a drifted project, or communicating up to leadership.
Generates structured Given/When/Then acceptance criteria for a user story or feature slice, covering the happy path, key failure scenarios, and non-functional expectations in testable form. Use when turning requirements into verifiable scenarios for engineering handoff and QA sign-off. For a dedicated catalog of boundary conditions, error states, and recovery paths across a feature, use deliver-edge-cases; to write the stories themselves, use deliver-user-stories.
Documents edge cases, error states, boundary conditions, race conditions, and recovery paths for a feature - the systematic catalog of what can go wrong and the failure modes to design for. Use during specification to map the failure surface and ensure comprehensive coverage, or during QA planning to identify boundary and limit scenarios to test. Distinct from deliver-acceptance-criteria, which writes story-level Given/When/Then checks; this skill produces the whole-feature edge-case catalog.