# Jtbd Opportunity Calculator

> Calculate Outcome-Driven Innovation (ODI) Opportunity Scores from quantitative customer survey data. Use when asked to compute opportunity scores, classify outcomes into underserved or overserved categories, audit survey scale compatibility, report methodological limitations, or run deterministic calculations on survey datasets.

- **Type:** Skill
- **Install:** `agentstack add skill-lishix520-jtbd-skills-jtbd-opportunity-calculator`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [lishix520](https://agentstack.voostack.com/s/lishix520)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [lishix520](https://github.com/lishix520)
- **Source:** https://github.com/lishix520/jtbd-skills/tree/main/skills/jtbd-opportunity-calculator

## Install

```sh
agentstack add skill-lishix520-jtbd-skills-jtbd-opportunity-calculator
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# JTBD Opportunity Calculator

Calculate Outcome-Driven Innovation® (ODI) Opportunity Scores from quantitative customer survey data.

The Opportunity Score identifies where customers struggle to get a job done (underserved) vs. where current solutions exceed customer value without adding utility (overserved).

## Scope

Input must include:
- `survey_metadata`: `importance_scale`, `satisfaction_scale`, `sample_size`, `population_definition`, `collection_method`
- `outcomes`: A list of Desired Outcome Statements with numerical `importance_mean` and `satisfaction_mean` ratings

Output:
- Calculated Opportunity Score per outcome statement
- Classification: `extreme_underserved` ($Opp \ge 15.0$), `high_underserved` ($12.0 \le Opp  I_i$
- Invent, estimate, or hallucinate numeric ratings from qualitative text or interview quotes
- Apply 10-point thresholds to any scale other than matching `1_to_10` inputs; v0.1 rejects non-10-point scales
- Formulate business growth strategies or product roadmaps (delegate to `jtbd-growth-strategist`)

## Mathematical Formula

For each outcome $i$, using 1-to-10 scales:

$$\text{Opportunity Score}_i = \text{Importance}_i + \max(\text{Importance}_i - \text{Satisfaction}_i, 0)$$

1. **Importance ($I_i$)**: Mean customer rating of outcome importance (1.0 to 10.0).
2. **Satisfaction ($S_i$)**: Mean customer rating of outcome satisfaction with current solutions (1.0 to 10.0).
3. **Satisfaction Gap**: If $I_i > S_i$, the gap is $(I_i - S_i)$. If $S_i \ge I_i$, the gap is $0$.
4. **Max Value**: On a 1-to-10 scale, maximum possible Opportunity Score is $10.0 + (10.0 - 1.0) = 19.0$.

## Opportunity Classification Rules

Opportunity classification is determined strictly by the Opportunity Score bounds:

- **`extreme_underserved`**: $Opp \ge 15.0$
- **`high_underserved`**: $12.0 \le Opp  S_i$
  - `matches_importance`: $I_i == S_i$
  - `above_importance`: $S_i > I_i$
- `overserved_signal`: Set to `true` ONLY when $Opp  I_i$. High importance outcomes ($I_i \ge 8.0$) with $S_i > I_i$ have $Opp \ge 8.0$ and are classified as `appropriately_served`, NOT `overserved_candidate`.

## Scale & Data Quality Discipline

- **Data Quality Status**:
  - `complete`: Required metadata and numeric ratings are present.
  - `incomplete`: Missing values, missing metadata, or text input without ratings (`calculation_status: blocked`).
  - `invalid`: Scale mismatch, out-of-bounds ratings ($ 10.0$), or non-numeric values.
- **Methodological Assessment**:
  - `sample_size_status`: `adequate` ($N \ge 100$), `small` ($N  I_i$.
   e. Assign opportunity classification based on Opportunity Score.
4. Assess methodological limitations and populate `data_limitations`.
5. Return the calculation report.

## Output Format

```yaml
survey_metadata:
  importance_scale: "1_to_10"
  satisfaction_scale: "1_to_10"
  sample_size: 0
  population_definition: ""
  collection_method: ""

data_quality_status: complete | incomplete | invalid
calculation_status: completed | blocked

methodological_assessment:
  sample_size_status: adequate | small | unknown
  representativeness: unverified
  collection_method_status: reported | missing

scale_handling:
  calculation_scale: "1_to_10"
  normalization: none
  threshold_interpretation: standard

## Future Scope

Future versions may support caller-provided, documented normalization for non-10-point scales. v0.1 rejects all non-1_to_10 scales and does not apply normalization.

data_limitations: []

results:
  - id: ""
    statement: ""
    importance_mean: 0.0
    satisfaction_mean: 0.0
    satisfaction_gap: 0.0
    satisfaction_relation: below_importance | matches_importance | above_importance
    opportunity_score: 0.0
    classification: extreme_underserved | high_underserved | moderate_underserved | appropriately_served | overserved_candidate
    overserved_signal: true | false
    segment: ""

next_research_question: ""
```

## Reference Materials

Read `references/opportunity-algorithm-rules.md` before:
- Handling non-10-point scale normalization
- Analyzing opportunity landscapes and satisfaction relations
- Executing deterministic Python calculations using `scripts/calculate_opportunity.py`

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [lishix520](https://github.com/lishix520)
- **Source:** [lishix520/jtbd-skills](https://github.com/lishix520/jtbd-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-lishix520-jtbd-skills-jtbd-opportunity-calculator
- Seller: https://agentstack.voostack.com/s/lishix520
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
