Planning

Tags vs folders: how to organise a to-do list without overthinking it

Folders give tasks one home; tags let them belong to many views. When to use each in a to-do list, and a simple setup that combines both.

Max Girkins 5 min read

TL;DR: Folders (or a task tree) answer "what is this part of?", and every task has exactly one home. Tags answer "when do I want to see this?", and a task can have several. Use structure for projects and tags for things that cut across projects, such as place, tool or waiting on someone. Keep the tags list short.

Every to-do app eventually asks you to decide how to organise things. Some lean on folders and projects. Some lean on tags and filters. Many offer both and leave you to work out which to use where.

Get it wrong and you end up with forty tags you never use, or a deep folder structure where you can never find the thing you need. Get it right and the list mostly organises itself.

The difference in one line

  • A folder says what a task belongs to. Each task has one home.
  • A tag says when you'll want to see a task. Each task can have several.

Everything below follows from that difference.

When folders (or a tree) are right

Use structure when the relationship is "part of". A task to order tile samples is part of choosing tiles, which is part of redoing the patio, which is part of the garden project. That chain is real and it matters. Finishing all the parts finishes the whole.

Folders and trees are good at:

  • Breaking work down. The structure shows how pieces add up.
  • Seeing progress. You can tell how much of a project is done.
  • Hiding what you're not working on. Everything inside a closed folder is out of sight.

Their weakness is that everything has exactly one home. A phone call about the garden lives in the garden project, and a phone call about the car lives in the car project. On Saturday morning, when you want to make all your calls, you have to go hunting.

When tags are right

Use tags when the relationship is "this is also a…". The garden call and the car call are in different projects, but they're both calls. Tag them #calls and you can see every call in one place, while each still lives in its own project.

Tags are good at:

  • Places and tools: #home, #office, #errands, #computer. What can I do where I am right now?
  • Kinds of work: #calls, #emails, #writing, #admin. Batch similar jobs together.
  • Status: #waiting for anything stalled on someone else.
  • Energy or time: #quick, #deep, for matching tasks to how you feel.

Their weakness is that they don't show how things add up. A tag can't tell you a project is 70% done, and a pile of tags isn't a plan.

The mistake most people make

The common failure is using one tool for both jobs.

All folders. Every way of slicing the list becomes a folder, so you get "Work", "Work / Calls", "Home / Calls", "Calls / Urgent". Tasks get duplicated across folders or lost in the wrong one.

All tags. Projects become tags too, so a task might be #garden #patio #tiles #weekend #errands. Now there's no structure, nothing adds up, and every task needs five decisions before you can write it down.

A simple setup that uses both

  1. Use structure for projects. Every project is a folder or, in a tree-based app, a parent task. Its steps live inside it. Big projects have sub-projects.
  2. Use a handful of tags for things that cut across projects. Start with three or four, such as #calls, #errands, #waiting and #home.
  3. Add a tag only when you've wanted it twice. If you find yourself thinking "I wish I could see all my X", that's a tag. If you're inventing tags in advance "just in case", stop.
  4. Delete tags you don't use. Once a month, look at your tags. If you haven't opened one's view, remove it.

This maps neatly onto David Allen's Getting Things Done, where projects hold next actions and "contexts" (calls, computer, errands) are separate lists. In a modern app, contexts are just tags. There's more on this in Getting Things Done with a task tree.

Hashtags: the low-friction version

The least effort way to tag is to type the tag into the task itself: "Call the plumber about the boiler #calls #home". No menus, no tag picker, no setup screen. The tag exists as soon as you type it.

This is how tags work in Tatask. Any word starting with # becomes a tag, and each tag gets its own view listing every task with it, across every project. There's more on the tags feature page. The low friction matters: if tagging takes three taps, you'll stop doing it within a week.

What about PARA?

Tiago Forte's PARA method (Projects, Areas, Resources, Archive) is a folder system designed mainly for notes and files. It works well alongside a to-do list, and the "Projects" and "Areas" parts map onto a task tree directly. I wrote about running PARA on a task tree.

What this looks like for different people

A freelancer might have a folder (or parent task) per client, with each client's jobs inside. Tags handle what cuts across clients: #invoices for billing, #calls for the phone, #waiting for anything stuck on a client's reply. On Friday afternoon, the #invoices view shows every bill to send, from every client, on one screen.

A student might have a parent task per module, with coursework inside. Tags cover places and modes: #library for things that need the library, #reading for reading lists, #group for anything involving a group project.

Someone running a household might have branches for Home, Car, Money and Family. Tags cover where things happen: #errands for things to pick up when out, #online for things to do from a laptop, #weekend for jobs that need a free Saturday.

In every case the structure answers "what is this for?", and the tags answer "when can I do it?". The tags list stays under ten.

A quick audit of your current list

If your list feels disorganised, try this:

  1. Count your tags. More than ten? Pick the five you use and delete the rest.
  2. Look for tags that are really projects. If a tag only ever appears inside one project, it's not cutting across anything. Remove it; the project already groups those tasks.
  3. Look for folders that are really tags. If you have "Calls" folders in three places, replace them with one #calls tag.
  4. Check your projects have structure. If a project is a flat list of twenty items, group them into three to five parts.

Ten minutes of this usually leaves a list that's easier to read and quicker to add to.

The rule of thumb

If finishing all of them would finish something bigger, use structure. If they just have something in common, use a tag.

For more on keeping a list that works, my older post your to-do list sucks covers the other ways lists go wrong.

Frequently asked questions

Should I use tags or folders for my to-do list?

Both, for different jobs. Use folders (or a task tree) for what a task is part of, and tags for how you'll want to find it, such as by place, tool or type of work.

How many tags should I have?

As few as you actually use. Five to ten covers most people. If you never open a tag's view, delete the tag.

Can a task have more than one tag?

In most apps, yes, and that's the point of tags. A task can be both #calls and #waiting.

Written by Max Girkins

I build Tatask, a to-do app built around a task tree, and write about planning and focus.

#tags#planning#productivitysystems#taskhierarchy

Try tags in Tatask

Type a #hashtag in any task. Each tag gets its own view across every project.

Start free trial

Tatask for iPhone and Android

Point your phone’s camera here. It opens the right store.

30 days free, then $5 a month or $50 a year. Card required to start.