Drawing of Stakeholder map

Microsoft Project, Project planning, Templates and Advice

  • Concise, focused guide that cuts through the clutter
  • Step-by-step instructions for creating a project plan in under a day
  • Master essential skills like work breakdowns and task sequencing
  • Real-world troubleshooting for 20 common scheduling challenges
  • Rapidly get up to speed if you're new to Microsoft Project
  • Includes glossary, support resources, and sample plans
The cover of the book 'Essential Microsoft Project: The 20% You Need to Know'

Project Constraints

by | reviewed 30/05/2024
A screenshot of a Microsoft Project plan showing all the constraint types that you can put on a task, with a description
A Project Plan showing all of the Task Constraint Types available in Microsoft Project along with a description of each.

What is a Microsoft Project Scheduling Constraint?

In Microsoft Project constraints can be used to create a link between a task and a particular date. By choosing a Constraint Type you can set how Microsoft Project constrains the start or finish dates of a given task. stakeholdermap.com
By default all tasks are created with the Constraint type 'As Soon As Possible'. This allows Microsoft Project to schedule a task on the basis of its duration, resource(s) and dependencies, rather than against a particular date.

What are the Constraints types in Microsoft Project?

There are eight constraint types in Microsoft Project:
  1. As Soon As Possible (ASAP)
    • Flexibility: Flexible
    • Description: Default for projects scheduled from start date. Starts ASAP, considering dependencies.
  2. As Late As Possible (ALAP)
    • Flexibility: Flexible
    • Description: Default for projects scheduled from finish date. Tasks start as late as possible without delaying others.
  3. Finish No Earlier Than (FNET)
    • Flexibility: Moderately flexible
    • Description: Can't finish earlier than a specified date, but it can finish any time after.
  4. Finish No Later Than (FNLT)
    • Flexibility: Moderately flexible
    • Description: Can't finish later than a specified date, but it can finish any time before.
  5. Must Finish On (MFO)
    • Flexibility: Inflexible
    • Description: Task must finish on a specific date.
  6. Must Start On (MSO)
    • Flexibility: Inflexible
    • Description: Task must start on a specific date.
  7. Start No Earlier Than (SNET)
    • Flexibility: Moderately flexible
    • Description: Task can't start earlier than a specified date, but it can start any time after.
  8. Start No Later Than (SNLT)
    • Flexibility: Moderately flexible
    • Description: Can't start later than a specified date, but it can start any time before.
How to create project constraints

Why would you set a Constraint?

Sometimes you need to prevent Microsoft Project from rescheduling a task away from a key date. For example, imagine you are managing the delivery of a conference. The date of the conference is likely to have been booked for months and is probably immovable. In this instance you might set a ‘Must start on’ project constraint for the date of the conference.

A screenshot of a project plan showing the Task Information dialog box with a Constraint type Must Start on set
A screenshot of a project plan showing the Task Information dialog box with a constraint type 'Must Start On' set

Assuming ‘Conference day’ has other tasks linked to it, MS Project will warn you that a constraint might cause a future scheduling conflict. That is fine because if one of the tasks linked to the Conference day takes longer than planned then we need to know if it will conflict with the Conference start date.

Planning Wizard dialog box showing a warning that setting a Must Start On constraint could result in a scheduling conflict either now or later.
Planning Wizard dialog box showing a warning that setting a Must Start On constraint could result in a scheduling conflict either now or later.

Planning Wizard constraint warning. Text and options

You set a Must Start On constraint on the task 'Task 2'. This could result in a scheduling conflict either now or later because this task has at least one other task linked to it.

You can:

  • Cancel. No constraint will be set on 'Task 2'.
  • Continue, but avoid the conflict by using a Start No Earlier Than constraint instead.
  • Continue. A Must Start On constraint will be set.

How Microsoft Project warns you if a constraint will create a scheduling conflict

Lets say that Arranging the AV equipment was planned to take 2 days, but we find that actually it will take 6 days. If we increase the duration to 6 days Microsoft Project will warn us that there is a scheduling conflict (see below).

Planning Wizard dialog box warning that an action will cause a scheduling conflict
Planning Wizard dialog box warning that an action will cause a scheduling conflict

Planning Wizard scheduling conflict warning. Text and options.

This action will cause a scheduling conflict. Task 14 of 'constraints-in-microsoft-project.mpp' has a task constraint or is linked to a task that cannot move, and as a result the constraint or the link cannot be set.

You can:

  • Cancel. Avoid the scheduling conflict.
  • Continue. Allow the scheduling conflict.

So Project Constraints can be useful and have a valid part to play in project planning. However, they can also be created by mistake with dangerous knock on effects. In part 2 see how accidentally setting constraints can impact your project plan.

What does a Task Constraint look like?

You can tell if a task has a constraint by checking the Indicator column in the task table. This is usually visible, but if not click on the Task Name column and select Insert Column. Then select Indicators from the dropdown.

To see more details you can add the Constraint Type and Constraint Date columns to your task table. Screenshot of a Gantt Chart task table view in Microsoft Project. It shows a table with constraint icons shown in the Indicators column and with the Task Name, Constraint Type and Constraint Date also shown
A Gantt chart showing how you can tell if a constraint has been set against a task. By default, a calendar icon in the Indicator column shows if a constraint is present. To see more add the Constraint Type column and Constraint Date column to you

You can also see the Constraint Date and Type by hovering over the Constraint icon in the Indicators field. A tooltip will appear reading 'This task has a [constraint type] constraint on [date].'
A screenshot of Microsoft Project with the hover tool-tip showing the Constraint type and date
To see the Constraint type and date hover over the constraint icon in the Indicators column.

Project Constraints part 2 - common mistakes.

Microsoft Project can feel daunting to learn, but you only need to know the essentials to be amazingly effective! Get up to speed in less than a day with my book Essential Microsoft Project.
Written by the founder of stakeholdermap.com
  • Concise, focused guide that cuts through the clutter
  • Step-by-step instructions for creating a project plan in under a day
  • Master essential skills like work breakdowns and task sequencing
  • Real-world troubleshooting for 20 common scheduling challenges
  • Rapidly get up to speed if you're new to Microsoft Project
  • Includes glossary, support resources, and sample plans
The cover of the book 'Essential Microsoft Project: The 20% You Need to Know'

Read more guides on using Microsoft Project