Skill Guides

Jobs-to-Be-Done with AI: Extract JTBD from Interviews (Prompt + Skill)

Ron Yang11 min read

What you'll learn: How to extract jobs-to-be-done from interview notes with AI, using copy-paste prompts that cite the interview, classify each job, and rate confidence, plus the /jtbd-extractor skill that does it against your persona context every time.

Jobs-to-be-done is one of the sharpest lenses in product. It moves you off the feature your customer asked for and onto the progress they were trying to make. The problem has never been the framework. It's the extraction.

Pulling real jobs out of a stack of messy interview notes is slow, and it's wildly inconsistent. You read the same transcript twice and surface different jobs each time. One PM frames a job as functional, another as emotional, and the roadmap inherits the disagreement. By the time the jobs reach a planning doc, nobody can point to which customer said what.

AI changes the math. Not by deciding which jobs matter (that's still your call) but by reading every transcript at equal depth and handing you JTBD statements with the evidence still attached. Fast, consistent, and traceable. This article gives you the prompts to do it today, and the skill that makes it a button you press after every research round.


A Quick Refresher: What a Job Actually Looks Like

A job-to-be-done is the progress a person is trying to make in a situation. Not a feature, not a demographic, but the underlying goal that makes them reach for a solution in the first place.

The canonical format is one sentence:

"When [situation], I want to [motivation], so I can [expected outcome]."

The three parts each do work. The situation anchors the job to a real moment ("when I'm prepping for a board review"). The motivation names what they're reaching for. The expected outcome is how they'll know it worked. Drop any part and the job goes generic, and a generic job can't drive a roadmap decision.

Jobs also come in three flavors. Functional jobs are the practical task ("get the export to my finance team"). Emotional jobs are how the person wants to feel ("feel in control of the launch"). Social jobs are how they want to be perceived ("look on top of it to my VP"). Most decisions get better when you can see all three at once, because the emotional and social jobs are usually where the differentiation hides.


Manual Coding vs. One-Shot Prompt vs. the Skill

There are three ways to extract jobs, and the gap between them shows up in two places: whether you can trace a job back to who said it, and whether you get the same answer twice.

Manual JTBD codingOne-shot prompt/jtbd-extractor skill
Time for 8-10 interviewsHalf a day to a day30-60 minutes15-20 minutes
Evidence traceabilityManual, often lost by the deckOnly if you ask for itBuilt in — every job cites the interview
Consistency run to runLow — depends on your read that dayMedium — depends on phrasingHigh — same framework every run
Functional / emotional / social splitDone by hand, often skippedIf promptedAlways — and scored for priority

Manual coding is rigorous in theory and incomplete in practice. A one-shot prompt is a real upgrade and where this article starts. The skill is what you graduate to when JTBD extraction stops being a project and becomes routine.

The job was never to list more jobs. It was to find the few that are real, well-evidenced, and worth building for, with the quote still attached.


The Prompts: Four Passes from Notes to Opportunities

These work in Claude.ai or Claude Code today. Each one carries the same rule: cite the interview, classify the job, rate your confidence, and don't invent jobs to pad a list. Paste your notes where indicated and adjust the brackets.

1. Extract JTBD from Interview Notes

Start here. This is the pass that turns raw notes into structured jobs.

From these interview notes, extract the jobs-to-be-done using the format:
"When [situation], I want to [motivation], so I can [expected outcome]."

[paste interview notes]

For each job:
- Write it in the full "When... I want to... so I can..." format
- Classify it as functional, emotional, or social
- Rate confidence: strong (the person stated it directly) vs. inferred
- Cite the interview(s) and include one supporting verbatim quote

Do not invent jobs to fill out a list. If only four are well-supported,
give me four. I'd rather defend four than guess at eight. Flag any job
you inferred rather than heard so I can verify it against the source.

2. Classify and Prioritize the Jobs

Extraction gives you a list. This pass tells you which jobs to fight for.

Here are the jobs-to-be-done extracted from my research:
[paste the JTBD list from prompt 1]

For each job, estimate two things on a 1-10 scale:
- Importance: how much the person cares about getting this job done
- Satisfaction: how well their current solution gets it done today

Then compute an opportunity score (Importance + (Importance - Satisfaction))
and rank the jobs by it. High-importance, low-satisfaction jobs rank highest.

Cite the evidence behind each score. Where you're inferring importance or
satisfaction from limited signal, say so explicitly — don't present a guess
as a measurement. Group the ranked list by functional / emotional / social.

3. Map Jobs to Current-Solution Gaps

A job only becomes an opportunity where today's solution falls short. This pass finds the gap.

Here are my top-ranked jobs-to-be-done:
[paste prioritized jobs]

And here's how users get each job done today (current tools, workarounds,
manual steps), from the interviews:
[paste relevant notes, or "infer from the transcripts above"]

For each job, tell me:
- The specific step where the current solution falls short
- The workaround the person uses instead (quote it if they described one)
- How big the gap is: blocking, painful, or mild annoyance
- The interview that shows the gap most clearly

Cite the interview for every gap. Don't claim a gap exists if the notes
only show satisfaction — flag "no clear gap in the evidence" instead.

4. Turn Top Jobs into Opportunity Statements

Jobs are the input. Opportunities are what your team can actually act on.

Take my top 3 jobs-to-be-done and their current-solution gaps:
[paste top jobs + gaps]

For each, write one opportunity statement framed as a customer need,
not a feature: "[Persona] needs a way to [accomplish the job] when
[situation], because [why the current solution fails]."

