MoSCoW prioritization

Introduction to MosCoW Prioritization

Lucid Content Team

Reading time: about 6 min


  • IT and Engineering
  • Operations

Ranking items in order of priority when there’s a group involved is no easy feat. If you’ve ever thrown a birthday party with a group of friends, you know this: One person wants to spend all the money on decorations, another person thinks the cake should be the top priority, and another person insists that your funds should go toward the perfect venue.

So imagine how difficult it is to get a team to agree on the right prioritization for initiatives in a release. That’s where MoSCoW prioritization comes in.

What is the MoSCoW method?

MoSCoW analysis was invented by Dai Clegg of Oracle UK consulting, who developed the technique to determine prioritization within projects that had severe time constraints. 

This is an especially important technique to use in agile methodology, which places the most value on items that carry the highest business value. The software features that you identify to be more valuable have the highest probability of being developed and implemented.

What are the requirements for MoSCoW prioritization?

The MoSCoW prioritization method has a straightforward set of requirements used to determine the importance of initiatives. The MoSCoW requirements help teams take a strategic, orderly approach to prioritization. This system cuts down on wasted time, arguments, and misdirection. It also omits as much bias as possible from the process so that everyone involved can take an objective view of the requirements at hand.

The requirements for prioritization fit into the four following categories.

Must have

These initiatives or features are absolutely critical to the project. Without them, the delivery will be a failure. 

Should have

These aspects of the project are also critical, but may not be as time-sensitive as the “must have” bucket.

Could have

These features are nice to have and would make a great addition to the project, but are not critical. If there’s time, consider adding these in.

Won’t have

These features really aren’t worth the investment of time, energy, or budget. They could be considered at a later time, but aren’t beneficial at this point.

How to run a MoSCoW analysis

Now that you know the basics of MoSCoW prioritization, it’s time to try your hand at the MoSCoW technique with your own team using the following steps.

1. Identify and gather your key stakeholders

Imagine how messy things would get if everyone in your organization had a say in every aspect of a project. That’s why the first step of the MoSCoW method is to identify and gather both key stakeholders and the team who is directly responsible for developing the project at hand. You may wish to have representatives from teams across the organization or keep it lean.

2. Determine arbitration

Disagreements on prioritization may arise. It’s important to determine how to settle disputes before MoSCoW prioritization begins. We recommend jousting. (Just kidding.) 

If armored horses are unavailable, you may choose to have participants vote or determine the business value of each feature or initiative and then proceed with the feature with the highest value. This article will give a list of questions to ask everyone involved—these questions can provide a compass to guide your team throughout the process and help both avoid arguments and resolve any difficulties that do arise.

3. Divide resources

Obviously, the majority of resources should be devoted to the most critical initiative. But how the resources are divided should be up to your team. 

Deciding the number of resources allocated to each category can help determine which “bucket” each initiative should go in. The “will not have” category will obviously not have any resources allocated to it. It’s up to your team and other key stakeholders to determine how the budget will be divided among the three other buckets.

4. Solidify timeframe

The tighter the timeframe, the fewer initiatives can fit into the “must have” category. Identifying the timeframe ahead of time helps bring a bit of reality to the process. Refer to the team actually developing the product for the most realistic view of development.

5. List it out

If you have a list of features or initiatives listed in your backlog, this is the time to bring it out. If not, you may need to refer to the scope of the project and list out the requirements for the project at hand. 

Either way, it’s important to have a complete list of the initiatives you’ll be prioritizing so that the process is complete and orderly. Such a list will give anyone across the organization access to your prioritization, encourage transparency, and keep a cloud-based copy available.

Develop a strong product backlog to keep track of features and initiatives you want to launch in the future.

See how to make one

6. Start prioritizing

During the prioritization process, your team will need to ask questions that accompany each category to better determine where each initiative belongs. Go down the list in a systematic manner and ask the following questions for each feature or initiative. It’s likely that the most friction will exist between the “should have” and “must have” buckets. 

If there’s no consensus at first, continue going down the list to identify the categories for other features and then, at the end of the prioritization, determine the appropriate categories for the features that weren’t immediately obvious at the beginning.

Must have:

  • What happens if we release the product without this initiative?
  • Is there any simpler way to complete this?
  • Will this product work without this feature?

Should have:

  • How much value does this feature add to the project?
  • Can this wait until the next release?

Could have:

  • Is this necessary to the core function of the project?
  • How much impact will this have on the project if left out?

Will not have:

  • Does this have zero or little importance to the project at this time?
  • Is there a chance this could have priority in the future?

Once the features and initiatives have been divided into these prioritization categories, your team will have a clear idea of where to focus their energies. Take a look at the MoSCoW templates below for a visual way to examine and prioritize your initiatives.

basic MoSCoW prioritization
Basic MoSCoW Prioritization (Click on image to modify online)


example MoSCoW prioritization for project/timebox
Example MoSCoW Prioritization (For Project/Timebox) (Click on image to modify online)

How the MoSCoW method will help your team

Because we’re human, it’s easy to become partial to certain aspects of a project. The MoSCoW method helps keep partiality to a minimum.

Project managers can use it to gain an objective, orderly approach to prioritization, which is especially important because every release in the agile method of development has a very specific timeframe and budget. Plus, wrangling the desires of stakeholders from various departments across the organization is difficult: You’ll want to address everyone’s wants while also conforming to very real-time constraints. 

MoSCoW prioritization omits the majority of bias and allows team members and stakeholders with disparate desires to come together as a united front. 

It also allows those working directly on the project to have a clear understanding of why they’re working on certain features or initiatives during the next release: They can have a visual list of why what they’re working on is so important. If certain features from the “must have” category are fully finished within the timeframe, there’s also no question about what the team should be doing next—that’s already been identified in the “should have” category.

MoSCoW method keeps the arguments to a minimum and helps develop products that deliver the highest business value faster.

Consider critical-to-quality trees as another way to prioritize features based on what your customers need.

See how to make one

Receive product tips and expert advice straight to your inbox.

Subscribe to our newsletter

Get started

  • Pricing
  • Individual
  • Team
  • Enterprise
  • Contact sales

© 2023 Lucid Software Inc.