Todo.txt Syntax Overview

The todo.txt format is simple and powerful.

What does it look like?

A task list looks like this:

(A) this is a high priority task
(B) this task has a +project and has a lower priority than the prior task
2021-04-01 this task has a creation date and a context @context
x 2021-04-01 2021-03-28 this is a completed task with a creation date and a completion date

There is one task per line.

There are no notes and no file attachments to tasks as part of the format.

How is the todo.txt format useful?

Storing your tasks in a text file that you control gives you tremendous power. You are not locked into a particular system, application, or platform. You can sync the file across devices simply. You can open your task list in any text editor for quick edits, such as pasting in several dozen tasks at once. You can use existing command line tools, such as grep and sort, for searching and sorting.

Is the format documented anywhere?

Yes. The todo.txt format is documented on the project’s GitHub site.

Where did it come from?

Gina Trapani first published the basic idea of todo.txt on LifeHacker in 2006. She and a group of contributors created command line tools (shell scripts) for working a todo.txt format file. See the project’s [official website](( for more information.

It looks complicated and kind of messy.

SwiftoDo allows you to view your task list in a few different simplified, organized formats, which makes todo.txt easier to use. It can pre-fill creation date or priority for you on new tasks. It offers pickers for priority, project, context, due date, threshold date, and recurrence pattern, which speed up data entry. Best of all, it offers powerful filtering and sorting functionality, which lets you focus in on the most important tasks, so you never get overwhelmed.