five-whys
Conduct root cause analysis using the Five Whys technique. Use when investigating problems, debugging issues, understanding failures, analyzing churn, or finding the underlying cause of any issue.
Best use case
five-whys is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Conduct root cause analysis using the Five Whys technique. Use when investigating problems, debugging issues, understanding failures, analyzing churn, or finding the underlying cause of any issue.
Teams using five-whys 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/five-whys/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How five-whys Compares
| Feature / Agent | five-whys | 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?
Conduct root cause analysis using the Five Whys technique. Use when investigating problems, debugging issues, understanding failures, analyzing churn, or finding the underlying cause of any issue.
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.
SKILL.md Source
# Five Whys - Root Cause Analysis
Systematic guide to uncovering root causes through iterative questioning,
originally developed by Sakichi Toyoda for Toyota Motor Corporation.
## When to Use This Skill
- Investigating recurring problems
- Debugging system failures
- Understanding customer churn
- Analyzing project delays or budget overruns
- Post-mortem analysis
- Process improvement initiatives
## Core Concepts
### The Method
```
Problem Statement
↓
Why? → Answer 1
↓
Why? → Answer 2
↓
Why? → Answer 3
↓
Why? → Answer 4
↓
Why? → Answer 5
↓
Root Cause Identified
↓
Solution Implementation
```
### Key Principles
| Principle | Description |
| ---------------------------- | ------------------------------------ |
| **Facts over assumptions** | Base questions on data, not guesses |
| **Systems over individuals** | Focus on process failures, not blame |
| **Flexibility** | Go beyond 5 questions if needed |
| **Verification** | Validate findings with evidence |
## Questioning Techniques
### Standard Approach
For each iteration, ask:
- Why did this happen?
- What caused this situation?
- What led to this outcome?
### Alternative Phrasing (Less Confrontational)
When direct "why" questions feel threatening, use softer alternatives:
#### Root Cause Investigation
| Instead of... | Try... |
| -------------------- | ------------------------------------- |
| Why did this happen? | What was going on when this happened? |
| Why did you do that? | What were you trying to accomplish? |
| Why is this broken? | How do you suppose we ended up here? |
#### Understanding Motivation
| Instead of... | Try... |
| --------------------- | ------------------------------------------ |
| Why do you want this? | What happens if we don't get this done? |
| Why does this matter? | What problems does this solve? |
| Why is this urgent? | What do you think will happen if we delay? |
#### Understanding Decisions
| Instead of... | Try... |
| ------------------------------- | --------------------------------------------- |
| Why did leadership decide this? | What were the reasons we went this direction? |
| Why this approach? | How do you see this working long term? |
## Analysis Framework
### Step 1: Define the Problem
Be specific and measurable:
```
❌ Bad: "The system is slow"
✅ Good: "Page load time increased from 2s to 8s after the March release"
❌ Bad: "Customers are unhappy"
✅ Good: "Customer churn increased by 40% over three months"
```
### Step 2: Iterate Through Whys
Document each level clearly:
```
Problem: Customer churn increased by 40%
1. Why? → Customers canceling after free trial
2. Why? → Not seeing enough value during trial
3. Why? → Not completing the onboarding process
4. Why? → Onboarding too complex, requires too much setup
5. Why? → Product lacks automation and intelligent defaults
Root Cause: Poor onboarding experience due to lack of automation
```
### Step 3: Identify Solutions
Target the root cause, not symptoms:
```
Symptom-level fix (avoid):
├── Offer discounts to retain customers
└── Send more reminder emails
Root cause fix (preferred):
├── Build automated data import
├── Create intelligent defaults by industry
├── Simplify onboarding to 3 steps
└── Add progress indicators
```
## Output Template
After completing analysis, document as:
```markdown
## Five Whys Analysis
**Problem Statement:** [Clear, measurable problem description]
**Analysis Date:** [Date]
**Participants:** [Who was involved]
### Question Chain
1. **Why?** [First answer with evidence]
2. **Why?** [Second answer with evidence]
3. **Why?** [Third answer with evidence]
4. **Why?** [Fourth answer with evidence]
5. **Why?** [Fifth answer with evidence]
### Root Cause
[Identified root cause - the systemic issue to address]
### Recommended Solutions
| Priority | Solution | Expected Impact | Effort |
| -------- | ------------ | --------------- | -------- |
| High | [Solution 1] | [Impact] | [Effort] |
| Medium | [Solution 2] | [Impact] | [Effort] |
| Low | [Solution 3] | [Impact] | [Effort] |
### Success Metrics
- [How will we measure if the solution worked?]
```
## Classic Examples
### Manufacturing Example (Toyota Original)
```
Problem: Machine stopped operating
1. Why? → Motor overheated
2. Why? → Wasn't lubricated enough
3. Why? → Oil pump failed
4. Why? → Filter was clogged
5. Why? → No regular maintenance schedule
Root Cause: Lack of preventive maintenance procedures
Solution: Implement maintenance schedule and checklist
```
### SaaS Example
```
Problem: Customer churn increased 40%
1. Why? → Customers canceling after free trial
2. Why? → Not seeing enough value during trial
3. Why? → Not completing onboarding
4. Why? → Onboarding too complex
5. Why? → Lacks automation and smart defaults
Root Cause: Poor onboarding experience
Solutions:
- Automated data import from popular tools
- Intelligent defaults based on industry
- Simplified 3-step onboarding
- In-app progress indicators
Result: 60% decrease in churn, 35% increase in trial conversion
```
### Software Bug Example
```
Problem: Production API returning 500 errors
1. Why? → Database queries timing out
2. Why? → Query taking 30+ seconds
3. Why? → Missing index on frequently queried column
4. Why? → Index was dropped during migration
5. Why? → Migration script lacked index recreation step
Root Cause: Incomplete migration testing process
Solutions:
- Add index verification to migration checklist
- Implement automated index coverage tests
- Create pre-production performance benchmarks
```
## Best Practices
### Do
- **Use data** - Support answers with evidence and metrics
- **Involve diverse perspectives** - Different viewpoints reduce blind spots
- **Focus on systems** - Ask "what process failed?" not "who failed?"
- **Document everything** - Create audit trail for future reference
- **Verify root cause** - Test that fixing it would prevent recurrence
### Avoid
- **Stopping too early** - Surface answers are usually symptoms
- **Personal blame** - "John made a mistake" is never the root cause
- **Single path** - Complex problems may have multiple root causes
- **Assumptions** - Always verify with data
- **Skipping steps** - Each "why" should logically follow the previous
## Communication Tips
- Give people time to respond - embrace silence
- Ask one question at a time
- Resist the urge to clarify before they answer
- Focus on curiosity rather than interrogation
- Frame as collaborative problem-solving
## Integration with Other Methods
The Five Whys works well alongside:
| Method | Combined Use |
| -------------------- | -------------------------------------- |
| **Kaizen** | Continuous improvement cycles |
| **Six Sigma** | DMAIC problem-solving |
| **Fishbone Diagram** | Visualizing multiple cause categories |
| **Pareto Analysis** | Prioritizing which problems to analyze |
| **Post-mortem** | Incident review sessions |
## Resources
- [Toyota Production System](https://en.wikipedia.org/wiki/Toyota_Production_System)
- [Taiichi Ohno's Workplace Management](https://www.goodreads.com/book/show/843519.Workplace_Management)
- [The Lean Startup - Eric Ries](https://theleanstartup.com/)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.