Using OmniFocus Templates To Speed Up Your Workflow

If you’re following my blog posts at all, I hope that means you believe that automation is amazing. Automating things whenever possible is a way to speed up your tasks, make sure you don’t forget things, and free up valuable free time. There are many ways to automate tasks, and I’ll be writing about those too, but today I’m going to focus on using templates within OmniFocus for repeating projects.
Things you’ll need:

I use templates for any task I have to complete regularly, but that isn’t on a regular schedule. In this post, I’ll be going over the two templates that I use, one very simple one to get started, one intermediate template, and one advanced one to show you what Workflow is really capable of.

Simple

This is a pair of templates that I use together and they’re as simple as can be. The first enters an item into my OmniFocus app that reminds me to move clothes from the washing machine into the dryer, and when that’s done I start the second one template that reminds me to take the clothes from the dryer back to my room and then put them away. You can copy these templates by following these steps:

Washer

Open Workflow.

Touch the + in the top right corner to create a new workflow.

Touch the icon that says “Actions” at the bottom, or swipe right.

Search for, and then touch and drag the action called “Date” to the right into the workflow editor.

Select “Current Date”.

Add the action called “Adjust Date” into the workflow editor and adjust by however long your washing machine takes (mine is 1 hour).

Add the action called “Add OmniFocus Item”.

Name the item (mine is called “Washer Finished”.

Go to where it says due and find the variable “Adjusted Date” above the keyboard. Make the item due at the adjusted date.

Add a project and a context (for an explanation of those, read this blog post).

Turn off “Edit in OmniFocus”.

And you’re done! If you run that workflow it should automatically import a task into OmniFocus that is called Washer Finished and is due 1 hour from now. Here is a link to download this workflow:

Dryer

Add another “Adjust Date” action into your workflow and adjust by the time you want to give yourself.

Add the action “Add OmniFocus Item”.

Name the item (mine is called “Put Away Clothes”.

Make the item due at the adjusted date.

Add a project and a context.

Turn off “Edit in OmniFocus”.

If any of this is confusing to you, please watch the screen recordings above, because you’ll need to have a firm grasp on this before moving on to the more advanced type of templates. The first video at the top of the page follows the steps exactly, the second video deviates a little and shows you how to add a step that will ask you to input how long from now the task should be due instead of putting in a fixed amount of time.

Intermediate

This one is a bit harder than the first two, so I’m providing another video for the visual learners out there. You can watch that below.

This is a workflow that will set tasks for every step needed to buy a birthday gift for somebody. I’m including more than one variable so that you can understand how to use them because you’ll need to be really confident in to create the most advanced workflows. We are also going to use the TaskPaper format instead of the “Add OmniFocus Item” action.

Before we go into this there are a couple of things I’ll explain about the TaskPaper format that we’ll use:

Gift For NAME @autodone(true) @context(Errands)

-/ Purchase GIFT for NAME @due(BDAY -2d 12pm) @context(Errands)

-/ Wrap GIFT for NAME @due(BDAY -2d 4pm) @context(Errands)

-/ Give GIFT to NAME @due(BDAY 8pm) @context(Friends)

The first line creates what is essentially a folder for all of the tasks.

“@autodone(true)” tells OmniFocus to automatically complete this folder when all of the tasks inside it have been completed.

“@context()” tells OmniFocus which context to put the tasks into.

Any words you see in all capital letters like “GIFT” or “NAME” are variables, I’ll teach you how to make those in a little while.

“@due()” tells OmniFocus when the task is due. You can set a specific date and time based on a variable; @due(BDAY -2d 12pm) tells OmniFocus that this task is due 2 days before the variable BDAY at 12pm. You can also add days; If I wanted to make it 2 days after I could say “+2d”. Shortcuts for weeks, months, and years are “w”, “m”, and “y”.

Now let’s get into how to create this workflow.

Open Workflow.

Touch the + in the top right corner to create a new workflow.

Touch the icon that says “Actions” at the bottom, or swipe right.

Search for, and then touch and drag the action called “Ask for Input” to the right into the workflow editor. And have it ask you the question “Who’s birthday is it?”

Add the action “Set Variable” and call the variable “NAME”.

Add the action “Ask for Input” and make the Input Type “Date”. Have it ask the question “When is their birthday?”

Add the action “Format Date” and make the date format “ISO 8601” (this is important for OmniFocus to understand the date that you’ve put in)

Add the action “Set Variable” and call the variable “BDAY”.

Add the action “Ask for Input” and have it ask you the question “What gift are you buying?”

Advanced

Now that we’ve mastered the basic and intermediate OmniFocus templates we can move onto the more advanced types of templates. This is a workflow I created for use in my pet photography business. This is every task that I have to do for or with a client from the first phone call to after the photoshoot. This adds them to a project and creates sub-projects within it. Most of these do not have a due date as a part of the template because the length of time between things varies greatly from client to client. Some of the items are flagged because they’re particularly important. Here is the finished project: