Skip to content
notionsolutions

A practical library for building,
organizing and working in Notion.

Workflow guides

Notion Recurring Tasks: Choose a Schedule or Repeat After Completion

Choose what starts the next task: a calendar date or the actual completion of the previous cycle. Keep deadlines, task history and duplicate checks explicit.

Published Content reviewed
A calendar schedule is contrasted with a new cycle anchored to actual completion
Calendar recurrence follows a schedule; completion-based recurrence starts from the finished task.

For a task that must exist every Monday, use a repeating database template or a scheduled database automation. For a task that should be due seven days after you finish the previous one, calculate from the actual completion date. These are different recurrence rules, even when both are called “weekly.”

I would start with the rule, then choose the smallest setup that preserves it. A client report usually belongs on a calendar: finishing last week’s report late should not move this week’s deadline. A review that needs seven days between completed sessions belongs on a completion-based cycle.

Choose what starts the next task

Match the method to the event that should start the next cycle
Your ruleChooseWhat it does
Create the same kind of task on a calendarRepeating database templateCreates a fresh page with reusable content and property defaults.
Run a defined action on a calendarDatabase automation with Every {frequency}Runs a supported action, such as adding a page or sending a notification.
Start the next interval after completionCompletion-date workflowUses Completed on as the date anchor; then you create the successor or configure an action to do it.
Notify me about an existing deadlineDate reminderDraws attention to the task; it does not create the next task.

In an educational example, a task was due October 8 but completed October 11. Adding seven days to the old due date produces October 15. Adding seven days to the completion date produces October 18. If your promise is “seven days after finishing,” the second date is the one you want.

Decide whether you need a separate record for every completed cycle. Reusing one task and changing its date keeps the list short, but its current fields no longer preserve each earlier deadline and completion. For client work where you need that history, I recommend keeping completed records and creating a fresh successor.

Before changing the setup, write down three choices: what starts a cycle, how its deadline is assigned, and whether each cycle needs its own record. Use a task database you can edit, with a Status property and a Date property for the deadline. Begin with fictional work so a new schedule cannot duplicate a real client obligation. For a calendar series, also decide what to do with an unfinished earlier occurrence: keep it overdue, cancel it deliberately, or finish it alongside the new task.

Use a repeating template for calendar work

Repeating database templates create copies on a schedule, with daily, weekly, monthly and yearly options. They suit recurring reports, meeting agendas and routine checklists. Their schedule does not wait for the preceding page to be marked Done.

  1. Open the task database’s dropdown beside New or +, then select + New template.
  2. Name the template and add the reusable page content. Set stable defaults such as Status and the task owner. Fill in a Project relation only when every copy should belong to that same project.
  3. Return to the template menu, open ••• beside the template and choose Repeat.
  4. Choose the frequency, interval, start date and creation time. Make the intended deadline clear in the task’s Date property; the time a page is created and the time its work is due are separate decisions.
  5. After the scheduled time, inspect the new page in the source database. Check its status, date, owner and project before relying on the schedule.
Template menu path from New to the template’s three-dot menu and Repeat, with weekly selected.
Repeat controls page creation. Decide the deadline policy separately.

A relation entered in a template is inherited as the same existing linked page by every copy. That is useful for a single client’s weekly report and a problem for a generic report template shared by several clients. Leave that relation empty when someone needs to choose the client or project each time.

Check Due date separately. A fixed date saved among the template’s property defaults may be inherited unchanged by each new copy; Repeat schedules page creation and does not promise to advance that deadline. Leave Due date empty and assign the correct deadline to each generated task, or use a separately documented dynamic-date setup whose behavior matches your deadline rule.

A manually created copy lets you inspect the defaults, but it does not show that the scheduled run happened. You do not need to create an initial task to activate the schedule: Notion’s documented setup finishes in the template’s Repeat settings. When the work stops, turn Repeat off in the template options; keep the earlier task records if they are still useful.

Use a scheduled automation when the action matters

A template is the straightforward choice for recreating a checklist. Choose a database automation when you need to specify an action and its destination. Notion’s Every {frequency} trigger lets you set the frequency, time, start and end dates, and timezone.

  1. Open ⚡ at the top of the database and select New automation.
  2. Add an Every {frequency} trigger and set the schedule. Record the timezone you intend the team to follow.
  3. For a new task, choose Add page to, select the target task database and set the new page’s properties. For a notification-only rule, choose the appropriate notification action instead.
  4. Select Create, then inspect the outcome after the scheduled time. If you used a temporary schedule to check the setup, pause it afterward.

Two restrictions matter before you design this: Every {frequency} cannot be paired with another trigger and does not support the Edit property action. You cannot combine it with “Status becomes Done” to turn a calendar rule into a completion rule. Choose the event you actually need.

Creating and editing the custom page-creation or property-editing automations described here requires a paid-plan user with full access to the database; guests cannot create them. Free-plan users can use existing automations supplied in templates but cannot edit them. Check access to the target database and pages as well, because an automation cannot act on restricted pages.

Repeat seven days after completion and keep the history

Use this manual cycle when the interval starts after finishing. It leaves each completed task intact and makes the next deadline visible before you create its successor. The example uses one Tasks database with Task (Title), Status and Due date (Date). Keep your existing Project relation and owner if they are relevant.

Add only the fields the cycle needs

In table view, use the + beside the right-most property to add a property, then enter its name and choose the type below. If the database has no properties yet, the control is Add property. Do not reuse a text field merely because it already displays a date: Completed on needs to be a Date, and Next due needs to be a Formula. This example calls the completed status Done; use the actual completed option in your database consistently.

Additional properties for the completion-based cycle
PropertyTypePurpose
Repeat from completionCheckboxDistinguishes these recurring tasks from one-time tasks.
Completed onDateThe actual completion date, entered as a single date without a time for this example.
Next dueFormulaCalculates the intended successor deadline.
Next task createdCheckboxRecords that you have checked the successor exists.
Cycle IDIDIdentifies the source task.
Previous cycleTextStores the source task’s Cycle ID on its successor.

Notion’s ID property assigns unique, noneditable numerical IDs to database items. Copy the displayed identifier exactly when you use it in Previous cycle; it identifies the source task more reliably than a task name shared by many weeks.

For the example rule “seven days after completion,” use this in Next due:

if(
  empty(prop("Completed on")),
  prop("Completed on"),
  dateAdd(prop("Completed on"), 7, "days")
)

This combines Notion’s documented if, empty and dateAdd functions: leave the value empty while Completed on is empty, otherwise add seven days. It calculates a date; it does not create a page or change Due date. Keep the completion property name exactly as written, or select the corresponding property in your formula editor.

Use the formula editor’s row preview to inspect a populated example and a blank completion date. October 11 should give October 18 under this date-only rule. A requirement such as “exactly 168 hours later” needs its own timestamp and timezone decisions.

Create the next cycle once

  1. Create a view named Ready for next cycle. Open the database settings, then Filter under View settings and choose Add advanced filter. In one AND group, require all four conditions: Repeat from completion is checked, Status is Done, Completed on is not empty, and Next task created is unchecked. Notion supports AND groups for combining view conditions.
  2. On the finished task, record Completed on and mark it Done. Open the eligibility view and read Next due.
  3. Before creating anything, filter the source Tasks database so Previous cycle equals this task’s Cycle ID. If a successor already exists, inspect it and correct the source marker rather than adding another.
  4. If there is no successor, create one new task. Copy the name, project and owner as needed; set Status to your active option, copy Next due into Due date, check Repeat from completion, and enter the source Cycle ID in Previous cycle. Leave Completed on empty and Next task created unchecked. The new record receives its own Cycle ID.
  5. Open the successor and verify its date and project. Only then check Next task created on the completed source.
Four conditions joined by AND: recurring checked, status Done, completion date present, and next task marker unchecked.
All four conditions must match before a task enters the handoff queue.

For a concrete handoff, suppose the completed task has Cycle ID 41, was due October 8, and has Completed on set to October 11. Next due is October 18 under the seven-day date-only rule. Search Previous cycle for the exact text 41. If there is no match, create the successor with Due date October 18 and Previous cycle 41. Its own ID is a different value; 42 below is an example, not a number you assign.

Educational example after the successor has been checked
PropertyCompleted sourceNew successor
Cycle ID4142, assigned by the database
StatusDoneYour active option, such as Not started
Due dateOctober 8October 18
Completed onOctober 11Empty
Previous cycleKeep its earlier value, if any41
Repeat from completionCheckedChecked
Next task createdChecked after verificationUnchecked
Source ID 41 retains its October 8 deadline and October 11 completion; successor ID 42 has October 18 due and Previous cycle 41.
The successor gets a new ID and deadline; Previous cycle preserves the link to the completed task.

The completed source should now disappear from Ready for next cycle because its marker is checked. The new task should stay out of that queue because it is active and has no completion date. Its Due date belongs in your normal active-task view. If either row appears in the wrong queue, inspect those four filter conditions before creating another task.

Give one person responsibility for advancing each cycle. The checkbox and identifier help you reconcile an interrupted handoff; they do not lock the database against simultaneous editors. If you stop halfway through, look up the successor before retrying. If the source is marked as advanced but no successor exists, investigate before marking anything else complete.

To stop this series before another task is created, clear Repeat from completion on the current record. If you have already created the final successor, clear that checkbox on the successor. Reopening an older completed task is not a reason to create another next cycle.

When to automate the completion handoff

Notion documents a Status set to Complete trigger, Add page to actions and trigger-page properties in action formulas. Those are the building blocks for automating a completion cycle on a paid plan. Decide first whether the action should update the existing task or create a successor; resetting a record’s Status and Due date changes the history you retain.

For a successor design, scope the automation to recurring records with a populated Completed on date, enter that date before setting the completion status, and derive the new deadline from that field. Map the task’s project and owner deliberately. Keep a way to identify and reconcile successors if a task is reopened or creation is interrupted. A marker alone is not a guarantee against duplicate creation.

I would keep the manual handoff until those decisions are settled. A formula on a row is only a calculation, and Notion supports formulas in automation actions, not triggers. Notion also warns that date calculations on empty fields can fail, so a completion date must be available when the action runs.

Check the outcome you intended

Check one occurrence in the source database before relying on a filtered dashboard. For a calendar rule, a new task should appear at the scheduled time even if the previous one is still unfinished. For the completion rule, the successor’s deadline should follow Completed on, and the earlier completed record should remain intact.

Keep recurring work in the same task database as the rest of the project when it needs the same ownership and project links. The client project tracker’s Tasks layer provides that context; add recurrence to the relevant tasks instead of building a second dashboard just for repeats.

Set up the repeat you chose