in OmniFocus

Plan your day better with OmniFocus time estimates

Confession: I usually fail to accomplish what I plan for a day. When the morning begins, big plans are in place… but at the end of the day, a pile of undone tasks lingers in my OmniFocus “Do” perspective.1 More often than not, they just get snoozed for the next day’s action list.

And the process repeats.

It’s demoralizing to watch the Pile of Do grow, and I often feel out of control when looking at what seems like a reasonable list of things to accomplish in a day’s time. Clearly, good intentions need to be tempered by reasonable expectations.

Enter time estimates. Over the years I’ve been using OmniFocus, I’ve never really used its ability to assign a time estimate to projects and tasks. It seemed like a lot of effort for very little benefit: all OmniFocus really does with time estimates is sort/filter.2

But time is a critical dimension of doing: without time, there is no action. It should follow that time estimates are just as important.

So here is my new morning routine:

  1. Collect all actions I want to do today by assigning them a Start Date of today.

  2. In “Do” perspective, assign time estimates to each item.

  3. Check the total time of the day’s planned items; remove lowest priority items until my list is doable. (Use the Total time and Snooze scripts to make this step easier.)

This routine has several immediate benefits:

  1. Assigning estimates forces you to clarify next actions. In cases where it was difficult to assign a time estimate, I realized I hadn’t clarified the next action well enough. Poorly defined next action → inaction.

  2. Using estimates helps clarify what is feasible for the day. This morning, my first pass included almost 14 hours’ worth of work. Without time estimates, I wouldn’t have known how feasible this plan was.

  3. You can start right now. No need to assign estimates to everything in your OmniFocus database; just estimate what you’re looking at for today.

Having seen how simple this process is, I’m shocked I didn’t do this years ago.



  1. I keep two perspectives side-by-side in my toolbar: “Due” and “Do”. Due shows tasks sorted by due date; these are items that really truly have to get done by the given date. Do shows tasks sorted by start date; these are the items that I plan to do on a given day. This gives me the benefit of some planning flexibility without the problems that come from recklessly using due dates. For more on this method, see this David Sparks post, which inspired me to use it.

  2. While OmniFocus doesn’t do much with estimates out of the box, there are some scripts that can do things like starting timers to keep you on task. See this discussion thread for more info.

For those with something to say:


  1. Hi there! Quick question that’s totally off topic. Do you know how to make your site mobile friendly? My web site looks weird when viewing from my iphone. I’m trying to find a template or plugin that might be able to resolve this issue. If you have any suggestions, please share. With thanks!

  2. One slight enhancement on this, I take a page from agile software development and use a (modified) Fibonacci series for time estimates.

    The Fibonacci series is a sequence of numbers from mathematics where each number is equal to the previous two numbers in the series added together. So, for the first several numbers you would get this:

    1 2 3 5 8 13 21 34 55 89 144

    I convert those to minutes, and do some rounding to get the following values that I enter into the time estimate field. I only use these values and never use values between these:

    1 min, 2 min, 3 min, 5 min, 10 min, 15 min, 20 min, 30 min, 1 hr, 1.5 hr, 2.25 hr

    The idea is that your estimates get less accurate the longer they are, and so you can pretty readily differentiate between a 1 minute task and a 5 minute task, but there’s little value in saying something is going to take 55 minutes vs. saying it will take 60 minutes.

    (Anything beyond 2 hours, I figure I should break it down into smaller tasks)

  3. Hi Dan, I like what you’ve done with this method, but is there any way to exclude those tasks that DO NOT have a start or due date from your Do perspective? I have a lot of ‘stuff’ in OF that doesn’t have a due date that I work from a context perspective. My inbox can sometimes get rather large; I set up my “do” perspective exactly how you showed it in your screenshot, but items that don’t have a Start or Due date are being included, and I’d like for them not to be included. Am I missing something? (I didn’t see anything in the Perspective window that I could change to exclude these.)

    Thanks (for this AND Defer!)

  4. Hi Marc,

    If you set your start-based perspective so it’s grouped by start date (View menu → Grouping → Start), you can collapse the “Start any time” grouping, which will hide all items that don’t have a start date. This works on both Mac and iPad versions of OmniFocus (the iPhone version doesn’t currently support collapsing groups).