Prioritization Framework

How does the task list in Lunatask work?

When you open Lunatask for the first time, you might be surprised by the missing ability to drag tasks manually around to move them up or down. This is because task lists in Lunatask automatically sort your tasks, so the list is always prioritized using our prioritization framework.

In this article, we will go through all the concepts used throughout the task list and document many ways how to use them.

Why reinvent a to-do list?

We built our lists around the idea that there’s a constant stream of incoming small tasks. Every day, you might have 20 incoming new todos while people throw work at you that ideally needs to be done as soon as possible. That also means that 20 similarly sized todos from earlier must be checked off, you would be piling tasks in front of you otherwise.

This is heavily Kanban-inspired, as Kanban is about completing tasks at a steady pace and in a reasonable time. While new tasks arrive at the bottom of the list, one is checking off older tasks on the top. The "first-in, first-out" approach maximizes throughput without you going insane because of the amount of work thrown your way, and it ensures no task is left behind.

Other to-do lists might become a mess with more than a dozen tasks in them. With clever use of planning, our lists can handle 10x times more tasks.

What is urgency?

The urgency is a set of rules like these that govern the order of tasks in the task list. You can think of urgency as a score given to each task. The higher the score, the more urgent the task is, and the higher it appears in the task list. The urgency usually uses the status of the task, its priority, age, and due date to determine the sort order.

In simple terms, tasks marked as Started have a higher urgency than tasks in Next to nudge you to finish what you already started before taking on new work. Waiting tasks are not actionable, hence they have a low urgency (lower than tasks in Next, but usually higher than tasks in Later). Higher priority usually means higher urgency as well (but not always, see nuanced usage section below). Using the priority, you can nudge the algorithm, so it knows what is important to you.

If two tasks have the same properties like status, motivation, Eisenhower value, priority, or estimate, the older one is always considered more urgent. By age is the secondary sort in any case, causing new tasks to appear at the bottom of the list while bubbling up as they get older.

So, you replaced the manual ordering of tasks with 5 priorities?

Yes, that's the simple way to say it. When you start manually dragging tasks around, you usually lose the sense of how old the task is. Using priorities, you have a way of saying that a certain task is more important than another while still allowing for more things to be taken into account (like their age or status).

What about scheduling?

Lunatask supports both date-based and time-based scheduling. When the task is happening in the future, in a few days or next month, you can schedule it for that day or the day before.

When the date comes, Lunatask will show this task in a special section at the top of the list for you to decide what to do with it. You can then move it to Next or Must, or drag it onto the calendar to the exact time you'd like to start working on it.

So, date-based scheduling is useful for tasks happening later in the future, and time-based scheduling is for today's tasks.

So, how do I plan my work then?

There are many ways, and it will be up to you to find which will work best for you. There are several built-in workflows in Lunatask and several ways how to use each one of them. A workflow is a specific combination of grouping and sorting.

In most workflows, new tasks begin their life in your backlog, usually called Later. Then, you plan them as your next tasks to work on. In Kanban workflow, where the task goes from one state to another, you'd change its status to Next. In Must/Should/Want workflow, you'd say whether the task is either Must, Should, or Want.

What these mean to you is up to you to decide. Let us give you a few examples:

Continuous flow with Kanban

You might want to use your backlog (i.e. Later section) for "not now" tasks and configure Lunatask to create new tasks in Next by default in settings.

This way, for each new task in Next you can either start working on it (i.e. move it into Started) or put it off for a while (i.e. move it into Later). This way, you're working mainly on finishing already Started tasks, with the Next section holding tasks to work on next, and Later having ideas for the future.

Daily planning with Must/Should/Want method

At the beginning of each day (or any period you pick, a week maybe), you pick tasks you must, should, or want to complete in that time. Then, work on these tasks starting from Must tasks. Finally, at the end of the period, you reset everything and plan your next one.

Or, you can omit the reset part and continuously add new tasks into Must, Should, or Want sections instead of Lateras they arrive, as described in the continuous flow with Kanban example above. Lunatask will keep older tasks on top unless newer tasks have a higher priority.

Quick prioritization with Eisenhower Matrix

One does not need to spend all his time in one workflow. You can switch to another workflow to get a different picture and see your tasks in a different light.

