How to Build an Opportunity Solution Tree for User Activation

To build an Opportunity Solution Tree for user activation, define a measurable activation outcome as the root node, map user opportunities derived from research, prioritize them using an Opportunity Score, generate at least three solutions per opportunity with your Product Trio, and design experiments to validate each solution.

The Opportunity Solution Tree (OST) is a visual framework that helps product teams translate high-level desired outcomes into actionable hierarchies of opportunities, solutions, and experiments. According to the phuryn/pm-skills repository, this approach follows Teresa Torres' Continuous Discovery Habits and is implemented in the Opportunity Solution Tree skill file. This guide shows you how to build an Opportunity Solution Tree for user activation using the specific architecture and code interfaces provided in the open-source implementation.

Define Your Desired Activation Outcome

Every OST starts with a single, measurable metric that reflects user activation. In pm-product-discovery/skills/opportunity-solution-tree/SKILL.md (lines 16-17), this is defined as the root node of the tree.

Choose a specific activation metric such as "Raise the 7-day activation rate from 30% to 45%" or "Increase profile completion within 24 hours by 20%." This outcome anchors the entire tree and ensures every downstream decision maps directly to business impact.

Map and Prioritize User Opportunities

Once you define the outcome, derive customer opportunities from qualitative and quantitative research. The skill implementation (lines 18-20) emphasizes framing these from the user’s perspective.

Common activation opportunities include:

  • "I don't understand how to set up my profile."
  • "I can't find the core feature quickly."
  • "I'm not sure what value I'll get from continued use."

Group related items and prioritize using the Opportunity Score (lines 47-48): Importance × (1 − Satisfaction). Rank the top 2-3 opportunities that most impact your activation metric.

Generate Solutions with the Product Trio

For each high-priority opportunity, brainstorm at least three distinct solutions. The skill documentation (lines 20-21) recommends involving the Product Trio (PM + Designer + Engineer) to broaden ideation.

Example solutions for "I don't understand how to set up my profile":

  • Interactive product tour
  • Setup wizard with progressive disclosure
  • Contextual tooltips that appear on first use

This divergent thinking prevents premature convergence on a single idea before validation.

Design Validation Experiments

Create fast, low-cost experiments that test whether a solution actually resolves the opportunity. The skill references an assumption-testing matrix (lines 22-23) across four dimensions: Value, Usability, Viability, and Feasibility.

For an interactive product tour experiment, structure your test as follows:

  • Hypothesis: Users who see the tour will complete profile setup within 2 minutes.
  • Method: Randomly assign new users to tour vs. control.
  • Metric: Completion rate of the profile-setup step.
  • Success Threshold: ≥10% lift over baseline.

Visualize and Share the Tree

The OST skill automatically outputs a markdown-formatted tree (lines 53-55) that visualizes the hierarchy. Use this format to align stakeholders and track progress.

Example markdown representation:


# Activation OST

- **Outcome**: Increase 7-day activation to 45%
  - **Opportunity 1**: Users don't understand profile setup
    - **Solution 1-a**: Interactive product tour
      - **Experiment 1-a-i**: A/B test tour vs. control (target: +10% activation)
    - **Solution 1-b**: Setup wizard
    - **Solution 1-c**: Contextual tooltips
  - **Opportunity 2**: Core feature is hidden
    - **Solution 2-a**: Quick-access menu
    - **Experiment 2-a-i**: Usability test with 5-minute task timer

Implementing the OST Skill in Code

The phuryn/pm-skills repository treats the OST as an invocable skill compatible with Claude-powered workflows. You can trigger it via JSON payload or CLI wrapper.

Direct skill call using JSON:

{
  "skill": "opportunity-solution-tree",
  "arguments": {
    "desired_outcome": "Increase 7-day activation rate to 45%",
    "research_data": [
      "Interview transcript showing confusion around profile setup",
      "Analytics showing drop-off at step 2 of onboarding"
    ]
  }
}

Using the CLI wrapper:

pm-product-discovery \
  --skill opportunity-solution-tree \
  --outcome "Increase 7-day activation to 45%" \
  --data "interviews.json" "analytics.csv"

The skill returns a structured markdown document that you can embed into scripts, CI pipelines, or chatbot interactions.

Summary

  • Define a single measurable activation outcome as the root node of your tree.
  • Map opportunities from user research and prioritize using the Opportunity Score formula.
  • Generate at least three solutions per opportunity using the Product Trio approach.
  • Design experiments using the assumption-testing matrix (Value, Usability, Viability, Feasibility).
  • Use the opportunity-solution-tree skill in phuryn/pm-skills to automate markdown generation and integrate with development workflows.

Frequently Asked Questions

What is the Opportunity Score formula used in the OST skill?

The Opportunity Score is calculated as Importance × (1 − Satisfaction). This formula helps you identify which user problems are both important and currently underserved, allowing you to focus on high-impact opportunities for activation rather than minor improvements.

Who should be involved in generating solutions for the Opportunity Solution Tree?

The skill implementation explicitly recommends the Product Trio: a Product Manager, Designer, and Engineer. This cross-functional collaboration ensures that solutions are technically feasible, user-centered, and aligned with business constraints from the initial ideation phase.

How do I integrate the OST skill into my CI pipeline?

You can invoke the skill via the CLI wrapper pm-product-discovery by passing the --skill opportunity-solution-tree flag along with your desired outcome and research data files. The command outputs a markdown-formatted tree that can be committed to your repository or passed to subsequent pipeline stages for automated documentation.

What makes an Opportunity Solution Tree different from a standard product roadmap?

Unlike static roadmaps that list features by date, an OST organizes work around outcomes and validated learning. Each branch maps opportunities to multiple solutions and experiments, ensuring you test assumptions before building. As implemented in phuryn/pm-skills, the tree format emphasizes continuous discovery over fixed output delivery.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →