The Charcuterie Framework for Roadmap Planning
Instead of stack ranking your priorities, balance your investments across goals.
The first time I planned Asana’s roadmap I stack ranked all of the things people wanted us to do, sorting by impact. We filled our quarter1 with building new features.
The second time, I did the same thing. The designers pushed back, saying it would be good ROI (return on investment) to iterate on the features we’d launched. So, I worked with engineering to estimate the cost of those improvements and re-sorted the list by impact/cost, but new features still ended up on top. Another roadmap building brand new features.
The third time, same result. None of the proposals to improve existing features made the cut. This time, the CEO pulled me aside and suggested that maybe something was wrong. I agreed, but what?
I reached out to the head of product at other startups for advice. The startup ecosystem is surprisingly friendly, and people were willing to share how they planned their roadmaps. I learned that the best product leaders treated their product roadmap like a portfolio of investments. Instead of stack ranking work, they looked at their entire roadmap and made sure they were investing the right amount in the right things.
I went back to our roadmap and looked at it from a portfolio perspective. Zero was clearly the wrong size investment in improving existing functionality. Twenty percent sounded better. And while I was thinking about it, ten percent improving tech debt made sense too. I chatted with the team and we felt good devoting the remaining 70% to new functionality. The new roadmap was a hit, and a designer mutiny was avoided.
This portfolio approach became my top piece of advice for PMs. But it was confusing because… what exactly is a portfolio? I tried to think of a more relatable analogy, and I guess I was hungry, because the Charcuterie Framework was born.
The Charcuterie Framework
When you make a charcuterie board, you don’t stack rank all of your favorite foods and pick the top ten. If you did that, you might end up with ten types of salami and no cheese or fruit.
Instead, you have a rough idea of how you want to balance your board, maybe 50% meat, 25% cheese, 25% fruit. And then you pick your favorites from within each category. You might even look at other types of balance: a few pricy items, not too much spicy stuff. You end up with a much better charcuterie board than if you’d tried to stack rank fruits against cheeses. That would be like trying to compare apples and oranges!2
The same idea applies to product roadmaps.
Here’s how you do it:
Figure out your slices
Determine the balance
Prioritize work within slices
Figure out your slices
First, you’ll pick which slices you want to look at, just like we looked at type (meat/cheese/fruit), spiciness, and price for our charcuterie.
Primary slices
Primary slices drive prioritization decisions (eg. “which projects would best help self-service customers?”). They provide a goal-oriented way of looking at potential projects. They often correspond to the way that product teams are organized.
Here are some examples:
Goals: eg. user growth, user retention, and revenue growth
User type: eg. enterprise sales customers vs. self-service customers, or advertisers vs. consumers.
Product Pillar: eg. Roblox’s: Rendering Fidelity, Identity, Building a Robust Economy, Building a Robust Economy, and Shared Fabric: Communication and Civility.
Secondary slices
The secondary slices are additional lenses you can use to check if your roadmap is balanced, after you have a first draft.
Type of work: eg. new functionality, improving existing features, technical debt
Product: Do you have multiple products or platforms that you’ll need to invest in?
Riskiness: eg. Core Biz, Related Projects, Blue Sky Big Bets (Google’s 70/20/10 model)
Marketing impact: Do you have enough newsworthy launches?
Determine the balance
Next, for each slice consider how you want to balance your investment.
Do you care about user growth and revenue equally? Maybe 80/20? How do the needs of enterprise sales compare in priority to self-service customers? 70/30? Write down your gut feeling.
The magical thing here is that when you talk about priority at this level, it’s remarkably easy to get everyone to agree. Everyone at Asana knew we shouldn’t invest zero in improving our existing functionality, and no one thought it should be more than half.
The rare occasions where there’s major disagreement, it’s usually because you’re dealing with an unresolved strategic question.
At Asana we once had to rewrite our entire codebase onto a new architecture in order to make the the site faster. We made the tricky strategic decision to invest 50% in the rewrite, and 50% in all other product work. Everyone wished we could ship product improvements faster, but we made the call that performance was more important.
Prioritize work within slices
Now that you’ve separated your apples from your oranges, you can compare within each group. What’s are the highest impact features for improving monetization? What about the most important technical debt investments?
You can even repeat the charcuterie framework within slices. What’s top priority for user growth? Maybe you’ll want to split it 50/50 between improving the onboarding experience and adding viral growth loops. The best way to improve onboarding? Maybe 70% improving usability and 30% in-product training. Charcuterie all the way down!
In closing
Prioritizing is hard. When you find yourself stuck choosing between two options, zoom out and think about how you want to balance your investments overall.
If this post inspires you to make a charcuterie board, let me know! And ask any question in the comments below!
I don’t know why I think this joke is so funny. I’m sorry.
Thanks for sharing Jackie.
Very interesting approach -- would we be able to share a few examples to help drive this home?
I'm trying to replicate the framework, but having some issues with all the multiple slicing options.
Thanks for sharing Jackie.
Very interesting approach -- would we be able to share a few examples to help drive this home?
I'm trying to replicate the framework, but having some issues with all the multiple slicing options.