Multiple locations per Context?

Is there a way to add more than one location for a context? For instance, there are 3 hardware stores that I might go to in my area, so it would be handy to have three GPS-based locations associated with my @HardwareStores context.


A context can only be associated with at most one location.

Your use case is probably fairly common, but the best way to implement such a feature isn’t immediately apparent. For example, should we keep the one-location-per-context setup, but allow parent contexts to alert for all locations of their nested contexts? Or would multiple-locations-per-context really be the best way forward?

I’d suggest writing in to to describe how such a feature would be most useful for you.

1 Like

Context locations can be associated with a search string. Would that help?

I’ve attempted the search based locations, but it was tedious to enter, and didn’t always work. The addresses of a lot of big box stores are right on the main road, but the gps location for the store itself is far enough back to register as being on another block entirely.

I’ll make the suggestion to support. Thanks.

I was having the same question today.

My current idea is the following.

Create a context called “Hardware store” without associating it with a specific location on the map. Then add your specific hardware stores and move them to the general context called “Hardware Store”. Link all your tasks to the general context not the specific hardware store.

Hope this helps. I can’t say that this works for sure because I just set this up on my iPhone and am yet to see how it works.

this feature would be extremely useful.

I’d also love to see this feature.

For me personally, I want to be able to add multiple pins to a context.

For example, say I have a context call ‘@Grocery Store’. I want to be able to add pins to it for all the grocery stores I tend to go to. This way I am reminded to buy the groceries I need at any of the stores.

Parent contexts would probably be the easiest way to implement this, but could clutter the interface with unnecessary extra contexts. I would opt for being able to add multiple named pins to a context which I think would be cleaner.

Even better might be to use the Foursquare API to let us search for specific stores rather than having to manually add a pin.

1 Like

I’ve generally used location search with a fair bit of success for this when doing a “Nearby” in OmniFocus itself, but sadly this doesn’t work for location-based notifications when the OF app isn’t actually running, making it far less useful.

Sadly, this is a limitation of iOS itself – the Region Monitoring APIs require specific locations to be registered at the iOS level – but one workaround that I could see would be for OF to automatically grab the 5 or 10 nearest locations matching a search and register them with Region Monitoring. Ideally, this could be done each time it runs.

That said, there’s definitely also a case to be made for entering specific individual locations, rather than just using a search. I may not want to go to just any “Loblaws” that I come across, but rather have two or three specific ones that I always visit. Or, more to the point, I may have three or four grocery stores of different brands that I visit, and a search for “grocery store” would be too broad.

Probably a cleaner implimentation would be for Omni Group to allow multiple contexts for one activity. This would answer a few of the other requests for multiple context assignments as well.

Maybe add several sub contexts for different locations? It’s not so clean but should work.

I really like OmniFocus’s flexible-yet-simple model. A lot of products would be tempted to let you do TOO much, increasing the cognitive load when deciding on how to organize things. The simplified categorization of projects and nested tasks is so flexible and yet simple to work with.

It would be tempting to make it so you could have multiple contexts for a task, but I can see that would add extra work to decide every task “What are all the contexts this is relevant to?” This would be an increased stress for every task in my inbox.

On the other hand, there are some broad categorizations of locations that would be great to be able to express. For example, to me, “@ The Store” should include several Safeway, Lucky, etc… locations. “@ The Hardware Store” would include Orchard Supply Hardware and Ace.

I’d probably have sub-contexts for items that would be for tasks that are only valid at specific locations:

  • @ The Store
    • @ Safeway (list of Safeway locations I care about)
    • @ Lucky’s (list of Lucky’s locations I care about)
  • @ Hardware Store
    • @ Bill’s Ace (ace hardware)
    • @ Orchard Supply (orchard)

I would then love to be able to configure “@ The Store” to automatically include locations from sub-contexts.

Hmm, as a developer myself, I can see how this feature would have many different possible implementations, each of which have many pros and cons. I’ll need to think about this more before emailing support with a real feature suggestion.

So, I’ve been thinking about this a little more. The principle that seems to be underlying all of OmniFocus is that everything is a “simple tree”, no graphs.

I think what I’d like to see is “Contexts” to have types, similar to how Projects have types.

One of the types could be “Location Group”, which means it is activated by the Location in any Child Context. To go back to my example in my previous post:

  • @ Shopping (type: Normal) - might contain ideas for shopping, or tasks which aren’t “buy at store”.
    • Store (type: Location Group)
      • Safeway (type: Location Group)
        • Safeway on 1st and Main (Has a specific location)
        • Safeway near home (Has a specific location)
      • Lucky (Has specific location)
    • Hardware Store (type: Location Group)
      • Bill’s Ace (Has specific location)
      • Orchard (type: Location Group)
        • Downtown Orchard (Has specific location)
        • Big Orchard (Has specific location)