Managing Holidays & Time off in Asana with Flowsana
- Richard Sather
- Apr 16
- 10 min read
Updated: May 14
When it comes to managing holidays and personal time off, Asana's current capabilities are fairly limited. This is where Flowsana comes to the rescue - a fantastic 3rd-party tool that does wonders by enhancing Asana's native features such as rules and workflows, forms, dependencies and much more.
One of Flowsana's perhaps less known features, is its ability to check task due dates against public holidays or whether a user is on PTO / OOO / leave on that date and in turn send a comment or even shift the due date to the next available date, automatically!

Below is a guide of how to build this system yourself in Asana and using Flowsana.
Requirements:
Any paid Asana plan (Starter/Premium, Advanced/Business, Enterprise or Enterprise+)
A Flowsana account and subscription - sign up for a free trial
How it works, in a nutshell:
You create a 'Holidays' project in Asana by simply importing one of the templates I have already prepared, or you can create your own. Apart from the public holidays that appear as tasks, you can then have your team to add their time off as tasks into this same project. You will setup a special rule in Flowsana that will use this project as a reference when checking against task due dates in your projects. The rule can take various actions but in this guide we will simply set it to post a comment on the task and automatically adjust the due date of the task to the next available day.
1. Setup your 'Holidays' project in Asana
Good news, I have prepared several holiday project templates that you can import directly into your Asana space. If your country is not listed below, choose any other country to use as a reference so that you can create your own Holidays project in Asana, or follow the guidelines below. If you already have a PTO / OOO project for your team, you can merge the Holiday tasks in these templates into that one.
1.1 Import a 'Holidays' project into your Asana space:
Before you click on any of the below links, make sure you are logged into your Asana account on your default browser and note:
💡 You should find the imported project added to the first team that appears in your sidebar under the 'Teams' section.
🔒 The project is set to private so only you will initially have access to it. Feel free to move it to another Team and share it with other Teams or your entire Organization.
❗ If your Asana account is connected to multiple Asana instances (Organizations or Workspaces), the project will import into the Asana space that you last switched to, from your profile / avatar dropdown menu.
❗ If you get an error message during import, it means your Asana space is hosted on a non-US data center which is not currently supported, sorry! If so, skip to step 1.3 below.
Click on one of the links below to import your 'Holidays' project directly into your Asana space:
Don't see your country? Skip to 1.3 below.
Expand to see what's included in my 'Holidays' project:
Holiday tasks categorized by states, territories (depending on country) and, where applicable, named in local languages.
Emojis for most holidays - I just had a bit of fun here but in case you find them inappropriate, feel free to remove them from the task names.
A rule that will automatically complete all holidays or personal leave, the next morning at 9:00 am in your local time zone.
The same rule will also send a comment when a floating holiday is completed so that you can go in and adjust the date of next year's holiday. I've also included a link for you to quickly check when that date will be next year. Feel free to try Asana's AI Studio to automate this for you.
Your feedback is welcome so I can improve these 'templates'.
1.2 What to do once the 'Holidays' project has imported:
Review that all holiday tasks are relevant to you and your team or organization. For example, remove any tasks that are not relevant to your state or local territory by simply deleting them.
Add yourself as a collaborator on all tasks that are Floating so you will get notified to adjust the date for next year's floating holiday. Feel free to appoint this role to anyone else from your team.
Optionally, click on the Customize button and edit the Rule so that the 'Add comment' action @mentions you (or anyone else you appoint) so you get notified.
Optionally, rename the 'Holidays' project to whatever you want.
1.3 Having issues importing or don't see your country?
If importing does not work for you, don't worry, you can easily create your own 'Holidays' project or adjust an existing PTO / OOO project that you may be already using. Here is an example of what your Holidays project should look like:

