My issues with organising in OmniFocus

I have been wanting to make a post expressing my thoughts on OmniFocus and the issues that I have with it and task management systems in general. I am not sure if this is the correct place but maybe someone can give me ideas how to make the most of OmniFocus.

My Experiences with task management systems

I have been moving through different task management systems and I can’t seem to get one that work reliably for my needs. The big issue is that nothing fits with how I operate and maybe its just me.
I end up spending too much time tinkering the system and worrying about forgetting tasks.

I don’t like mentioning it but I have been diagnosed with attention deficit disorder and I am trying to develop a system so I can overcome my disorder and remain productive long enough to get stuff done.

My current setup


Currenlty I am using projects to organise tasks by topic. eg, Work, Household, Bucket and ordered by priority.


At the moment I just use contexts for hloding state. Eg, Current, Blocked, Next, Someday.
Current is things I have started. Blocked are things that cant procede. Next are things I plan to start asap.

What I want from OmniFocus

The end game is to have a system that collects all my tasks and shows me what I can and need to be doing at any givem moment. I just have no idea how to get there.

I can’t seem to use contexts in any meaninful way.
The lack of focus on the iPhone kind of makes it useless for me.
As I usually focus on a project tree then switch to contexts.
Having state mixed with contexts creates some complicated trees with repeated contexts at the end of each tree.

I feel like having multiple contexts or tags might help this along with better filtering.
An example filter would be have an item under Requires->Computer and Location->home but only displayed if both are selected.

I tried using held state to filter out blocked items. Like things that are waiting for contact or delivery.
But to find them you have to set view to ‘Remaining’, which also displays future tasks along with the blocked ones.

For the most part I just forget contexts exist.

I am wondering what you guys thing, I’m eager to hear any advice you have.

Try thinking of contexts as tools or areas that the tasks require for completion. My context list consists of things like Office, Home, Errands. Logic being I can’t complete a load of laundry while I’m in the office, and similarly can’t pick up groceries unless I’m out running errands.

You can then use dependencies and project or context status (Active, On Hold, etc) to determine holding states.


I don’t have a complete solution to what you’re looking for, but I have some thoughts, which I hope might be helpful:

  1. I wonder whether you’re trying to have your system of choice do too much. You said:

For me, that’s never been realistic: I have had to recognise that I can’t avoid the time and work needed to look at my tasks and decide for myself what I need to be doing now and in the immediate future. Different people will have very different experience about this - it depends on the type of work you do, your personal attributes and other factors.

  1. I think if you’re struggling with how to use contexts, stop using them - if you can’t figure them out, they’re just a distraction and a cause of anxiety.

  2. In a general sense, while you’re working out how to get the best from this, keep it as simple as possible. I would suggest (tentatively, because I’m not you) doing the following as a starting point:

  • Pay attention to organising your tasks into projects that make sense to you. Use folders to group projects if it helps to provide a good view.
  • Spend some time looking at due dates and repeats - only give due dates to tasks that genuinely have them; if they repeat regularly, us the repeat function.
  • Where tasks have due dates, spend some time looking at defer dates - they’re what drives the Available status (not available until the defer date arrives)
  • Use the Review perspective a lot. One suggestion I saw, which is simple and robust, is to have a daily repeating project with the following actions: 1. Unflag all flagged actions; 2. Flag today’s most important tasks. One advantage of doing this daily is that you get very quick feedback on where you’re not completing due or important tasks and you can start adjusting your expectations accordingly

I think (I hope) that if you spend a while on this very simple way of working, you’ll progressively be able to define some perspectives that being to clarify your overall work needs.


This goal is realizable. Let’s define a matrix for “can” and “need”. For example:

  • Need: Any task with an external deadline in the next N days
  • Can: Any task not deferred

As you might see, the “can” bucket is rather large by this definition. Perhaps this should be further refined

  • Need: Any task with an external deadline in the next N days
  • Can: Any task not deferred AND
    • Must: Has an unacceptable penalty
    • Should: Is not in the above

