jobs-to-be-done
Understand customer motivations through job theory. Use when defining product strategy, conducting user research, identifying competitors, writing user stories, or reframing features around customer progress.
Best use case
jobs-to-be-done is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Understand customer motivations through job theory. Use when defining product strategy, conducting user research, identifying competitors, writing user stories, or reframing features around customer progress.
Teams using jobs-to-be-done should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/jobs-to-be-done/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How jobs-to-be-done Compares
| Feature / Agent | jobs-to-be-done | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Understand customer motivations through job theory. Use when defining product strategy, conducting user research, identifying competitors, writing user stories, or reframing features around customer progress.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Startups
Explore AI agent skills for startup validation, product research, growth experiments, documentation, and fast execution with small teams.
AI Agent for Product Research
Browse AI agent skills for product research, competitive analysis, customer discovery, and structured product decision support.
AI Agent for SaaS Idea Validation
Use AI agent skills for SaaS idea validation, market research, customer discovery, competitor analysis, and documenting startup hypotheses.
SKILL.md Source
# Jobs-to-be-Done - What Are Customers Really Hiring?
Jobs-to-be-Done (JTBD) is a framework developed by Clayton Christensen and Bob
Moesta that focuses on the progress customers are trying to make in their lives.
Instead of asking "who is the customer?" it asks "what job are they hiring this
product to do?"
## When to Use This Skill
- Defining product strategy and positioning
- Conducting customer research interviews
- Writing user stories and requirements
- Identifying true competitors (often surprising)
- Finding innovation opportunities
- Understanding why customers switch products
## Core Concepts
### The Hiring Metaphor
```
Customer has a "job" to get done
|
v
+-------------+
| "Hires" a |
| product to |
| do the job |
+-------------+
|
v
If it does well → keeps using
If it fails → "fires" it, tries another
```
### The Milkshake Story
Clayton Christensen's famous example:
**Traditional approach**: "Who buys milkshakes? Demographics, preferences..."
**JTBD approach**: "What job is the milkshake being hired to do?"
Discovery: Morning milkshake buyers had a completely different job than
afternoon buyers.
| Time | Job to Be Done | Competition |
| --------- | -------------------------------------------------------------------- | -------------------------------- |
| Morning | "Make my boring commute more interesting + keep me full until lunch" | Bagels, bananas, coffee |
| Afternoon | "Treat my child after a long day" | Toys, playground time, ice cream |
### Types of Jobs
| Type | Description | Example |
| -------------- | ---------------------------- | ------------------------------------------ |
| **Functional** | Practical task to accomplish | "Help me file my taxes correctly" |
| **Emotional** | How I want to feel | "Make me feel confident about my finances" |
| **Social** | How I want to be perceived | "Show others I'm responsible" |
### Job Statement Format
```
When [situation/context]
I want to [motivation/job]
So I can [expected outcome]
```
## Analysis Framework
### Step 1: Identify the Job
Interview questions to uncover jobs:
| Question | Purpose |
| -------------------------------------------- | ---------------------- |
| "Walk me through the last time you [action]" | Get specific context |
| "What were you trying to accomplish?" | Uncover functional job |
| "How did that make you feel?" | Uncover emotional job |
| "What did you try before this?" | Identify competition |
### Step 2: Map the Forces
```
+------------------+------------------+
| PUSH | PULL |
| (away from) | (toward) |
| | |
| - Current pain | - Better outcome |
| - Frustration | - Emotional gain |
+------------------+------------------+
| |
v v
+------------------+------------------+
| ANXIETY | HABITS |
| (of new) | (of old) |
| | |
| - Will it work? | - "I've always |
| - Learning curve | done it this |
+------------------+ way" |
+------------------+
```
For customers to switch: **Push + Pull > Anxiety + Habits**
### Step 3: Define True Competition
True competitors are anything hired for the same job:
**Job**: "Help me fall asleep faster"
| JTBD View |
| ----------- |
| Sleep apps |
| Melatonin |
| White noise |
| Reading |
| Exercise |
| Wine |
## Output Template
```markdown
## Jobs-to-be-Done Analysis
**Product/Feature:** [Name]
### Core Job Statement
When [situation] I want to [motivation] So I can [outcome]
### Job Dimensions
**Functional:** [What they're trying to accomplish] **Emotional:** [How they
want to feel] **Social:** [How they want to be perceived]
### Forces Analysis
**Push:** [Pain points driving change] **Pull:** [Benefits of new solution]
**Anxieties:** [Concerns about switching] **Habits:** [Behaviors keeping them in
place]
### True Competition
| Competitor | Job Performance |
| ---------- | --------------- |
| [Alt 1] | [How well] |
| [Alt 2] | [How well] |
```
## Real-World Examples
### Example 1: Snickers vs. Milky Way
| Product | Job | Competitors |
| --------- | ----------------------------------------------- | ------------------ |
| Snickers | "I'm hungry and need a quick, filling snack" | Protein bars, nuts |
| Milky Way | "I want to treat myself to something indulgent" | Ice cream, cookies |
### Example 2: LinkedIn Learning
**Not hired for**: "I want to learn Python" (Udemy does this) **Hired for**: "I
want to show my employer I'm developing professionally"
## Best Practices
### Do
- Interview actual users about real past behavior
- Focus on the "hiring moment" and context
- Look for workarounds and "non-consumption"
- Identify emotional and social jobs
### Avoid
- Asking what features users want
- Taking stated preferences at face value
- Ignoring context and situation
- Focusing only on functional jobs
## Integration with Other Methods
| Method | Combined Use |
| ----------------------- | ---------------------------------- |
| **Hypothesis Tree** | Structure job discovery hypotheses |
| **Five Whys** | Dig into underlying motivations |
| **Fogg Behavior Model** | Design for job completion |
## Resources
- [Competing Against Luck - Clayton Christensen](https://www.amazon.com/Competing-Against-Luck-Innovation-Customer/dp/0062435612)
- [The Jobs to be Done Playbook - Jim Kalbach](https://www.amazon.com/Jobs-Be-Done-Playbook-Organization/dp/1933820683)Related Skills
what-not-to-do-as-product-manager
Anti-patterns and mistakes to avoid as a product manager. Use when evaluating leadership behaviors, improving team dynamics, reflecting on management practices, or onboarding new product managers.
visual-cues-cta-psychology
Design effective CTAs using visual attention and gaze psychology principles. Use when designing landing pages, button hierarchies, conversion elements, or optimizing user attention flow through interfaces.
vercel-sandbox
Run agent-browser + Chrome inside Vercel Sandbox microVMs for browser automation from any Vercel-deployed app. Use when the user needs browser automation in a Vercel app (Next.js, SvelteKit, Nuxt, Remix, Astro, etc.), wants to run headless Chrome without binary size limits, needs persistent browser sessions across commands, or wants ephemeral isolated browser environments. Triggers include "Vercel Sandbox browser", "microVM Chrome", "agent-browser in sandbox", "browser automation on Vercel", or any task requiring Chrome in a Vercel Sandbox.
value-realization
Analyze if end users discover clear value. Use when evaluating product concepts, analyzing adoption, or uncertain about direction.
user-story-fundamentals
Capture requirements from user perspective with structured user stories. Use when writing backlog items, defining acceptance criteria, prioritizing features, or communicating requirements between product and development.
typescript-satisfies-operator
Guides proper usage of TypeScript's satisfies operator vs type annotations. Use this skill when deciding between type annotations (colon) and satisfies, validating object shapes while preserving literal types, or troubleshooting type inference issues.
typescript-interface-vs-type
Guides when to use interface vs type in TypeScript. Use this skill when defining object types, extending types, or choosing between interface and type aliases.
typescript-best-practices
Guides TypeScript best practices for type safety, code organization, and maintainability. Use this skill when configuring TypeScript projects, deciding on typing strategies, writing async code, or reviewing TypeScript code quality.
typescript-advanced-types
Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications. Use when implementing complex type logic, creating reusable type utilities, or ensuring compile-time type safety in TypeScript projects.
trust-psychology
Build trust signals that reduce perceived risk and enable user action. Use when designing landing pages, checkout flows, onboarding experiences, or any conversion point where user hesitation is a barrier.
theme-epic-story
Structure product work hierarchically using themes, epics, and stories. Use when organizing backlogs, planning releases, communicating with stakeholders, or breaking down large initiatives into manageable work.
tailwind-v4-configuration
Configure Tailwind CSS v4 with CSS-first approach. Use when installing, migrating from v3, setting up build tools (Vite/PostCSS/CLI), customizing themes with @theme, or configuring plugins.