You might be using Kanban workflow most of the day while working on your tasks, but when you start losing the sense of what's important, you might want to switch to Eisenhower Matrix or Must/Should/Want workflows. Prioritize tasks there, figure out what's important using those tools, reassign priorities, maybe delete or delegate some tasks, and then switch back to your usual Kanban workflow and continue working on your tasks.

Eisenhower Matrix is a unique tool because it is the only workflow where it's not up to you to pick what tasks to work on next. Instead, the matrix will tell you what to work on now and on what later, given whether the task is/isn't important or urgent.

Ivy Lee Method

This is a 100-year-old productivity technique employed by many. At the end of each workday, plan six (and no more than six) most important things you need to accomplish tomorrow. You can do this either in Simple workflow, Kanban workflow, or using Must/Should/Want. Then, repeat this process every working day by moving six tasks into your planned tasks, i.e. Next.

Remember, do not start with the next task until you have fully completed the one before it. Move any unfinished tasks to the top of tomorrow’s list of six tasks and repeat daily.

Is this perfect?

Of course, this gets in a way sometimes. However, people tend to, for example, avoid complex tasks and procrastinate on easy ones while the challenging tasks get stuck for several days (we were indeed guilty of that in the past). So while the algorithm might not be perfect at prioritizing tasks, humans (and especially those with ADHD) are sometimes not much better.

Fortunately, the urgency calculation is just a recommendation. You can always get the tasks done in any order you like. Lunatask will just make sure to push tasks to a more prominent place higher in the list as they get older or are left unfinished to remind you of them, so no task is left behind.

What to do when my list is too long?

It depends if all tasks on the list are still relevant or not. Review your tasks (possibly using the built-in Review old tasks or Eisenhower Matrix workflows) and remove what's no longer needed. Perhaps something can be delegated to other people and moved to Waiting?

If you still have 80 relevant tasks in your backlog, then you have 80 tasks in your backlog. There's no way around it, and that's okay. The important part is using the various sections and priorities cleverly to you know what is first, what is after that, and what is later. Properly using these, you can give a solid structure to your long task list. Plus, given that your backlog is always sorted by our prioritization framework as well, there's already some structure in it by default.

Also, don't forget to hide tasks that are not actionable at the moment out of sight by double-clicking the section name. In Lunatask, you rarely want to have all tasks in the list shown at the same time unless you're in the process of reviewing and cleaning up your task list. Most of the time, you'll want to have your Waiting and Later sections collapsed while working.

What about project planning and organization?

Lunatask is not a project planning or organization tool. Instead, it's a personal Kanban tool designed to mitigate the stress and mental overload of working in demanding environments (startups, big companies, management roles, etc.) where new work is constantly thrown your way and where you are always on the edge of having too much work on your shoulders. This is where other to-do lists and apps often break down.

When will I be better off using a different app?

Lunatask will not be for you if you're used to planning and scheduling everything all the time. Lunatask supports both date-based and time-based scheduling to a certain degree, but if you're scheduling every single task you might be better off using an app designed around this.

Nuanced priority usage (advanced)

Imagine a case when you have only one Started task on the list. Now, a new more important task is added to Next. Assigning the Highest priority will now make the task in Next more urgent than the task in Started, hence it appears on top of the list in Now/Later grouping, and it will be highlighted as the next task to work on.

Assigning the priority of High to the task in Next won't have the same effect. You can use the priority of High to sort your next tasks to work on after you finish the work you already started.

Similarly, this can be applied to Low and Lowest priorities. Assigning a lower priority to a task in Started means putting it on hold for a while.

See the table below for the exact order of rules in groupings based on task status (higher in the list means more urgent).

StatusPriority
DueHighest
StartedHighest
NextHighest
DueHigh
DueNormal
StartedHigh
StartedNormal
NextHigh
NextNormal
DueLow
StartedLow
NextLow
DueLowest
StartedLowest
NextLowest
WaitingHighest
WaitingHigh
WaitingNormal
LaterHighest
LaterHigh
LaterNormal
WaitingLow
WaitingLowest
LaterLow
LaterLowest

And here for By motivation grouping:

MotivationPriority
DueHighest
MustHighest
ShouldHighest
WantHighest
DueHigh
DueNormal
MustHigh
MustNormal
ShouldHigh
ShouldNormal
WantHigh
WantNormal
DueLow
MustLow
ShouldLow
WantLow
DueLowest
MustLowest
ShouldLowest
WantLowest
UnknownHighest
UnknownHigh
UnknownNormal
UnknownLow
UnknownLowest