How It Works Pricing Blog Docs Login Sign Up
Guide

Feature prioritization: five frameworks on one list of requests

MoSCoW, RICE, Kano, the impact effort matrix and votes from paying users, each applied to the same twelve feature requests. Where they agree, where they disagree, and which one to use when.

By Martin Lasek · Oct 5, 2026 · 7 min read

Feature prioritization

Feature prioritization is deciding which feature requests to build first when there are more good ideas than time. There are dozens of frameworks for it, and most guides describe each one with its own made-up example, so you never see two of them disagree. This guide does the opposite: five frameworks, one list.

The list is twelve requests for Plant Diary, a made-up plant care app, the same one used in the guides to each framework. Each section below says what the framework asks, what it decided for that list, and links to the full guide.

The short answer

Use MoSCoW when a release has a fixed date and too much to fit, RICE when you need a strict order, the Kano model when you can't tell a basic from a nice extra, an impact effort matrix for a quick first sort, and votes from paying users when revenue decides. Most teams end up combining two of them.

Feature prioritization framework picker: questions about release dates, kinds of demand, time and revenue leading to MoSCoW, Kano, impact effort matrix, votes from paying users or RICE

The list: twelve feature requests

Eleven requests from Plant Diary's feedback board, each with its votes from the last quarter, plus one bug from support. Every item has a rough estimate in days of work.

Request Votes Days
Fix double reminders12 reports2
Watering intervals646
Home screen widget515
Sync across devices4714
Fertilizer reminders412
Dark mode383
Plant ID by photo3320
Apple Watch app2215
Plant photo diary195
Share with a partner1812
CSV export91
German translation72

MoSCoW: what ships by the date

MoSCoW sorts everything into Must have, Should have, Could have and Won't have this time, and keeps the Musts under 60% of the work. With 40 days for version 2.0, three Musts survived the question "would we cancel the release without it?": the double reminders fix, watering intervals and sync, which had been announced. The widget, fertilizer reminders and dark mode became Shoulds. Plant ID by photo, despite 33 votes, became a Won't, because 20 days would eat half the release.

Good at fitting a release to a date and saying no out loud. Weak at ordering anything inside a bucket. Full walkthrough: MoSCoW prioritization.

RICE: a strict order

RICE multiplies reach, impact and confidence, then divides by effort. With votes as reach, watering intervals scored 256, far ahead of the widget at 81.6, sync at 75.2, plant ID at 49.5 and dark mode at 38. Sync came in below the widget, because the formula knows nothing about the promise that made it a Must.

Good at turning a long list into one ranking. Weak at commitments, dependencies and anything the four numbers can't hold. Full walkthrough with a calculator: RICE prioritization.

Kano model: what kind of want

The Kano model asks users how they would feel with a feature and without it, and sorts the answers into must-be, one-dimensional, attractive and indifferent. In a survey of 120 voters, reminders that fire once and dark mode came out must-be, watering intervals one-dimensional, the widget and plant ID attractive, and CSV export indifferent.

Good at spotting a missing basic that a score underrates, like dark mode. Weak at cost, which it ignores. Full walkthrough with an evaluator: Kano model.

Impact effort matrix: a quick first sort

Two rough scores, impact and effort, put every request into one of four boxes. With votes as impact and lines at 30 votes and five days, the quick wins were the widget, fertilizer reminders and dark mode, ten days of work in total. Watering intervals, sync and plant ID were big bets, and the Apple Watch app was the only money pit.

Good for a first pass in an hour. Weak wherever effort is underestimated, which is most places. Full walkthrough with a template: impact effort matrix.

Votes from paying users: demand weighted by revenue

Raw votes count every voice the same. For a business, the people who pay are worth hearing twice, so the fifth method counts what the voters for each request pay. Plant Diary Pro costs $2.99 a month. Adding up the subscriptions of everyone who voted gives each request a revenue figure:

Request Votes Paying voters Their revenue per month
Sync across devices4731$92.69
Watering intervals6420$59.80
Share with a partner1815$44.85
Fertilizer reminders4112$35.88
Home screen widget519$26.91
Plant ID by photo338$23.92
CSV export97$20.93
Dark mode386$17.94
Apple Watch app225$14.95
Plant photo diary194$11.96
German translation71$2.99

The order changes a lot. Sync jumps to first place, because two out of three people who asked for it pay, mostly people with an iPhone and an iPad. Sharing with a partner climbs from ninth by votes to third: households pay for one subscription and want to use it together. Dark mode falls from fifth to eighth, since most of its voters are on the free plan.

Watch the caveats. Free users today are paying users next year, so revenue alone starves growth. One large customer can outweigh a hundred small ones. And a new paid feature can't show demand from customers you don't have yet. Use revenue as a tiebreaker or as a second column next to votes, not as the only number.

Five frameworks, five answers

Here are the five requests that appear in almost every guide, side by side. The paid votes column shows each request's revenue figure and its rank among the eleven requests.

Request MoSCoW RICE Kano Impact effort Paid votes
Watering intervalsMust256 (1st)One-dimensionalBig bet$59.80 (2nd)
Home screen widgetShould81.6 (2nd)AttractiveQuick win$26.91 (5th)
Sync across devicesMust75.2 (3rd)Not surveyedBig bet$92.69 (1st)
Dark modeShould38 (5th)Must-beQuick win$17.94 (8th)
Plant ID by photoWon't49.5 (4th)AttractiveBig bet$23.92 (6th)

Which one to use when

The picker at the top of this guide, in words:

Combining frameworks

The frameworks answer different questions, so pairs work well:

  1. MoSCoW, then RICE. MoSCoW decides what must ship. RICE orders everything below the Musts.
  2. Impact effort, then Kano. The matrix sorts the whole list in an hour. A Kano survey settles the few requests near the lines.
  3. Votes plus revenue. Keep both columns side by side, and act when they agree. When they disagree, like sync and dark mode here, say which one wins and why.

Collect votes and revenue in one place

Every framework above starts from the same input: a list of requests with an honest measure of demand. Votes give you that measure without a meeting, because users post ideas and vote on each other's, and the count is there when you sit down to prioritize. A feature request template makes sure each request also arrives with the problem behind it and a way to reply.

WishKit collects those votes on a feedback board for websites and SaaS products, and inside iOS apps with a native SDK. If your iOS app tells WishKit what each user pays, with WishKit.updateUser(payment:), the list of upvoters on every request shows each voter's monthly revenue next to their name.

Frequently asked questions

What is feature prioritization?

Deciding which feature requests to build first when there are more good ideas than time. Frameworks like MoSCoW, RICE, the Kano model and the impact effort matrix turn that decision into a repeatable process.

What is the best feature prioritization framework?

None fits every list. MoSCoW suits a fixed release date, RICE a strict ranking, Kano a question about what users expect, an impact effort matrix a quick first sort, and votes from paying users a business where revenue decides.

How do you prioritize feature requests?

Collect them in one place with votes, estimate the effort of each in days, and apply one framework that fits your situation. Then check the result against commitments, dependencies and what paying customers ask for.

What is the difference between MoSCoW and RICE?

MoSCoW sorts requests into four buckets for a release with a fixed date. RICE gives every request a score from reach, impact, confidence and effort and ranks them. Many teams use MoSCoW for what must ship and RICE to order the rest.

How do you weight feature requests by revenue?

Add up what the people who voted for each request pay per month, and compare that figure with the raw vote count. Use it as a second column or a tiebreaker, since revenue alone ignores free users who might pay later.

Can you combine prioritization frameworks?

Yes, and most teams do. Common pairs are MoSCoW with RICE, an impact effort matrix with a Kano survey for the close calls, and vote counts with revenue side by side.

Ready to build the features users pay for?

Setup takes less than a minute. Free plan included, no credit card required.

Try WishKit for free