Here is the recipe to build your own 'Holiday' project:
Create one task per public holiday.
Set each task to repeat once a year (click on the due date and look for the 🕒 icon)
Hide the Assignee field and instead add a People field called Members.
Set Filters to show only Incomplete tasks and sort by Due date, ascending.
Optionally, add a single-select field called 'Fixed / Floating' with those two options and then mark each task accordingly.
Optionally, create a rule so that when the task's due date is 9 hours (or so) overdue, then complete the task, but if it's a Floating type holiday, then also send a comment to adjust the due date for next year. Here is an example of this rule:
1.4 Already have your own PTO / OOO / Leave project?
No problem, just make sure that it follows the above recipe, particularly having a People field called Members. If instead, you want to use the Assignee field to define the person who will be unavailable, then you can - simply remove the Members field or any other People type field. The down side with not using a People field is that you cannot add multiple people who will be unavailable for a single event. See step 3.1 below.
2. Setup the Workflow in Flowsana
You will need the 3rd-party app, Flowsana in order to setup a unique rule that will reference the Holidays project to check against task due dates. Follow the below steps to set this up:
2.1 Log in to Flowsana or start a free trial
Log in to Flowsana or sign up for a free trial
If you already have a Flowsana account, skip to 2.2 below. If you are signing up for the first time, follow the prompts to connect Flowsana to Asana, granting it permission.
Select the Workspace and the Team that your Holidays project is in, as well as other Teams that contain projects that you want Flowsana to track against holidays. These are typically your 'live' projects.
Once selected, you should be taken to your Flowsana Account page, confirming that you have successfully connected Asana to Flowsana.
2.2 Create the Rule Workflow in Flowsana
Along the top header of Flowsana's menu, click on WORKFLOWS > NEW WORKFLOW.
Scroll down to Rule Workflow and click on Create
Create the rule in this project: search and select the project that you want Flowsana to track the assignees and due dates against any holidays or leave, PTO etc. These are typically your 'live' projects.
💡 If you do not see your projects in the list, click on MY ACCOUNT in the header. Then in the My Account page, under Summary > Asana Access click on Reconnect to Your Asana Information, or Include More Teams/Workspaces in Flowsana and repeat the steps in 2.1.3. Then wait a few minutes until you get a confirmation email from Flowsana before trying to search for the project again.
Rule name: type a name for your rule , such as Notify if due date falls on holiday
Trigger this rule on changes to: leave this set to Both top-level tasks or subtasks
Apply this rule's action(s) to: leave this set to The triggering task
When... (Triggers)
Select the trigger Start or due date is set or modified... and for the operator, select Due date is changed like this:
Then click on the + to add another Trigger, like this:
Add the trigger Task assignee is changed and then add yet another trigger Task is assigned to anyone, so your three triggers should look like this:
Check If... (Conditions)
Select the condition Task falls on time off or holiday... under the category Other conditions (towards the end of the list of conditions)
Select the Holidays project that you setup in step 1 so your condition should look like this:
💡 If you already have a PTO/OOO/Leave project, you can add a second condition using the OR operator so that you can include this project too, along with the Holidays project.
Do this... (Actions)
Select the action Add a comment on the task and copy & paste the following for the value: This task is assigned to {task.Assignee} but the due date {task.dueDate,M/} falls during a time-off period for them so Flowsana is automatically shifting the due date to the next available day. (this is an automated message) 💡 You may edit this message as you like. I recommend clarifying it is an 'automated message' because it will appear to be posted in Asana by your user (not by Asana, which the native rule action does). 💡 The variable {task.dueDate,M/} will render the due date as MM/DD/YYYY. If you prefer, the date rendered as DD/MM/YYYY then change the variable to {task.dueDate,D/}. For more options, read about Flowsana's Variable Substitution formatting dates here.
Add a second action by clicking on the + icon next to the AND and select the action Due date (under the Date fields category, at the bottom of the list). Next, add the number 1 set to days after the Due Date field, and make sure to check the Skip weekends checkbox, so your two actions should look like this:
Click on the Create Rule button.
2.3 Apply the Flowsana Rule Workflow to multiple projects
Instead of repeating the entire step 2.2 for each project you want to apply this rule to, instead, you can use Flowsana's handy Copy Rules to Another Project feature:
Along the top header of Flowsana's menu, click on WORKFLOWS > NEW WORKFLOW.
Scroll down to Rule Workflow and click on Copy Rules to Another Project
Duplicate all rules from this project: Select the project you selected in step 2.2.3 To this project (or projects): Select all the other projects that you want to copy this rule to, like this:
Click on the Copy Rules button and then OK to proceed with the copy.
In the future, as you add more projects to your Asana space, repeat this entire step 2.3 as required.
3. How to use the 'Holidays' project
Apart from the public holiday tasks within this project, you can use it to add each member's PTO, OOO, Annual Leave, Maternity / Parternity Leave or any other time they will be unavailable. There are various ways you can do this, either manually or a more formal approach through an leave request workflow.
Either way, particular attention should be given to the People type field called Members as well as the Due date field because these are what Flowsana will use to cross reference with the tasks in your projects that are assigned to those people, on those due dates.
3.1 Manually adding PTO / OOO / Leave tasks
Add a task for each person's unavailability:
Name the task to include their name and description.
Select that person in the Members field. (remember, this is a People type field in Asana)
Set the start & due date as per the range of their unavailability.
In the above example, Charlie has added his trip to NYC and Jane has added her PTO Add tasks for company retreats, group trips, OOO meetings etc:
Name the task to describe the event.
Set the start & due date as per the range of the event.
Select all the people in the Members field, that will be attending the event person and will therefore be unavailable during that time.
💡 If the event will involve every member, such as a company retreat, then leave the Members field blank, just like the holiday tasks.
In the above example, the Company retreat will involve all staff members so the Member field is left blank, just like the holiday tasks. On the other hand, the Marketing team have an off-site day so they have added the relevant team members in the Members field.
3.2 Automatically adding PTO / OOO / Leave tasks
You can create an entire workflow for a more 'formal' approach to adding people's PTO / OOO / Leave tasks into the Holidays project. You could have a separate 'Leave Request' project that could contain a form which would kick off this workflow:
Each member would need to fill out the form, to request their time off. Questions should include their name, dates when they will be unavailable and optionally reason or any other comments.
The task, generated by the form submission, could then be routed through an approval process, passing the task around, from their Team / Dept Leader, HR manager to Executives etc. until it finally gets either approved or rejected.
If approved, the task gets automatically added to the Holidays project so Flowasana uses it as reference.
3.3 Other ideas: add fields & use the Timeline or Calendar view
Add any further custom fields such as a single-select Team / Dept. to distinguish which team will be affected. You can also use this field in the Dashboard tab to see how many days each team has taken, for example. You can find many more custom fields in my Custom Field Templates library.
You can also leverage the Team / Dept. custom field to colour code all the leave tasks in the Timeline or Calendar views:
Timeline view; set to Weeks and sorted by Start date Calendar view; set to Months
The end result
From now on, whenever anyone assigns a task in a project that Flowsana is tracking, and they set a due date or later change the due date or the assignee, Flowsana's rule will check whether that person is available on that day, by simply referencing your Holidays project. If that person is not available, within a few seconds, Flowsana will post the comment and immediately shift the due date by one day, skipping weekends in the process, and will keep on doing so until it finds their next available day.

Resources
Read more on Flowsana's Time Off/Holiday Feature.
Read more about formatting Flowsana's Variable Substitution dates here.