{"id":5855,"date":"2022-09-26T08:00:58","date_gmt":"2022-09-26T08:00:58","guid":{"rendered":"https:\/\/www.process.st\/help\/docs\/dynamic-due-dates\/"},"modified":"2026-08-26T05:38:19","modified_gmt":"2026-08-26T05:38:19","slug":"dynamic-due-dates","status":"publish","type":"ht_kb","link":"https:\/\/www.process.st\/help\/docs\/dynamic-due-dates\/","title":{"rendered":"Dynamic Due Dates for Tasks"},"content":{"rendered":"<p>Dynamic due dates allow you to affect a task&#8217;s due date based on varying factors unique to each of your <a href=\"https:\/\/www.process.st\/help\/docs\/what-is-a-checklist\/\">workflow runs.<\/a><\/p>\n<p>Set deadlines for tasks based on when other tasks are completed, the date the workflow was run, or from any <a href=\"https:\/\/www.process.st\/help\/docs\/form-fields\/\">date form fields<\/a> in your workflows.<\/p>\n<p>This lets you link deadlines and tasks together in a really powerful way.<\/p>\n<p>Dynamic due dates also include a <strong>Business Days Handling<\/strong> setting that controls how weekends affect deadlines. Choose from three modes: count all days, skip weekends entirely, or shift weekend due dates to the next business day.<\/p>\n<p><strong><em>Users: To add or edit dynamic due dates, you must be an Administrator or a <a href=\"https:\/\/www.process.st\/help\/docs\/what-is-a-full-member\/\">Builder<\/a> who has been given &#8216;edit&#8217; access by your Administrator.<\/em><\/strong><\/p>\n<h2>Example use cases<\/h2>\n<ul>\n<li>Your project completion date is set for the end of the year and you want to set due dates on tasks leading up to that date, to make sure everything is completed on time (<em>before<\/em> the project completion date)<\/li>\n<li>Your new hire starts this week and you want to make sure all the stages of their orientation and training are completed by the end of their first month (<em>after<\/em> their initial start date)<\/li>\n<li>Your process timings hinge on the date that you start it, so all your tasks have a deadline based on x number of minutes or days <em>after<\/em> your workflow has been run<\/li>\n<\/ul>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-14102\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/dynamic-due-dates.gif\" alt=\"\" width=\"100%\" \/><\/p>\n<h2>Triggers for dynamic due dates<\/h2>\n<p>You can set dynamic due dates based on these five different triggers:<\/p>\n<ul>\n<li>Any <a href=\"https:\/\/www.process.st\/help\/docs\/form-fields\/\">date form fields<\/a><\/li>\n<li>The completion of the previous task (automatically selects the task immediately before the current one)<\/li>\n<li>The completion of a specific task (pick any named task that appears before the current task in the workflow)<\/li>\n<li>The workflow run due date<\/li>\n<li>The workflow run start date<\/li>\n<\/ul>\n<p>These rules automatically adjust the due date of tasks as various actions are completed or details are filled out.<\/p>\n<p>The trigger selector groups options into three categories: <strong>Popular<\/strong> shortcuts (such as the previous task and workflow run dates), <strong>Date fields<\/strong> (all date form fields in the workflow), and <strong>Task checked<\/strong> (a list of every task before the current one, so you can pick a specific task).<\/p>\n<p>You can set dynamic due dates to trigger <em><strong>before<\/strong><\/em> one of these items:<\/p>\n<ul>\n<li>A <a href=\"https:\/\/www.process.st\/help\/docs\/form-fields\/\">date form field<\/a> found in the workflow run<\/li>\n<li>The workflow run due date<\/li>\n<\/ul>\n<p>You can also set dynamic due dates to trigger <em><strong>after<\/strong><\/em> one of these items:<\/p>\n<ul>\n<li>The date the workflow was run<\/li>\n<li>The completion of the previous task<\/li>\n<li>The completion of a specific task<\/li>\n<li>Any <a href=\"https:\/\/www.process.st\/help\/docs\/form-fields\/\">date form field<\/a><\/li>\n<\/ul>\n<h2>Creating dynamic due dates<\/h2>\n<p>First, select the workflow you wish to edit and click <strong>Edit<\/strong> in the top right corner to open the <a href=\"https:\/\/www.process.st\/help\/docs\/editing-templates\/\">workflow editor<\/a>.<\/p>\n<p>Next, select the task you want to add a dynamic due date to, then click &#8220;<strong>Due<\/strong>&#8221; in the center panel. This opens the dynamic due date picker where you can set the trigger, offset, and <strong>Business Days Handling<\/strong> mode for your due date.<\/p>\n<p>In this example, we&#8217;ve selected the due date to be set <strong>1 day after the<\/strong> <strong>previous task is checked off<\/strong>.<\/p>\n<p>Once you&#8217;ve set your dynamic due date, click &#8220;<strong>Save<\/strong>&#8221; to finish and then save changes to your workflow to finalize these changes.<\/p>\n<blockquote>\n<p><em>Note: If you use a <a href=\"https:\/\/www.process.st\/help\/docs\/form-fields\/\">date form field<\/a> with no time selected in your workflow run, the default time for the date field will be 8am PT. You will need to calculate your before\/after rules for Dynamic Due Dates based on this <a href=\"https:\/\/www.process.st\/help\/docs\/time-zones\/\">time zone<\/a>.<\/em><\/p>\n<\/blockquote>\n<h2>Business Days Handling<\/h2>\n<p>The <strong>Business Days Handling<\/strong> dropdown in the due date picker controls how weekends affect the calculated due date. There are three modes:<\/p>\n<ul>\n<li><strong>All Days<\/strong> \u2014 Due dates can fall on any day, including weekends. This is the default.<\/li>\n<li><strong>Shift to Next Business Day<\/strong> \u2014 If a due date falls on a weekend, it moves to the next business day (Monday).<\/li>\n<li><strong>Business Days Only<\/strong> \u2014 Weekends are skipped entirely when counting the offset. For example, \u201c3 days after\u201d counts only business days, so Friday + 3 business days = Wednesday. When this mode is selected, the months input is disabled.<\/li>\n<\/ul>\n<h2>Adding dynamic due dates to multiple tasks<\/h2>\n<p>You can multi-select tasks to enable you to add dynamic due dates to more than one task at a time.<\/p>\n<p><em>Multi-select consecutive tasks<\/em> \u2013 Hold down the &#8216;<strong>Shift<\/strong>&#8216; key (Windows &amp; MacOS) and use your mouse to click on a task at the beginning and end of your task list, and all those tasks will become highlighted.<\/p>\n<p><em>Multi-select separate individual tasks<\/em> \u2013 Use the &#8216;<strong>CTRL<\/strong>&#8216; Key (<strong>CMD<\/strong> in MacOS) to individually select multiple tasks at a time. Hold down the &#8216;CTRL&#8217; key (CMD in MacOS) and use your mouse to click all the tasks you want to select (or un-select).<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-14104\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/multi-task-due-date.gif\" alt=\"\" width=\"100%\" \/><\/p>\n<p>Choose your required dynamic due date settings and click &#8220;<strong>Save<\/strong>&#8220;.<\/p>\n<p>Click &#8220;<strong>Clear selection<\/strong>&#8221; to return to normal view and then &#8220;<strong>Publish<\/strong>&#8221; your workflow to finish.<\/p>\n<h2>Dynamic due date indicator<\/h2>\n<p>Tasks that have dynamic due dates set on them show a <strong>purple clock indicator<\/strong> in the workflow and the editor, for easy identification.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-15824\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/dynamic-due-date-indicator.gif\" alt=\"dynamic due date indicator\" width=\"100%\" \/><\/p>\n<h2>Modifying dynamic due dates<\/h2>\n<p>There are a number of ways to change the dynamic due dates you have set previously.<\/p>\n<h3>When editing a workflow<\/h3>\n<p>Once you have set dynamic due dates in your workflow, you can easily change them in the workflow editor, if needed.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-14105\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/change-due-date.gif\" alt=\"\" width=\"100%\" \/><\/p>\n<p>Click on the task\/s in question, then click the dynamic due date you set previously to open up the control panel. Make your changes and click &#8220;<strong>Save<\/strong>&#8221; to fix the changes. Then publish changes to your workflow when finished.<\/p>\n<h3>On active workflow runs<\/h3>\n<p>You can also overwrite dynamic due dates on active workflow runs, on a task-by-task basis.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-12853\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/ps-override.png\" alt=\"\" width=\"100%\" \/><\/p>\n<p>If you decide to override the due date in this way, it will break the dynamic link between any date fields or the date the workflow was run.<\/p>\n<p>You will see the <strong>purple clock indicator<\/strong> on tasks that have dynamic due dates set even in active workflow runs until the due date has been activated.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-15825\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/dynamic-due-date-workflow-run.gif\" alt=\"dynamic due date workflow run\" width=\"100%\" \/><\/p>\n<h3>From your inbox<\/h3>\n<p>You can also override the due dates for tasks from your <a href=\"https:\/\/www.process.st\/help\/docs\/inbox\/\">Process Street inbox<\/a>, by using the snooze function.<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-12854\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2024\/02\/dynamic-due-dates-snooze.gif\" alt=\"\" width=\"100%\" \/><\/p>\n<p>Hover over the task\/s you&#8217;d like to snooze and you&#8217;ll see a checkbox appear, as shown above. Put a checkmark against all the tasks you&#8217;d like to snooze. When you select a date to snooze these tasks to, this effectively overrides the dynamic due date.<\/p>\n<p>Note that this method also works for snoozing <a href=\"https:\/\/www.process.st\/help\/docs\/approvals\/\">approval<\/a> tasks and whole workflow runs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dynamic due dates allow you to affect a task&#8217;s due date based on varying factors unique to each of your workflow runs. Set deadlines for tasks based on when other tasks are completed, the date the workflow was run, or from any date form fields in your workflows. This lets you link deadlines and tasks [&hellip;]<\/p>\n","protected":false},"author":11,"template":"","meta":{"_acf_changed":false,"available_plan":"All plans","available_product":"Workflows","footnotes":""},"ht_kb_category":[158],"ht_kb_tag":[312,362],"class_list":["post-5855","ht_kb","type-ht_kb","status-publish","hentry","ht_kb_category-build-edit-workflows","ht_kb_tag-due-dates","ht_kb_tag-dynamic-due-dates"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/ht_kb\/5855","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/ht_kb"}],"about":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/users\/11"}],"version-history":[{"count":8,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/ht_kb\/5855\/revisions"}],"predecessor-version":[{"id":10188,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/ht_kb\/5855\/revisions\/10188"}],"wp:attachment":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/media?parent=5855"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/ht_kb_category?post=5855"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/ht_kb_tag?post=5855"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}