Auto-shifting dates for dependent tasks

Available on Asana Starter, Advanced, Enterprise, and Enterprise+ tiers, as well as legacy tiers Premium, Business, and Legacy Enterprise.

Visit our pricing page for more information.

When changing the due dates of tasks with dependencies results in a due date overlap, this feature can auto-shift the due dates based on your preferences. Auto-shifting dates for dependent tasks is now available in list, board, calendar, timeline, and Gantt view.

There are three different dependency date shifting options to choose from in the project’s list, board, calendar, timeline, and Gantt view. To access the different date shifting options, click the 3-dot icon in the top right corner of your project and select Dependency management options.

You can choose to maintain the buffer between dependent tasks, consume the buffer or ignore the buffer. Consuming the buffer is the default setting for dependency date shifting.

Related articles

Requirements for auto-shifting dates

For auto-shifting to work, the following criteria must be met:

  • A task has been marked as dependent on another
  • The precedent and dependent tasks have due dates set. This also works when a start date and a due date are set.
  • The date change has been made on timeline, Gantt, or by clicking on the due date and then clicking the Update button in the task pane or list/board views.
  • Tasks are not marked as complete. Auto-shifting dates will not impact completed tasks.
  • For consume buffer only: the change in any of the tasks causes an overlap in the dates.

This functionality does not apply to subtasks by default. You can mark subtasks as dependent on the parent task if you want to use auto-shifting for subtasks.

Using the auto-shifting dates feature in list view

You can now use auto-shifting while updating dates in list view.

If the consume buffer setting is enabled, a change on a precedent task’s date will update the date of the dependent task when the change causes an overlap and a change on a dependent task’s date will update the date of the precedent task when the change causes an overlap.

Any change to the start date as a result of the auto-shifting dependency dates feature also changes the due date of that same task (and vice-versa).

The auto-shifting dependency dates feature automatically skips weekends.

In addition, it works for changes that move the dates backward or forward. When a precedent task’s date is pushed forward in the future, this precedent task can move dependent tasks forward as well. However, when "consume buffer" is enabled, if the date of a dependent task is postponed, it will not affect the precedent tasks since there will be no overlap.

Similarly, when a dependent's date is pushed back in the past, this dependent task can also push a precedent task back. However, when "consume buffer" is enabled, if the date of a precedent task is moved back, it will not affect the dependent tasks since there will be no overlap.

using auto-shifting

 

  1. Click on the due date that you wish to change to open the date picker.
  2. Click on Update to review dependent tasks.

Reviewing dependent tasks

review
  1. Select your new due date or date range.
  2. A grid with Dependent tasks and New due date will be populated.
  3. Click Save to change the due date and auto-shift the due dates of depending tasks.

Auto-shifting due dates in action

adjusted dates


Once you’ve clicked Save you’ll notice that the due dates of the dependent tasks automatically change so that there is no overlap.

Using the auto-shifting dates feature in board and calendar view

screenshot_title

  1. In either board or calendar view you will need to click on the task to open the task details pane.
  2. Click on the due date to open the date picker.
  3. Click on Update to review dependent tasks.
  4. Select your new due date.
  5. A grid with Dependent tasks and New due date will be populated.
  6. Click Save to save your new due date and auto-shift the dates of any dependent tasks.

Click here to see examples of auto-shifting in action in timeline view.

Dependency management options

There are three different dependency date shifting options to choose from.

screenshot_title

To access the different date shifting options, click the 3-dot icon in the top right corner of your project’s timeline view, then select Dependency management options. The options are explained further below.

Note the requirements for auto-shifting due dates to work properly are as follows:

  • A task has been marked as dependent on another, either blocking or blocked by another task.
  • The blocking and blocked tasks both have due dates set. Start dates do not interfere with this process.
  • Tasks are not marked as complete. Changes in dates will not have an impact on completed tasks

Maintain due date buffer with lag shifting

Select Maintain buffer to maintain the amount of time between dependent tasks. This process is known as lag shifting.

Maintain buffer

In maintaining the buffer between dependent tasks, the due date of each task will move relative to the shifted task's due date while preserving the amount of time between them.

Consider the 3 tasks in the screenshot example provided.

  1. Choose party venue, due on June 1.
  2. Organize catering, due on June 3.
  3. Send out invites, due on June 10.

Choose party venue is blocking Organize catering, which itself is blocking Send out invites.

screenshot_title

With lag shifting, moving the due date of Organize catering back by one week to June 8 means that the due dates of both Choose party venue and Send out invites also shift by one week to preserve the gap. The 2-day gap between Choose party venue and Organize catering remains, though the due dates have changed. The 7-day gap is also maintained between Organize catering and Send out invites.

In the second phase of the example, moving Organize catering's due date forward in time from June 10 to June 9 has the same effect - the due dates of both Choose party venue and Send out invites move by 1 day to maintain their respective gaps.

Consume due date buffer with slack shifting

Select Consume buffer to consume the amount of time between dependent tasks unless there's a conflict. This is also known as slack shifting.

Consume buffer
In consuming the buffer between two dependent tasks, the due date of one task will not move relative to the shifted task’s due date.

Consider the 3 tasks in the screenshot example provided.

  1. Choose party venue, due on June 1.
  2. Organize catering, due on June 3.
  3. Send out invites, due on June 10.

Choose party venue is blocking Organize catering, which itself is blocking Send out invites.

screenshot_title


With slack shifting, moving the due date of Organize catering to June 7 will have no impact on either of the other tasks, since it does not cause a due date conflict. Similarly, the buffer between Organize catering and Send out invites is not maintained - the 7-day gap becomes a 3-day gap.

In the second phase of the example, Organize catering is still blocked by Choose party venue. Moving the due date of Organize catering forward in time to May 31 will result in a dependency due date conflict. Therefore, the due date of Choose party venue must move forward in time to accommodate this. The due date of Choose party venue moves forward one day in order to respect the dependency, and receives a new due date of May 30.

Ignore due date buffer

Select None to ignore the amount of time between dependent tasks, even if there's a conflict. With this option, the buffer will neither be maintained or consumed. Conflicts between due dates of dependents tasks will also not be considered.

None

Consider the 3 tasks in the screenshot example provided.

  1. Choose party venue, due on June 1.
  2. Organize catering, due on June 3.
  3. Send out invites, due on June 10.

Choose party venue is blocking Organize catering, which itself is blocking Send out invites.

screenshot_title


With None selected, the amount of time between due dates is ignored entirely. In the example, the due dates change and do not respect the dependencies between the tasks. Blocked tasks can still be slated to be completed before tasks that they are dependent on.

Was this article helpful?

Thanks for your feedback