One database for every task

Create a database called Tasks and rename Name to Task. Add these properties:

  • Done: Checkbox.
  • Due: Date. The day you plan to do it, not only the deadline.
  • Priority: a Select: High, Medium, Low.
  • Time block: a Select: Morning, Afternoon, Evening.
  • Context: a Multi-select such as Deep work, Quick win, Errand, Call.

Keep tasks small enough to finish in one sitting. "Website" is a project. "Write the About page" is a task.

The week view

Add a Board view called This week. Group it by Due and set the grouping to Day, so each column is a date. Then filter it where Due is within this week. Show Priority and Time block on the cards.

Dragging a card to another column changes its Due date. That is how you replan the week: move cards, not text.

A Today list that carries over by itself

Add a Table view called Today with two filters: Due is on or before today, and Done is unchecked. Sort by Priority. Group by Time block if you like to plan your day in parts.

This is the to-do list that resets every day. Tomorrow it shows tomorrow's tasks, plus anything from today you did not finish, without copying a single row.

Spot late tasks

Add a formula called Overdue:

and(not(prop("Done")), not(empty(prop("Due"))), prop("Due") < today())

What it does: ticks itself for tasks that are not done and whose day has passed. Sort Today by Overdue first, then Priority, and late work stays at the top.

A label instead of a date

Dates take a moment to read. A short label is faster. Add a formula called When:

if(prop("Done"), style("Done", "gray"), if(empty(prop("Due")), style("Someday", "gray"), lets(d, dateBetween(prop("Due"), today(), "days"), if(d < 0, style(format(abs(d)) + " days late", "red"), if(d == 0, style("Today", "orange"), if(d == 1, style("Tomorrow", "yellow"), style(formatDate(prop("Due"), "dddd"), "green")))))))

What it does: shows days late in red, Today in orange, Tomorrow in yellow, and the weekday name for anything later this week.

Time blocks without a calendar app

The Time block select is a simple way to plan a day in parts. If you want exact times, give Due a time as well (open the date and switch on Include time) and add a Calendar view of Tasks set to show by week.

Plan three blocks, not twelve hours. A day planned to the minute falls apart at the first meeting that runs over.

Give tasks a reason with projects

Create a Projects database with Status (Backlog, Active, On hold, Done) and a Deadline, and add a Project relation on Tasks. Then add a rollup on Projects: Relation Tasks, Property Done, Calculate Percent checked, shown as a bar. Each project now fills up as you tick its tasks.

  • Add a Board view of Tasks grouped by Project to see what each project is waiting on.
  • When you plan the week, give every Active project at least one task in This week.

Repeating tasks

For weekly chores or a Monday report, open the New button's menu in Tasks, create a template with the task name filled in, and set it to repeat. Notion adds a new row on the schedule you choose, so it lands in the right day of your week board.

The weekly review

Create a small Weekly Reviews database with Week, Date, and three Text properties: Wins, Lessons and Next week focus. On Sunday or Monday morning, open This week, move anything unfinished to a new day, write three short lines, then fill next week's columns.

Next week focus is the important one: one sentence about what matters most next week, decided before the week starts.