Skip to main content
skill CX Codex

define-jtbd-canvas — Claude Code skill: Jobs to be Done canvas

This skill builds a Jobs to be Done canvas covering the functional, emotional and social sides of a customer job. Useful when you need to understand motivation before building.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add product-on-purpose/pm-skills --skill define-jtbd-canvas -a claude-code
Open on GitHub

What define-jtbd-canvas does

The skill walks the agent through eight steps: name the job performer, describe the circumstance, write a job statement in the form "When [situation], I want to [motivation], so I can [desired outcome]", split the job into functional, emotional and social parts, list competing solutions and hiring criteria. The result is a filled canvas following references/TEMPLATE.md: job overview, performer, circumstance, job statement, the three job dimensions, competing solutions, hiring criteria, insights, supporting quotes and open research questions.

A quality checklist ships with it. The job statement has to keep the "When… I want… so I can…" shape, the circumstance must be specific rather than "anytime", and insights have to trace back to research instead of assumptions. references/EXAMPLE.md holds a completed canvas you can copy the structure from.

The skill does not replace research. If interviews have not happened yet, the author suggests running discover-interview-synthesis first, otherwise the canvas fills up with guesses. For a person-shaped artifact with goals and quotes there is foundation-persona; for one problem you are framing right now, define-problem-statement; for mapping opportunities to a measurable outcome, define-opportunity-tree.

What it helps with

  • split a customer job into functional, emotional and social parts
  • write a job statement in the "When… I want… so I can…" format
  • reframe product positioning around customer progress
  • surface non-obvious competitors, including doing nothing
  • check canvas insights against interview data instead of assumptions

Example prompts for the agent

  • build a JTBD canvas for our small-team segment
  • rewrite our positioning around a job statement
  • run my canvas through the quality checklist

How to install define-jtbd-canvas

1Skills CLI (Vercel)

npx skills add product-on-purpose/pm-skills --skill define-jtbd-canvas -a claude-code

2Manually: put the files in place

~/.claude/skills/define-jtbd-canvas/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/define-jtbd-canvas/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about define-jtbd-canvas

How do I install define-jtbd-canvas in Claude?

Run npx skills add product-on-purpose/pm-skills --skill define-jtbd-canvas -a claude-code. The skill lands in ~/.claude/skills/define-jtbd-canvas/SKILL.md.

What does define-jtbd-canvas do?

It creates a Jobs to be Done canvas: job performer, circumstance, job statement, functional, emotional and social job dimensions, competing solutions and hiring criteria.

How is the canvas different from a persona?

The canvas captures the job, the persona captures the person with goals, behaviors and quotes. If you need a person-shaped artifact for design or marketing, the author points to foundation-persona.

Source text

SKILL.md · Apache-2.0
---
name: define-jtbd-canvas
description: 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.
license: Apache-2.0
metadata:
  phase: define
  version: "2.1.0"
  updated: 2026-06-10
  category: problem-framing
  frameworks: [triple-diamond, lean-startup, design-thinking]
  author: product-on-purpose
---
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
# Jobs to be Done Canvas

A Jobs to be Done (JTBD) canvas captures the complete picture of why customers "hire" products to make progress in their lives. Based on Clayton Christensen's framework, JTBD goes beyond features and demographics to understand the underlying motivations.functional, emotional, and social.that drive customer behavior.

## When to Use

- When deeply researching customer motivations before building
- To reframe product positioning around customer progress
- When existing personas feel too surface-level or demographic
- During competitive analysis to identify why customers switch
- When designing marketing messages that resonate
- To align team on who the customer really is and what they need

## When NOT to Use

- You need a person-shaped artifact (goals, behaviors, quotes) for design or marketing work -> use `foundation-persona`; the canvas captures the job, the persona captures the person
- You have no customer research yet -> synthesize interviews first with `discover-interview-synthesis`; the canvas's insights must trace to research, not assumptions
- You are framing one specific problem to solve now -> use `define-problem-statement`
- You need to map opportunities to a measurable outcome for prioritization -> use `define-opportunity-tree`

## Instructions

When asked to create a JTBD canvas, follow these steps:

1. **Identify the Job Performer**
   Define who is doing this job. Go beyond demographics to capture the circumstance they're in. The same person can have different jobs in different situations.

2. **Articulate the Circumstance**
   Describe when and where this job arises. Jobs are triggered by specific situations. Understanding context helps predict when customers will seek a solution.

3. **Write the Job Statement**
   Use the format: "When [situation], I want to [motivation], so I can [desired outcome]." The job statement captures the core progress the customer seeks.

4. **Define the Functional Job**
   What is the practical task the customer needs to accomplish? This is the tangible, measurable part of the job. Be specific about what "done" looks like.

5. **Capture the Emotional Job**
   How does the customer want to feel during and after the job? Emotional jobs often drive decisions more than functional ones. Include both desired feelings and feelings to avoid.

6. **Identify the Social Job**
   How does the customer want to be perceived by others? Social jobs relate to status, identity, and relationships. Not all jobs have strong social dimensions.

7. **Map Competing Solutions**
   What are customers currently "hiring" to do this job? Include direct competitors, indirect alternatives, and non-consumption (doing nothing). Understanding current solutions reveals what to compete against.

8. **Define Hiring Criteria**
   What makes customers choose one solution over another? What are the "must haves" vs. "nice to haves"? This informs positioning and prioritization.

## Output Format

Use the template in `references/TEMPLATE.md` to structure the output. A complete canvas fills every template section: Job Overview; Job Performer; The Circumstance; Job Statement; Functional Job; Emotional Job; Social Job; Competing Solutions; Hiring Criteria; Insights and Implications; Supporting Quotes; and Questions for Further Research.

## Quality Checklist

Before finalizing, verify:

- [ ] Job statement follows "When... I want... so I can..." format
- [ ] Circumstance is specific (not just "anytime")
- [ ] Functional job describes tangible outcome
- [ ] Emotional job includes how customer wants to feel
- [ ] Competing solutions include non-obvious alternatives
- [ ] Insights are based on research, not assumptions

## Examples

See `references/EXAMPLE.md` for a completed example.

© product-on-purpose · Apache-2.0 · product-on-purpose/pm-skills

Similar skills

Everything for Notes, tasks and projects →

From the same set68

deliver-launch-checklist Builds a cross-functional pre-launch checklist: engineering, design, marketing, support, legal, operations. For launches that span several teams. CX Codex +1 786installs define-opportunity-tree Turns a measurable outcome into a tree of customer opportunities, candidate solutions and assumption tests. Useful when feature ideas pile up without structure. CX Codex +1 774installs develop-solution-brief Turns a problem into a one-page brief: proposed approach, key features, trade-offs and risks. Useful before you write the full spec. CX Codex +1 772installs discover-interview-synthesis This skill turns interview notes and transcripts into themes, quotes, insights and recommendations. Useful after a round of user research when the team needs to see what you heard. CX Codex +1 770installs measure-dashboard-requirements Defines dashboard requirements by focusing on business questions, metric formulas, filters, and data sources. Useful when requesting reporting from analytics teams. CX Codex +1 756installs measure-experiment-design Produces an experiment design doc with variants, metrics, sample size and duration. Useful once the hypothesis is written and the test has not started yet. CX Codex +1 754installs deliver-release-notes Turns a changelog into release notes people actually read: what shipped, what got better, what got fixed. CX Codex +1 751installs foundation-persona Builds a product or marketing persona from one canonical template, with confidence levels, assumptions and open questions spelled out. Useful before a PRD or a launch. CX Codex +1 745installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor