Prioritization Frameworks Comparison: RICE vs ICE vs Kano vs Opportunity Score
RICE prioritizes initiatives by reach, impact, confidence, and effort; ICE offers a lighter multiplication of impact, confidence, and ease; Opportunity Score quantifies problem value through importance and satisfaction gaps; while the Kano Model qualitatively classifies features by how they influence customer delight rather than generating numeric rankings.
Product teams need systematic methods to decide which features to build first. This prioritization frameworks comparison examines four essential methodologies—RICE, ICE, Opportunity Score, and the Kano Model—based on the practical implementation guides found in the phuryn/pm-skills open-source repository. The repository stores detailed formulas and decision criteria in pm-execution/skills/prioritization-frameworks/SKILL.md, providing product managers with ready-to-use templates for each approach.
Opportunity Score: Measuring Problem Value
The Opportunity Score framework calculates the value of solving a specific customer problem rather than ranking pre-defined solutions.
According to the source code in pm-execution/skills/prioritization-frameworks/SKILL.md (lines 14-23), the formula is:
Importance × (1 − Satisfaction)
This measures how important a need is and how poorly it is currently satisfied. A high score indicates a valuable problem worth solving.
Typical use case: Prioritizing customer problems during discovery phases before committing to specific solutions.
ICE Framework: Lightweight Initiative Triage
The ICE framework provides rapid scoring for initiatives when teams need quick triage without extensive effort calculations.
As documented in pm-execution/skills/prioritization-frameworks/SKILL.md (lines 27-35), the formula is:
Impact × Confidence × Ease
Notably, Impact itself derives from the Opportunity Score methodology: Opportunity Score × Number of Customers. This roots ICE back to actual problem value rather than arbitrary assignments.
Typical use case: Fast ranking of ideas during brainstorming sessions or early-stage product planning.
RICE Framework: Scaling to Complex Backlogs
RICE extends ICE by adding granularity through explicit Reach and Effort components, making it suitable for larger product backlogs.
The repository defines RICE in pm-execution/skills/prioritization-frameworks/SKILL.md (lines 37-46) as:
(Reach × Impact × Confidence) / Effort
Unlike ICE, which uses Ease (higher is better), RICE uses Effort as a denominator (lower effort increases the score). Reach represents the number of customers affected per quarter, while Impact remains the value per customer.
Typical use case: Prioritizing across multiple initiatives when resources are constrained and effort varies significantly between options.
Kano Model: Understanding Customer Expectations
The Kano Model differs fundamentally from the numeric frameworks above. Rather than generating scores, it classifies features into categories based on how they influence customer satisfaction.
As outlined in pm-execution/skills/prioritization-frameworks/SKILL.md (lines 55-60), the qualitative classifications include:
- Must-Be: Basic expectations that cause dissatisfaction when absent but do not increase satisfaction when present
- Performance: Features where satisfaction increases linearly with implementation quality
- Attractive: Delighters that generate high satisfaction when present but do not cause dissatisfaction when absent
- Indifferent: Features that do not affect satisfaction either way
- Reverse: Features that actively dissatisfy when present
Typical use case: Roadmap shaping and feature design decisions after problems have been identified.
Key Differences: Numeric vs Qualitative Approaches
Understanding when to apply each framework depends on four critical distinctions:
Metric Generation
- Opportunity Score, ICE, and RICE produce numeric values that allow direct sorting and ranking
- Kano provides categorical classification without quantitative comparison between items
Scope of Application
- Opportunity Score answers: "Which problems should we solve?"
- ICE and RICE answer: "Which initiatives should we prioritize?"
- Kano answers: "What type of feature will satisfy this need?"
Computational Complexity
- ICE offers the fastest calculation with three multiplicative factors
- RICE adds division and separate reach calculation, introducing overhead but yielding nuanced results
- Kano requires user research (surveys or interviews) to categorize items, making it the most effort-intensive
Data Requirements
- Numeric frameworks require estimates for importance, satisfaction, confidence, and effort
- Kano requires functional and dysfunctional survey responses to classify features properly
Implementation: Python Examples
Below are practical implementations demonstrating how to calculate each framework programmatically.
Numeric Frameworks
# Example data for a single idea
importance = 0.9 # 0-1 scale (high importance)
satisfaction = 0.2 # 0-1 scale (low satisfaction)
customers = 1500 # number of customers affected
confidence = 8 # 1-10 scale
ease = 6 # 1-10 scale
effort = 3 # person-months
# ---- Opportunity Score ----
opp_score = importance * (1 - satisfaction)
print("Opportunity Score:", round(opp_score, 3)) # 0.72
# ---- ICE ----
impact = opp_score * customers
ice_score = impact * confidence * ease
print("ICE Score:", ice_score) # 51840
# ---- RICE ----
reach = customers
rice_score = (reach * opp_score * confidence) / effort
print("RICE Score:", round(rice_score, 2))
Kano Classification
def kano_category(func_satis, dissat):
"""
Classifies features based on survey percentages.
func_satis: % satisfied with feature present
dissat: % dissatisfied when feature is absent
"""
if func_satis > 80 and dissat < 20:
return "Must-Be"
if func_satis > 60 and dissat > 40:
return "Performance"
if func_satis > 60 and dissat < 40:
return "Attractive"
if func_satis < 30:
return "Indifferent"
return "Reverse"
print(kano_category(85, 10)) # → Must-Be
Summary
- Opportunity Score provides the foundational calculation for problem prioritization using
Importance × (1 − Satisfaction) - ICE offers lightweight initiative ranking through
Impact × Confidence × Ease, where Impact ties back to Opportunity Score - RICE scales prioritization for larger teams using
(Reach × Impact × Confidence) / Effort, explicitly accounting for effort costs - Kano Model enables qualitative roadmap decisions by classifying features into Must-Be, Performance, Attractive, Indifferent, or Reverse categories
- The
phuryn/pm-skillsrepository stores complete implementation guidance inpm-execution/skills/prioritization-frameworks/SKILL.md
Frequently Asked Questions
When should I use RICE instead of ICE?
Use RICE when managing multiple initiatives with varying resource requirements across larger teams. The explicit Effort denominator and separate Reach calculation provide granularity needed for complex backlogs. Use ICE for rapid triage during early-stage brainstorming when precise effort estimates are unavailable and speed matters more than precision.
How does Opportunity Score relate to ICE and RICE calculations?
Opportunity Score serves as the foundation for Impact calculations in both ICE and RICE. As implemented in the source code, Impact equals Opportunity Score × Number of Customers. This ensures that initiative prioritization remains rooted in actual customer problem value rather than subjective assessment.
Can I combine the Kano Model with numeric frameworks like RICE?
Yes. Use Kano classification after identifying problems to determine how to solve them (feature type), then apply RICE or ICE to prioritize which initiatives to build first. For example, ensure all Must-Be features meet basic thresholds before using RICE to rank Performance improvements that differentiate your product.
What data do I need to calculate these frameworks?
For Opportunity Score, collect customer importance and satisfaction ratings (0-1 scale). For ICE and RICE, add confidence estimates (1-10), ease/effort estimates (person-months or 1-10 scale), and customer reach counts. For Kano, conduct functional/dysfunctional surveys asking customers how they feel with the feature present and how they feel without it.
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:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →