How to Setup Remember The Milk for GTD

By Magnus Nord

GTD Remember The Milk cowAn efficient system for keeping track of things to do is a must have for anyone with a busy life. In this post, I describe my  Getting Things Done (GTD) setup in Remember The Milk (RTM).

I can think of at least four requirements for a working task management system (read: a system I actually stick with and use):

  • It needs to be very simple, if not idiot proof (call it self insight).
  • It needs to be flexible and extendable.
  • It needs to be accessible from just about anywhere.
  • I don’t want to be bothered by stuff not relevant just now.

The secret to my system is that I don’t use a standard list to keep track of next actions. Neither do I to keep lists for each project, instead I rely solely on tags. Everything goes in to the Inbox – and is filtered automatically using smart lists.


Everything is dumped in to the default RTM inbox. This serves as a universal bucket for me, where I put everything from ideas and notes, to things like project items and recurrent events. All items stay in the inbox until finished, at which time they are checked off as completed.

GTD Setup With Remember The Milk

  1. All new items are added to the Inbox list.
  2. I sometimes tag items directly, either with a context or a project tag, or both.
  3. Tickler items are created by simply giving an item a due date. Possibly making it recurrent.
  4. Items neither tagged nor tickled end up in a smart list named Unsorted.
  5. When a task without due date has hung around for too long, it will show up in another smart list called Smellers.
  6. All context and project tags are reviewed regularly. (Of course, I have a recurrent task to remind me.) It is also easy to spot unprocessed items by simply looking in the Unsorted list. Attention is also given to untouched tasks in the Smellers list.
  7. The icing on the cake is the TODO smart list. This is the only list with “next actions” and the only list monitored continuously, at least daily.
Adding stuff quickly
When I get some stuff to follow up from a conversation, or when having an idea on the go, I often just add it without categorizing it. Later, or at the weekly review, I process items in the Unsorted list.

The Setup

The complete setup consists of the standard RTM inbox, three smart lists and an arbitrary number of tags.

Universal Inboxtodo-list

As I use the default inbox as the universal inbox, all new tasks end up here, whether they are added from the mobile application, the browser or sent via email or any other of the functions available in RTM.

As all items go into one list, it makes it really easy to perform searches, filter items, and so on.

Smart Listssmart-list

Smart lists in RTM are based on search criteria. Here are the three smart lists I use, and their respective searches:

  • Unsorted contains items not yet processed; tasks without tags or due dates.
    list:inbox and status:incomplete AND isTagged:false AND due:never
  • Smellers contains tasks who have stayed uncompleted for too long. It does not contain recurrent tasks.
    NOT addedWithin:"3 months from today" AND list:"Inbox" AND status:incomplete AND (due:never OR dueBefore:now)
  • TODO is the “next action” list. It contains items marked with the @action tag and items due on the same day (or for high priority tasks: tomorrow).
    list:Inbox AND status:incomplete AND (tag:@action OR dueBefore:tomorrow OR (due:tomorrow AND priority:1))


I separate tags into two categories: Contexts and projects. Context tags start with the at-sign (@), everything else is considered a project tag. (Please note that I’m not using RTM locations as contexts – they are also denoted by @.)

Here are some of the contexts I use at the moment:

  • @action to mark an item as a “next action”. This displays the task in the TODO list.
  • @computer for items where I need the computer or tablet.
  • @shop for things I need to buy. I look at this context when at the local mall, or at the grocery store.
  • @waiting for things requiring an action or response from someone else.

This is an incomplete list, and I add and remove contexts continuously as my needs change.

Project tags can be pretty much anything, and are simply a way of categorizing tasks. Some of the projects could arguably be contexts, and vice versa. Heck, you could skip contexts all together but there is at least one good point why to keep them: They end up in the beginning of the tag list, as it is sorted alphabetically. Especially advantageous is the fact that @action pops up first of all.

I use a lot of project tags: For the blog, my children, work, for things to read, another for tips I get (for instance movies and books). The list goes on.

Tickler Filetickler

A tickler file is implemented implicitly by the way I use smart lists. I never look at the items in the inbox directly. Instead, I use the TODO smart list as the “go to list”. Tasks with due dates, possibly recurrent, pop up in the TODO list when they need to be acted upon.


Well, that’s it! I hope you found this post useful. If you have any suggestions for improvements, please let me know.


  1. Drew Hawken2/19/12, 7:11 PM

    Thanks for this! I am new to GTD and RTM both really liking both the tool and the framework. This approach may be closer to the way I work using smart lists instead of traditional lists make for a more dynamic system.

    I like the visuals and the blog layout as well.

    1. Magnus Nord2/19/12, 8:42 PM

      Thanks for commenting. I'm glad you find my GTD+RTM setup useful. I'm even happier you like the blog layout :-)

      Let me know how the setup works out for you, and if you think of any additions or improvements.

  • Really good setup. I like the idea of Smellers list to single out stale tasks. It's so easy to throw hundreds of tasks into electronic system and let them linger there for months. I've added it to my own setup.

    1. Magnus Nord2/22/12, 8:02 AM

      Thanks for your comment, Rafal.

      The only problem I have with the Smellers list is for long-term tasks that are part of projects. I'm not sure if it's a good idea to add them to the Smellers list.

      On the other hand, if you haven't moved forward in a project for XX months, you probably want to do something about it :-)

  • Magnus, when you say "project tags", can you give me an example?

    Could I see a screenshot of your workflow?

    1. Magnus Nord4/14/12, 8:37 PM

      David Allen defines a project as anything that takes more than one "next action" to complete.

      I use projects (project tags) in a much broader way. I use them to group any related TODO items, not necessarily "next actions".

      For example, in my project tag "Blog" I add everything that comes into mind related to the blog: articles, ideas, links, things to do, and so on.

  • Iurii Radomskyi11/25/12, 12:07 AM

    Hi Magnus,

    First of all, thank you for the article, it is great: clear, easy to understand, and even with a diagram :-)

    Second, I have a couple of questions to you:
    Where do you store maybe/later tasks/projects? How do you get them out of your way during daily review?
    How do you separate active projects (the ones you are working on) from not active ("Maybe" projects)?

    1. Magnus Nord11/26/12, 10:30 PM

      Thanks Iurii,

      Projects are represented by tags. So, in addition to checking the TODO list I review other tags weekly. (I have a recurring task setup for that, of course.)

      I don't have a "maybe" tag but that would probably be how I'd go about implementing that.

      Neither do I have a "later" tag: For me it's enough to just put a date on a task and it will pop up on that particular day. (See the "Tickler File" section.)

  • Hi Magnus,

    what is your strategy when going trough your Unsorted list?
    It's a smartlist and therefore whenever you add a tag or add a due date, it will disappear out of this list, so you are only able to change one thing: The tag or the Due date, not both. Normaly I add tags first but sometimes I have a due date in mind that I want to enter as well. Any workaround here from your side?

    Thanks for this really nice and simple setup, I like it very much!

    1. Magnus Nord2/17/13, 9:39 AM

      Hi Stefan,

      Well, actually I usually go through the list on my Android device and there it's possible to add both the date and tags before the task is removed from the smart list.

      The only options I see is to either search for the task once edited, or to look at the tasks for the specific tag. If you look in the default inbox, tasks with due dates are listed first so that might be a workaround, too.

      I'll have to think about this one :-)

    2. I have modified the code to enable this to work so that after entering due date the task won't disappear but only if you enter the tag it will disappear. I have made assumption that tasks can either have a due date or not. But a task always has a tag associated with it.

      Code is: list:Inbox AND status:incomplete AND ((NOT due:never AND isTagged:false) OR (due:never AND isTagged:false))

  • Hi Magnus,

    I'm relatively new to RTM but I admit that I like the simplicity of the system you've got. It seems to be someone based around the inbox as the keeper of everything. Is there any reason one couldn't use static lists for projects and just remove the "list:inbox" from each of your searches?


    1. Magnus Nord2/17/13, 9:41 AM

      Hi Thad,

      Wouldn't that mean that you'd need to think about where to put a task in the first place?

      Also, I use other lists for other things that I don't want to be included in the searches.

  • Hi Magnus,

    thanks for that, I found it really useful, I am interested to hear if you have stuck with this system or if you are like me and keep moving ot a new one, my developer friends and I joke about loving a good migration to our new productivity system so, did you stick with this one?

    All the best

  • This comment has been removed by the author.

  • I find adding @action time consuming, so I've used this for the TODO list instead:

    list:Inbox AND status:incomplete AND ((tagContains:@ AND due:never) OR dueBefore:tomorrow OR (due:tomorrow AND priority:1))

    It shows: any item with a context, any item due today, or any priority 1 item due tomorrow.

    Used in conjunction with project tags, this works very well. Example:

    00 successful outcome [tags: project 1]
    01 item to do 1 [tags: project1,@context]--shows up on TODO list.
    02 item to do 2 [tags: project1]
    03 item to do 3 [tags: project1]

    I can click on tag cloud "project1" to see all tasks related to this project.

    After I complete item 1, I will add context to item 2, etc.

    If I need to add tasks between already entered tasks, I do it like so: 021 item to do after item 2 [tags: project1]. List now reads:

    00 successful outcome [tags: project 1]
    01 item to do 1 [tags: project1,@context]
    02 item to do 2 [tags: project1]
    021 item to do after item 2 [tags: project1]
    03 item to do 3 [tags: project1]

    1. Julien Merlin8/20/13, 4:52 PM

      Why do you sort item with the name ?
      It's quite complicated no ?

      why do you une tagContains:@ ? you haven't got @waitting tag ?

      I don't find yet any way to use GTD+RTM for project.