I would argue, a further refinement might help.

  • Need: Any task with an external deadline in the next N days
  • Can: Any task not deferred AND
    • Shall: Has an unacceptable penalty AND is to be done for the benefit of someone else
    • Must: Has an unacceptable penalty AND is to be done for solely for my benefit
    • Will: Has no penalty AND is to be done for the benefit of someone else
    • Should: Is not in the above

I have a matrix akin to the above for Projects. This sets the overall theme for any task in the Project. Perhaps it could apply to tasks as well, however I think that “priorities” for tasks are better defined by their dates (due, deferred), flag status, position in a project or action group (sequential, parallel, single action), and context. Let’s assume you recognize the importance and proper set up of dates, know how to define sequential/parallel/single action projects, and appreciate when to flag or not flag a task. Let’s see what you do with contexts.

This seems to overlap with the function of Due and Deferred dates as well as Sequential and Parallel layouts as well as Perspective settings. IOW, the reason for this statement …

… is because your current definitions of contexts are mostly redundant anyway. I suggest that you are instead on to something important here …

This will however have to wait for the ability to set multiple tags in a future update to OF.

I suggest that you may need to consider contexts for location settings, energy-level settings, mood settings, or (my favorite) outcome-centric settings. Give some thought to this as a way to get out of ignoring them.

I hope this might add other insights to resolve the issues you face.



What’s an “outcome-centric” setting in the context of Contexts? I, too, struggle with contexts, and I’m not sure if it’s because I can only use one (choosing is hard!) or because many of the traditional context concepts are not that useful to me (location–I can work anyway, so “office” is rarely important…much more important is “Mac” or “iPhone” but I almost always have them both, so it’s not a real limit…etc.)


An alternative is to say they are focused on a “problem-solving” approach to doing tasks. See here …

My context list now has grown to appear as below …

The pin is a main category for location-based contexts. The mailbox is a main category for “waiting on” contexts. The infinity is a main category for “someday” contexts.



Lots of great ideas here!

First, do you really need to make it so complicated? I’ve struggled for years trying to “streamline” OmniFocus. In the end I found that simplifying it works best. There’s nothing wrong with scanning a list of projects and flagging a few tasks. I no longer use contexts except for “Shopping,” “Home,” and “Errand.” I no longer try to configure OmniFocus into a razor-sharp task system that automatically filters things and shows me exactly what I need to do right now. I use it as a tool to empty my mind, be reminded of important things I can’t forget, and show me a menu of tasks to choose from.

Second, as far as blocked items, try this: Make the project sequential, then add a “Waiting for delivery.” Task. It will block the remaining issues. When the package arrives, check it off and the next action becomes available. I use this heavily. I also use the abbreviation “WF” like so: “WF: Package delivered”.

Finally, it might help you to gain perspective to try something drastically different, like paper-based productivity systems that aren’t GTD. One of the best resources I’ve found is . His books are excellent, too. All of his systems can be implemented with a notebook and pencil. After trying paper and pencil for a few months, I have borrowed many ideas from his systems and use them in OmniFocus.


This is very interesting to me. I have struggled mightily with Contexts, as mentioned, but one thing I have recently come up with is to give each Action a label using a series of TextExpander snippets. All start with “do” and then use 3 letters, which are usually just the first three letters of what I would type next. For example (and these are expanded, obviously):

{Reply to Email}:
{Act On}:


  1. I have way too many.
  2. They would work better as contexts because then I could use Contexts view to sort them.

I will try this.

I also like your list. Very clever. My only concern with using those special characters is that typing them is cumbersome. But I suppose autofill helps with that, since you never assign the top-level contexts to anything, right?

Very cool! I love all the ways that people use OF2 (and apps like Tinderbox and DTPO).

Could you possibly post the rest of your pictograph-using contexts? I’m trying it out.

EDIT: I’ve modified your approach slightly by using a two letter code after the top level emoji. It helps with autocomplete. (PS for Problem solving, LO for location, WO for Waiting On, etc.)