For each opportunity:
- Tie it back to the job and the supporting interview(s)
- Note the outcome that would tell us we solved it
- Keep it solution-agnostic — describe the need, not the feature

Don't propose solutions yet. Three opportunity statements, each traceable
to a real job and a real quote. If one of my three isn't well-supported,
tell me and stop at two.

How to Run a JTBD Extraction Pass

A repeatable sequence beats a clever one-off. Run it the same way every round:

  1. Gather the raw input. Pull together your interview notes or transcripts, labeled by speaker or interview ID so every job can be cited back.
  2. Run prompt 1 to extract jobs. Get the structured list: full format, classified, confidence-rated, quote attached.
  3. Spot-check the quotes. Before you trust anything, verify the verbatim quotes against the source notes. AI can smooth or merge a line that sounds right but wasn't said.
  4. Run prompt 2 to prioritize. Score importance and satisfaction, then sort by opportunity. This is where the list becomes a decision.
  5. Run prompt 3 to find the gaps. Map each top job to where today's solution fails. That's where the build lives.
  6. Run prompt 4 to write opportunities. Convert the top jobs into solution-agnostic opportunity statements your team can prioritize.
  7. Review and attribute before it ships. Every job and opportunity that lands in a doc should carry its source. Cut anything you can't trace.

Related — The 30-prompt Claude collection for PMs includes a compact JTBD extraction prompt (#3) alongside the rest of the discovery toolkit. And how to analyze user interviews with AI covers the synthesis step upstream of this one — themes and verbatim evidence — that feeds your JTBD pass.


From a Prompt to a JTBD Skill

The prompts above are the bridge. They work, and they beat manual coding. But you're still doing setup every time: pasting notes, re-specifying the format, re-explaining who your personas are, re-checking the output for drift.

A skill removes that overhead. The /jtbd-extractor skill reads your raw research and produces a full Jobs-to-be-Done analysis in the same structure every run: statements in the canonical format, split into functional, emotional, and social, with opportunity scores and the evidence behind each one. The key difference is that it reads your personas.md and product.md context files first, so it doesn't extract jobs against a generic archetype. It compares what it finds to the jobs your personas already carry, then tells you what's confirmed and what's new.

That context is the whole point of using Claude as a product manager rather than as a smarter search box. The framework, the format, and the persona loading happen automatically, every round, without re-prompting. For the full map of which skills handle which parts of discovery and where JTBD sits, the AI PM workflows guide lays it out end to end. From there, the /opportunity-solution-tree skill takes your prioritized jobs and turns them into a tree of opportunities and testable solutions.

Download the JTBD Extractor free →

The free skill gets you the JTBD extraction. The full PM Operating System (every discovery skill plus the context files that make extraction map to your actual personas) is part of the paid plan: $39/mo, 14-day free trial, cancel anytime. Start a trial →


One Honest Caveat

Treat AI-extracted jobs as a sharp first draft, not a verdict. The model can mis-attribute a job, reading an emotional job as functional, or pinning a job to the wrong interview. It can also infer a job that sounds plausible but isn't actually in the data, especially when the notes are thin.

Two habits keep this honest. Spot-check every verbatim quote against the source before it lands in a deck. And read the confidence flags: a job marked "inferred" needs a human to confirm it was really there. The prompts above are built to surface these, and the /jtbd-extractor skill cites its sources so you can audit each job line by line. You still review the output. You're just reviewing structured, attributed work instead of trusting a wall of text.


FAQ

Can AI extract jobs-to-be-done from interview transcripts?

Yes. Paste your interview notes into a prompt or a discovery folder, and AI reads all of them at equal depth, surfacing jobs in the "When... I want to... so I can..." format, classifying each as functional, emotional, or social, and citing the supporting quote. The win isn't only speed. It's coverage and consistency: every transcript gets the same read, instead of the analysis reflecting only the interviews you remembered best.

How accurate is AI at classifying functional vs. emotional vs. social jobs?

Good enough to be a strong first pass, not good enough to skip review. The model reliably separates the practical task from the feeling and the perception, but it can mis-attribute a borderline job. Emotional and social jobs are exactly the ones worth double-checking, since they're usually where differentiation lives. The fix is built in: ask the prompt to rate confidence, then verify any job marked "inferred" against the source.

How many interviews do I need before extracting jobs?

A useful pass starts at five to eight interviews, enough that a job appearing across several conversations signals a pattern, not a one-off. Below that, you can still extract jobs, but treat them as hypotheses to test rather than validated needs. A single prompt handles roughly 8-10 transcripts in one pass comfortably; for larger or recurring programs, the skill reads a whole folder at once.

What's the difference between a job-to-be-done and an opportunity?

A job is the progress the person is trying to make ("when I'm prepping for a board review, I want to pull live metrics, so I can present with confidence"). An opportunity is a job where the current solution falls short: the gap you can build into. Prompt 3 in this guide maps jobs to gaps, and prompt 4 converts the top jobs into solution-agnostic opportunity statements your team can prioritize.


About the Author

Ron Yang is the founder of mySecond — he builds and manages PM Operating Systems for product teams. Prior to mySecond, he led product at Aha! and is a product advisor to 25+ companies.

Browse the skills directory →

Set up Claude Code for PM work →

Try this in your workflow today

Download the related skill and run it in Claude Code. Free skills are available now — no account required.

Get the Skill

One skill saves you an afternoon. The full system means every PRD, roadmap, and update comes out calibrated to your product — no setup. Start your free trial → Free for 14 days. Card required. Cancel anytime.