RICE Scoring: an economic model
A model to justify RICE scoring helps us think carefully about what numbers to plug in and what exactly we’re trading off
The RICE method of prioritizing projects is to compute, from estimates of Reach, Impact, Confidence, and Effort:
Reach x Impact x Confidence / Effort
And then pick the tasks with the highest RICE scores until the available Effort is exhausted.
You may have thought it is weird that Effort enters into what looks like the benefit of the task. Shouldn’t effort just be part of your constraint — not your payoff? Right? We supply effort inelastically because we are good, little worker bees and exceptional corporate citizens — of course.
In other words, why isn’t the algorithm: sort tasks by Reach x Impact x Confidence and then allocate effort until the available effort runs out?
So, let’s walk through a little economic model that shows why RICE scoring makes sense. Effort actually isn’t in the utility calculation. It’s just a convenient way to solve the allocation problem. Along the way, we’re also going to connect RICE scores to economic primitives.
Consider the following time allocation problem across a set of discrete tasks:
We then make the following functional form assumption: E[U(R,I)] = RIC, which gives us the binary linear programming problem:
Even though this is an integer programming problem, which is hard in general [one of Karp’s 21 NP-complete problems], this one is easy.
Make a change of variables v(j) = E(j)d(j).
What do you know? The objective function coefficients are the RICE(j) score.
v(j) shows up symmetrically across j in the one constraint where it enters. So, I always want to increase the v(j) with the highest RICE (if the E(j) is feasible).
So, the solution to the problem is:
Set k = 1 and set B(1) = B.
For k = 1 to number of tasks:
Pick the k’th highest RICE score. Set v(j(k)) = E(j(k)) if E(j(k)) ≤ B(k) else set v(j(k))=0.
Set B(k+1) = B(k) — v(j(k))
Which is just the standard RICE prioritization procedure. So that’s a model that justifies RICE scoring.
Now, why does that matter? Because now we’ve got questions we can ask to improve it! We have a model, so we can start asking things like: is RIC the best approximation of E[U(R,I)]? Or can we think of something better? How should we choose Confidence given that this model justifies the scoring? Clearly, we need to choose Reach and Impact as the best case scenario if Confidence is always down-weighting the score!
This is the power of explicit models: once we understand what economic primitives the scores are supposed to represent, we know how to supply the inputs.
Zach
Connect on https://www.linkedin.com/in/zlflynn/ !
If you want my help with any Experimentation, Analytics, etc. problem, click here.