Yes, I never assign the top level to anything.

That is clever. You could also add a special character, e.g. >PS, >LO, in case the initial letter search is too broad.

Honestly, no. Most of the rest are personal that I prefer to keep that way. In a nutshell, my location specific has subcategories for work, home, and errands. Work is divided in office, lab, and other locations, and home could be divided into inside and outside. The waiting on category has work and personal sub-categories. Each of these in turn has a specific context for a specific person or personnel. For example, work has further sub-categories for staff, vendor, and colleague. Finally, the infinity category is generally a miscellaneous location for bills and someday lists.

The encouragement is to find your own emoji that fit what you recognize. These carry over to the iOS platforms as an added bonus.

Glad you are finding this useful.


1 Like

What’s the “recycle” PS context for? Also, do you make use of the ability to put Contexts On Hold?

Recycle is for action groups (sometimes also for tasks) that repeat.

I have an AppleScript to toggle various settings.


When designing your system, I agree with the principle of “as simple as possible, but no simpler”. Also with the “dates only for things that really have them” one.

I also think that the Eisenhower matrix is a good lens to look through. (Urgent vs Important 2x2. Google it for details.)

I’ve been using OF since it was a script running on top of OmniOutliner and I’ve never found contexts to be useful, and they’re a fussiness trap. (I’m sure others have gotten a lot of value out of them.) Currently, I basically only use them to flag Important items, since I use flags to mean “Today”. I like to do that to make sure I can look back and see that I’ve been working on at least some important stuff.

1 Like

First, @dmoyle108, honestly, thank you for mentioning your ADD. We share a diagnosis and I think that there’s too much stigma about such things. Impossible to change stigmas if we aren’t open to talking about them.

There’s a lot of good ideas already in this thread and Omnifocus is incredibly flexible (sometimes too flexible). If you are willing to stick with it and do some experimentation I’m sure it can work for you. It sounds to me like you’ve got a good idea of what you are going for and the beginnings of how to go about it, but can maybe place some things in different parts of OmniFocus.

Word of caution: I don’t think my setup is complex but it can be granular and sometimes (often) idiosyncratic. It’s evolved a whole lot over time – I just looked and I’ve been working with omnifocus since 2008 (and I never used a defer date until this year) – and It works incredibly well for me, but I’m pretty antithetical to (for example) @Nick and @flight16 streamlining recommendations. I try to streamline my workflow and my tools are exactly as complex as needed to support them workflow.

So here’s a good bit about my setup:


I use topics like you do, but as folders with projects in them. Almost all projects are single-action (we can talk about when I use sequential or parallel if you’d like). I use the project active/on-hold status setting a lot but equivalent to your current/blocked/next/someday contexts are in project titles.

Quick note: I use some personal specific syntax much like @DrJJWMac suggested, I’m going to type it but not review it unless someone wants me to.

My business (I call it professional) projects folder looks like this:

  • – (a sub folder)

    • – for all one and done tasks that aren’t client-project specific. Random examples might be: fix junk mail script, clean notebook, research calculators.
    • #pro.recurring – need to be done regularly, not client stuff. Clean downloads folder or whatever.
    • any projects needed for larger, specific things (like projects for specific clients) get created here.
  • #pro.hold – a project that for things that can’t be done right now for whatever reason. The status of the project is set to “On Hold”.

  • #pro_someday/maybe – pretty much what it sounds like. also set to “On Hold”.

