Difference Between "On Hold" Projects and Contexts

There are two places in OmniFocus where you can assign an “On Hold” status: one is in Projects and the other is in Contexts, but I cannot tell the difference between them. For example, if I created a project and haven’t decided the time to start dealing with it, shall I mark it as an “On Hold” project, or assign it with an “On Hold” context (for one, the “Waiting” context that comes out of the box)? And, if I mark a project “On Hold” and give it an “On Hold” context at the same time, what will happen/what does such an operation essentially mean?

I tried to find an answer in the official manual but it didn’t solve my problem, which simply says:“Contexts, like Projects, also have a Status.”


Putting a project on hold prevents any of its actions from being available in most perspectives. This is best if, say, the project is literally unable to move forward because of external circumstances.

A context cuts across any number of projects, so you can designate actions that cannot move forward (while still potentially moving forward with a project).

If the whole project must wait, place the project on hold. This will preserve the specific contexts of each action. Using only a waiting context will force you to replace existing contexts for actions, then re-apply them manually after you determine the project is ready to move forward.

1 Like