# What Are the Four Levels of the Opportunity Solution Tree? A Complete Guide

> Understand the four levels of the Opportunity Solution Tree: Desired Outcome, Opportunities, Solutions, and Experiments. This guide connects business goals to product decisions.

- Repository: [Pawel Huryn/pm-skills](https://github.com/phuryn/pm-skills)
- Tags: deep-dive
- Published: 2026-06-15

---

**The four levels of the Opportunity Solution Tree are Desired Outcome, Opportunities, Solutions, and Experiments, forming a hierarchical framework that connects measurable business goals to validated product decisions.**

The Opportunity Solution Tree (OST) is a visual framework introduced by Teresa Torres in *Continuous Discovery Habits* that helps product teams map strategic objectives to actionable experiments. As implemented in the `phuryn/pm-skills` repository, this structured approach prevents teams from prematurely jumping to solutions by forcing explicit consideration of underlying customer needs and validation methods. The four levels of the Opportunity Solution Tree create a living map that guides continuous discovery and prioritizes evidence-based decision making.

## Understanding the Opportunity Solution Tree Framework

The OST is deliberately organized as a branching hierarchy that starts with a single business objective and cascades down to specific tests. According to [`pm-product-discovery/skills/opportunity-solution-tree/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/opportunity-solution-tree/SKILL.md), this structure ensures that every solution is explicitly tied to a validated opportunity and that every experiment directly validates whether a solution resolves the underlying customer need. Teams iterate on experiments, prune failing branches, and evolve the tree as they learn, making it a dynamic tool for product discovery rather than a static document.

## Breaking Down the Four Levels of the Opportunity Solution Tree

### Level 1: Desired Outcome

The **Desired Outcome** sits at the apex of the tree as a single, measurable business or product goal. This level must be clear, quantifiable, and tied directly to OKRs or organizational strategy. Examples include "increase 7-day retention to 40%" or "reduce customer churn by 15% within Q3." The desired outcome acts as the anchor that determines which opportunities are worth pursuing and which solutions are relevant to explore.

### Level 2: Opportunities

**Opportunities** represent customer needs, pains, or desires uncovered through continuous research. Framed from the user’s perspective as problem statements (e.g., "I struggle to log back in after first use"), these nodes bridge the gap between business goals and user reality. The repository implements a prioritization mechanism where opportunities are scored using the formula: **Opportunity Score = Importance × (1 − Satisfaction)**. This calculation ensures teams focus on high-impact problems that remain inadequately addressed by current solutions.

### Level 3: Solutions

The **Solutions** level contains ideas that could address specific opportunities. To avoid "first-idea" bias, the framework requires generating multiple solutions per opportunity. According to the source documentation, these solutions should be co-created by the **product trio**—the Product Manager, Designer, and Engineer working together. This collaborative approach ensures technical feasibility, user experience quality, and business viability are considered simultaneously before committing to build.

### Level 4: Experiments

**Experiments** form the foundation of the tree as small, cheap tests designed to validate whether a solution actually resolves the opportunity. Each experiment must include a clear hypothesis, method, success criteria, and metrics. Common formats include A/B tests, fake door tests, and concierge MVPs. This level ensures that teams gather evidence before investing in full-scale development, maintaining the continuous discovery loop that makes the OST effective.

## Practical Implementation in the pm-skills Repository

The `phuryn/pm-skills` repository provides concrete tooling for implementing these four levels. The complete definition resides in [`pm-product-discovery/skills/opportunity-solution-tree/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/opportunity-solution-tree/SKILL.md), while the execution workflow is orchestrated through [`pm-product-discovery/commands/discover.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/commands/discover.md).

Below is the markdown structure used by the repository to represent an OST:

```markdown

## Desired Outcome

Increase 7‑day retention to 40 %

### Opportunities

- **Opportunity 1:** Users forget to log back in after first use
- **Opportunity 2:** Users find the onboarding flow confusing
- **Opportunity 3:** Users lack clear value signals early on

#### Solutions for Opportunity 1

- Push notifications reminding users to return
- Email re‑engagement campaign
- In‑app “quick‑resume” button

##### Experiments for “Push notifications”

- **Hypothesis:** A push reminder will raise Day‑2 DAU by 5 %.
- **Method:** Send a notification to 10 % of users; control group receives none.
- **Success Metric:** +5 % lift in Day‑2 DAU vs. control.

```

To initiate the full discovery pipeline that generates these four levels, invoke the `/discover` command:

```bash
/discover Build a smart notification system for our project‑management tool

```

Running this command triggers the workflow defined in [`discover.md`](https://github.com/phuryn/pm-skills/blob/main/discover.md), which populates the Opportunity Solution Tree with all four hierarchical levels populated by research and collaborative input.

## Summary

- The four levels of the Opportunity Solution Tree are **Desired Outcome**, **Opportunities**, **Solutions**, and **Experiments**.
- Each level builds upon the previous to create a validation chain from business strategy to tested hypotheses.
- The complete framework definition is located in [`pm-product-discovery/skills/opportunity-solution-tree/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/opportunity-solution-tree/SKILL.md) within the `phuryn/pm-skills` repository.
- Use the `/discover` command to generate new trees and initiate continuous discovery workflows.
- Opportunities are prioritized using the **Opportunity Score = Importance × (1 − Satisfaction)** formula to maximize impact.

## Frequently Asked Questions

### Who created the Opportunity Solution Tree?

Teresa Torres introduced the Opportunity Solution Tree in her book *Continuous Discovery Habits*, where she developed the framework to help product teams avoid solution-first thinking and maintain continuous connection with customer needs. The `phuryn/pm-skills` repository implements this framework as a practical skill for product discovery workflows.

### How are opportunities prioritized within the tree?

Opportunities are ranked using an **Opportunity Score** calculated as Importance multiplied by (1 minus Satisfaction), as documented in the repository's SKILL.md file. This prioritization ensures teams focus on problems that are highly important to users but currently poorly satisfied by existing solutions, maximizing the potential impact of subsequent solutions.

### What file contains the definition of the four OST levels?

The complete definition of the four levels—Desired Outcome, Opportunities, Solutions, and Experiments—is found in [`pm-product-discovery/skills/opportunity-solution-tree/SKILL.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/skills/opportunity-solution-tree/SKILL.md). This file serves as the source of truth for how the framework is structured and applied within the pm-skills toolkit.

### How do you generate an Opportunity Solution Tree using the pm-skills toolkit?

Invoke the `/discover` command followed by your product initiative description to trigger the discovery pipeline. As defined in [`pm-product-discovery/commands/discover.md`](https://github.com/phuryn/pm-skills/blob/main/pm-product-discovery/commands/discover.md), this command orchestrates the workflow that produces a fully populated OST with all four levels, connecting your desired outcome to concrete experiments.