Almost all of my project folders will have a similar setup, my household projects folder looks like this:

  • #personal.recurring
  • #personal.hold
  • #personal_someday/maybe
    I have some others (e.g, #journal, #financial) but I don’t bother with the active subfolder since personal tasks are almost always one-offs and I almost never add new projects here.

Most folders look similar. There’s an #edu folder for school. It’s got a .one-off and projects for specific classes. Doesn’t need a_someday/maybe.#photograpy has .one-off, a .wants project (for gear I’m considering) and then projects for specific photoshoots.

I don’t know how you use your Bucket (maybe like my .one-offs) but I’ve got a special #lists folder, worth talking about. It has “projects” for reading lists, movies and so on. Here are a few:

  • .cook
  • .hike
  • .learn
  • .nice-to-haves
  • .read
  • .shop
  • .watch
  • .watch w/ mom

Most lists stay set to the On-Hold status (.shop and my .christmas list are currently active).

I also have a special folder called #life, for planing and goals:

  • _now
  • _weekly
  • _monthly
  • _annualy
  • _future.planning


My contexts are specific requirements to get something done, nothing to do with state of a task.

If I can’t do something without being in a certain place – say I read about a restaurant I want to try… and it’s in a different city. That city will be a context.

Can’t finish something until my kid brother gets back to me? He’s a context.

Need to buy milk, but I’m at the book store? Bookstore and grocery store are both contexts (and OmniFocus on my phone knows that grocery store means a nearby Publix OR “Fresh Market” OR “grocery store” and that bookstore means “Barnes and Noble”). LOVE that nearby button when I’ve got time to kill.

Contexts were set up ages ago and get reviewed once in a while but except for adding clients they almost never change. Here is a (small) sampling of my hierarchy,

  • #general
    • _home
    • _office
    • _campus
    • .errands
      • _grocery store
      • _post office
      • _book store
    • _misc.
  • #geographies
    • _Tampa
    • _Orlando
    • _Atlanta
  • #tools
    • phone
    • laptop
    • iPad
    • e-mail
    • sketchbook
  • #people
    • #family
      • mom
      • dad
      • etc.
    • #friends
      • whomever
      • whomever else
    • #clients
      • a client

Finally, as with my special project folders there are 2 important special context sets worth mentioning: #headspace and _chronologies.

#headspace are sort of like moos. They mostly go along with the #lists but do show up elsewhere. Here’s a random sampling:

  • _anywhere
  • .code programs and scripts I want to get to, a good example of something that will show up in multiple projects
  • .create
  • _edu
  • .learn
  • -_low-energy
  • _personal I have 0 issue with a context and project with the same name
  • _professional
  • .relax
  • .sketch
  • .research

Here’s how I use headspace(s):
I want to do some reading. Check the .read list, and there’s a mess of books, articles, web pages, etc. I’ve got time, but I don’t feel like reading a research paper, so I’m headed for my .relax context. Or maybe I’m just tired, so I’ll see what’s marked _low-energy across all my lists.

Then my other special set of contexts, closest I’ve got to “state based”, is #chronologies:

  • _future
  • _monthly another context/project name overlap
  • _someday
  • _whenever
  • _weekend

#chronologies contexts mainly get used in the #life projects but do show up scattered in other projects as well. (If they didn’t they probably wouldn’t exist as contexts at all.)

Some Quick Other Thoughts

Look in to custom perspectives which are all sorts of handy. For example: I have a _home_office.plan perspective that shows some projects from both #professional and #personal. I’ll look at that, flag 3 or 4 tasks to work on and then go over to the _home_office.execute perspective which will show just the flagged items from just those projects by context.

I’ve personally never found a need for multiple contexts or tags, but it’s a recurring feature request which I understand is being worked on. The last details I came across were here: Feature request: Today list .

You might experiment with what I was playing with in that thread: adding whatever tags in the notes field of a task and then using the search feature and/or text filtering in a custom perspective (you’ll want the tags to use a special character or something to search on).

Sorry this got long, but hopefully there’s something you or others can use.

Keep my posted (no pun intended) and feel free to ask any questions and I’ll get to them as I can.


Seconded. I have it too. Honestly, there’s likely a larger proportion of ADHD folks on these forums because we need OmniFocus more than those who are “normal.” For many of us with ADHD, we cannot possibly hope to keep track of our lives without tools. For someone like my wife, nothing more than a calendar and her own memory are necessary. As ADHDers, we are truly blessed by the technology gods to be living in this era!

1 Like

I think one of the fundamental problems with your approach is that you are using every tool that Omnifocus offers (projects, folders, contexts) in the wrong way. In just a few words:

  • Projects are things you need to get done (in the original GTD methodology, a project is something that requires at least two actions to complete, but nothing is stopping you from using single-action projects if you prefer)
  • Contexts should be seen more as location-based or topic-based, not as ways to group items by status
  • Folders are high level ways to organize your stuff (an example could be work/home, or perhaps using one folder for each client you work with)

You are using the wrong tools for the job. My tips here, in no particular order:

  • Don’t even consider multiple contexts until you have gotten a firm grasp of what contexts need to be used for. When they come, they will be a welcome addition for a lot of folks, but for now you only need to work with one context at the time
  • As mentioned, use folders to categorize items at the highest possible level, or for pure organizational purposes
  • Use projects for the things you need to do
  • Use project statuses (active, on hold etc) rather than contexts to understand the status of your to-do’s
  • Use contexts for location-based or topic-related items (examples could be errands, office, wife, family)
  • Use flagged items to prioritize items

Start very simple and build up from there. It’s not good to be so overwhelmed already, before even getting to know all the features that Omnifocus offers. If you don’t understand how something in Omnifocus can benefit you, it’s better if you don’t use it for the time being.

Some more thoughts, hoping they can help:

  1. Start with just two folders (home and work)
  2. Create some projects and put them in the relevant folder
  3. Use the project status field to understand which ones are active and which ones are on hold
  4. Add a context field to these projects if you think it can be useful (mark anything that needs to be done in front of a computer with computer, anything you need to do outside the house with errands
  5. If there are any projects that you would like to complete before others (but that don’t necessarily have a due date), flag them

I don’t recommend doing much more than this at the beginning. Give this a try and add more stuff once you are comfortable with the basics. Just my 2 cents.


I have almost completely given up on Contexts.
I do use a few contexts for things I’m waiting on.

  • ‘Blocked:Contact’ for when I am waiting on someone to get back to me.
  • ‘Blocked:Delivery’ for when I am waiting on something to be delivered.

And I do keep some for errands like the grocery store.

Thanks everyone for the replies. I have read all of the responses and there are quite a few good ideas.

Currently I am just using the project tree and mostly forgetting that contexts exist.
Things are ordered by priority and having Held/Next for new and held projects.
But there is no held state for folders only dropped. I can’t use dropped because
the item will be archived. sigh

I do use a few contexts for things I’m waiting on.

  • ‘Blocked:Contact’ for when I am waiting on someone to get back to me.
  • ‘Blocked:Delivery’ for when I am waiting on something to be delivered.
  • ‘Blocked:Delegated’ for when the items is given to someone else.
    And I do keep some for errands like the grocery store.

I was using Current, Blocked, Held and Next to remember what

  • Current: Started and can continue
  • Blocked: Cannnot continue for a reason. Like a waiting on a delivery.
  • Held: Started but I have put it aside.
  • Next: Things that I plan on doing but have not started.

A few of the systems mentioned seem a bit too complex.
I find that large trees and lists are overwhelming.
Which Is why I want to be able to filter it down to what is important and relevant.

I am not a fan of how Contexts and Projects are seperate.
To see contexts I have to switch to the Contexts perspective but this changes the order of tasks.
I would rather be able to just filter down the project list.

I do have one custom Perspective that solely lists the ‘Blocked’ context.

I probably have more thinking to do.
Thanks everyone for the ideas. They have been helpful.

Is there anyway you would consider doing a screen recording explaining how you use your contexts and your daily routine and upload it to YouTube? I would be interested in seeing how these contexts work when managing your tasks day to day. Thinking about switching to this method to try it out myself. ;)


Honestly I don’t use them in my daily routine except for Contact, Delegated or Delivery.
I just check them in the morning to see if anyone has gotten back to me so I can check them off and the projects can continue.