But that doesn’t stop developers from trying to cram as many features into their apps as possible.
They believe that the more things an app can do, the more robust and attractive it is to users.
That sounds great on paper but can be detrimental in practice.
See, an app with dozens of features will quickly overwhelm users and cause them to churn. Not to mention it takes you more time, money, and effort to develop a feature-laden app.
When it comes to apps, less is more is the more appropriate paradigm.
And you can achieve that through feature prioritization. Here’s how to do it.
Table of Contents
Have a clear goal for your app
Prioritizing features is about retaining only the functionality that will contribute to your app’s core purpose.
Thus, it only makes sense to be clear about your app goal first before doing anything else.
Your app goal will be your guiding light throughout the development. It will influence your overall strategy, which, in turn, will impact the features you include.
You can also view app goals as your starting point, which you’ll eventually break down into strategy, and finally into features. Take a look at the business model map of Uber:
First, they started with the big goal of making transportation as reliable as running water. Then, developers devised high-level strategies to achieve that, such as a magical user experience.
Finally, they developed features to realize that strategy, like the reputation system and five-minute max wait time.
The best way to figure out your app goal is through thorough research.
The most important part of app goal setting is to define the problem you wish to solve.
That’s because if there’s no problem to solve, no one will want to use your app, and it will cease to exist.
Defining your problem statement will naturally lead to your app’s unique selling proposition (USP)—the unique solution you can offer to solve the problem.
For example, the idea for Airbnb came from two problems the founders encountered—rent was expensive, and it was difficult to find cheap accommodation in the city.
And so they devised a platform that could connect people with extra space to those looking for an affordable place to stay. Airbnb’s USP was born.
From there, it was easy to develop the core features that the founders needed to test their idea.
For instance, they kept the design site minimal and limited the app to properties near high-profile events.
As you can see, having a clear purpose and USP gave the Airbnb founders clarity in creating their minimum viable product (MVP) and, eventually, the final app.
Researching this might take a lot of time and effort, but the benefits you’ll get are well worth it.
Consider your resources
Often, your available resources will be the top factor influencing the features you need to include. More resources mean more functionality.
Time is probably the most important resource to consider, as it’s often the only one you can’t get more of. When an app needs to launch in six months, you must work with that timetable.
Of course, the more features you add, the longer this would take.
For example, a simple app with no online features only needs 2–3 months to develop. But an advanced project such as Uber or Instagram would take six months or more.
Speaking of Instagram, here are the approximate development times of each of its components:
Development time also influences cost, which is another factor. A limited budget means you can’t hire a large team or specialists, which means an advanced app is out of the picture.
You should also know that half of your development expenses will go towards coding and QA. Thus, the more features your developers need to implement, the higher the price tag.
Lastly, the skills and experience of your development team are also a resource few consider. The more expertise your developers have, the faster they can implement your project.
Moreover, they can also deliver higher-quality work.
Luckily, you can easily remedy this by sourcing work to a dedicated team agency like DECODE. Our pool of 70+ experts means you can always access the skills needed for your app project.
Group features into themes
Trying to prioritize dozens of features at once can be daunting and overwhelming. One good approach is to categorize them into themes.
Themes are groups based on particular goals or aspects of your app. For example, one theme might be monetization, while another is communication.
You then think of features that fit these themes.
The benefit of this approach is that it tells you whether your app features are balanced or not at a glance.
For example, you might find that you have plenty of functionality for monetization but very few for reporting.
Your app will end up delighting users in one area but disappointing them in another.
Unfortunately, this would still result in a bad experience. Worse, you’ll waste time overworking certain sections of your app.
One popular approach is to use the three categories pictured above, collectively called the feature buckets prioritization method.
The benefit of this method is that it tackles all important aspects of your app.
For instance, the metric movers bucket deals with features that help move your app’s key performance indicators (KPIs), such as monthly average users (MAU) and customer lifetime value (CLTV).
On the other hand, the delights bucket focuses more on the user’s happiness and satisfaction.
Finally, the customer requests bucket includes features your users want but which haven’t been implemented yet.
However, feel free to use any theme that fits well with your project or goal. That’s the advantage of this approach—it’s quite flexible.
Write user stories
Sometimes, the best way to prioritize features is to look at them from the user’s perspective. User stories are a great way to do this.
User stories are the actions people take in your app to accomplish specific goals under certain circumstances. From there, you can devise subtasks to help users finish their stories.
Notice how the user story includes a goal (transfer money) and a circumstance (I am a regular fintech app user).
It’s also good to state the motivation behind the goal (easily manage my finances and pay my bills on time).
The example above then stated the acceptance criteria or the exact steps required to accomplish the story.
Once you have the user stories for your app, you can lay them down in a story map. You then think of all the features you’ll need for a particular story.
If possible, you should also break down features further until you can’t anymore.
The biggest benefit of writing user stories is prioritizing features based on what gives your audience value, or best solves their biggest problems.
Thus, there’s a higher chance that they would be happy with your choices.
Story mapping is just one of the many prioritization frameworks at your disposal. Let’s look at several more in the next section.
Use common prioritization frameworks
Prioritization frameworks are methods that can make picking core features much easier.
One approach is the feature priority matrix. This is where you categorize features into one of four groups based on three metrics—impact (or value), effort, and risk.
The must-have category contains your core features—high-impact, high-priority functionalities that require minimal effort to implement.
Next are the nice-to-have and can-be-done groups, which are included because they’re either low effort or high impact. However, they’re best left for later versions of the app.
Finally, features in the waste of time category take too much effort while providing little value. It would be best if you left them out entirely.
You’ll sometimes see the feature priority matrix discussed by another name—the MoSCoW Matrix.
The two work almost identically, except that MoSCoW doesn’t specify any selection criteria:
Another prioritization framework is the Kano model. Like story mapping, it’s a user-centric method where you decide on the priority of a feature based on how users will react to it.
You start the Kano model by asking people how excited they are about a feature, primarily through questionnaires and interviews. You then categorize them into one of three groups:
Must-haves are the features people expect your app to have. They are the bare minimum, so people aren’t excited about them.
Nevertheless, their absence would be a dealbreaker for most users.
Next are performance features. These are not core features, yet they can add user value. Most people use them when deciding which app to pick.
Excitement features are those people don’t expect but generate high levels of satisfaction proportionate to your effort.
Even with the right prioritization method, deciding which features to include can still be difficult if you don’t have the right metrics to judge them.
This is where a custom priority scorecard can come in handy.
A scorecard lists the parameters for evaluating a feature. Most of these are based on KPIs like customer engagement or revenue.
Each parameter is weighted and then added together to calculate a priority score. The higher the score, the higher the priority of that feature.
Here’s a sample approach by project manager Daniel Elizalde:
Roadmap prioritization is a process for segregating and ranking user feedback based on cost and value.
Your goal is to pick and implement the most valuable suggestions without emotion or bias.
Yes, it requires more effort, but it’s well worth it. Analyzing feedback gives you the best insights on which features you need to add, improve, or remove.
That makes prioritization incredibly easy and trivial.
Still can’t decide?
Even with the tips in this article, it can still be difficult to prioritize the features you should include in your app.
And that’s normal! Maybe you have a ton of great features, and you can’t decide which ones to cut.
In these cases, it’s useful to have an experienced and unbiased third party to help you out.
And with a long list of successful app projects under our belt, we believe DECODE can be that helping hand.
So, if you’re struggling with prioritizing your app features—or any problem at all—give us a call! We’ll be happy to assist.
Marko started DECODE with co-founders Peter and Mario, and a decade later, leads the company as CEO. His role is now almost entirely centred around business strategy, though his extensive background in software engineering makes sure he sees the future of the company from every angle.
A graduate of the University of Zagreb’s Faculty of Electrical Engineering and Computing, he’s fascinated by the architecture of mobile apps and reactive programming, and a strong believer in life-long learning. Always ready for action. Or an impromptu skiing trip.