Repeating actions with due time but not date?

Hey everyone!

Since I started using omnifocus I have several actions that reappear at midnight. They work great. But I’m wondering if there is a way to make a due time for some of them? For example I have a daily action that if I haven’t checked it off by noon of that day, I want to get pinged. Every time I try and do this it works for one day and then the next day it says it was due the day before at noon.

Any ideas?


It’s definitely possible to do this, and it should pretty much just work, so I’m not sure what you’re specifically doing to see the behaviour that you’re seeing.

Almost all of my tasks that have due dates (and defer dates) also have times associated with them, as that’s just the logical way of approaching things. You may want to pay close attention to the type of repeat option, however, since that can sometimes create a behaviour different from what you may be expecting:

Repeat Every is your standard repeat option that simply repeats the task based on its actual due date or defer date, with no bearing on when you actually check it off. This means that if you have a task to repeat every day, and it’s due on the 2nd at noon, but you don’t check it off until the 4th, the next iteration will still be on the 3rd at noon, since that’s one day after the 2nd. Basically, no matter when you check it off, it will always repeat the next day after the original due date.
Defer Another and Due Again are used to set the next iteration based on the completion date and time – that is, the moment at which you actually check off the task. So to use the same example above, if you had a task set to be “due again” after 1d, and it was originally due on the 2nd at noon, if you check it off on the 4th, it will next be due on the 5th at noon – on day after the day which you checked it off.

If you use days, weeks, or months as the repeat/due-again/defer-another setting, the time should remain the same for the next iteration – only the date changes. However, you can also set a task to every “x” number of hours, in which case that will obviously affect the time when the task is next due. This can be useful with “defer another” and “due again” for tasks that you need to repeat every 24 hours, rather than every day, for example – in that case the next iteration would be 24 hours from when you complete the task, while setting a “due again” of 1d would make the task due again at the same time on the following day.

1 Like

I’m going to be honest… that was confusing. I’m sorry I know you were trying to help and it probably took you a while to write that.

My daily repeated tasks are set to “Defer Again: 1 day” And it shows up at 12am. I want it to show up at 12 am but have a due date of 11am each day its created.

Does that make sense?

Heh, fair enough… I just figured I’d try and throw in some background while waiting for your clarification.

What should work in this case is to setup your task as follows:

Defer: March 12, 2015 12:00 AM
Due: March 12, 2015 11:00 AM
Defer Again: 1 day

You could also use Due Again set to 1 day. In either case, it should set both of the new dates to one day after you mark the item completed, with the same times that you had originally set.