Skip to content

Recurring tasks

A recurring task never leaves your list. Completing an occurrence advances its due date instead of marking the task done.

Set a rule from the Repeats control in the task composer or the task view, by typing it into the task name (Water plants every 3 days), or through the API. The control carries the common presets and a custom dialog for any interval, weekday or day of the month, so a rule never has to be typed. A rule always requires a due date; clearing the due date clears the rule.

Most rules start with every. The adverbs daily, weekly, monthly, yearly, annually and fortnightly also stand on their own. The every! variant is described below.

Rule Meaning
every day Daily
every week Weekly
every month Monthly
every year Yearly
every 3 days Every three days
every 2 weeks Fortnightly
every 6 months Every six months
every other day Same as every 2 days
every other week Same as every 2 weeks
every other month Same as every 2 months
every 2 years Every two years
every other year Same as every 2 years
every fortnight Same as every 2 weeks

every 1 week is normalised to every week. Days, weeks, months and years all take a count, from 1 to 999.

Rule Meaning
every monday … every sunday That weekday, weekly
every mon, every tue, … Three-letter forms work too
every weekday Monday to Friday
every weekend Saturday and Sunday
every mon, wed, fri Those weekdays each week
every mon and wed Same, with and instead of a comma
every other friday Fortnightly, keeping the original fortnight
Rule Meaning
every 2nd friday The second Friday of each month
the first friday of every month The same rule, written out
every last friday The last Friday of each month

Counts run from the first to the fifth. every 5th monday skips any month without a fifth Monday rather than falling back to the fourth.

Rule Meaning
every 1st … every 31st That day each month
every last day The last day of each month

Day-of-month rules clamp to the length of the month: every 31st lands on 30 April and 28 February, then returns to the 31st in a 31-day month. The anchor never drifts, because each step is counted from the original month rather than from the clamped date.

A repeat rule never carries a time. every day at 07:00 sets a daily rule and a due time of 07:00, which are two separate fields on the task.

biweekly and twice a week are left alone on purpose, because neither says which schedule is meant. If Conatus does not recognise a phrase, it stays in the task name and no rule is set.

The next occurrence is always strictly after the current due date and never in the past. An overdue weekly task does not replay every date it missed. It jumps forward to the next occurrence that is in the future.

every other <weekday> is the exception that preserves parity: the fortnight is anchored on the original due date, so a long-overdue fortnightly task catches up to the next date that keeps the same alternate-week rhythm, rather than resetting to “next Friday from today”.

Prefixing with ! restarts the schedule from the day you complete it, instead of stepping from the old due date:

Change the water filter every! 3 months

Complete that two weeks late and the next occurrence is three months from today, not from the date it was originally due. Use it for anything where the interval since you last did it is what matters.

All recurrence maths is calendar-date arithmetic on YYYY-MM-DD strings. A due time is stored separately and is never shifted, so a daylight-saving transition cannot move an occurrence by a day. every day at 07:00 stays at 07:00 wall clock on both sides of the change.

A recurring task can have a Repeat ends date, set from the task view. It is inclusive: an occurrence falling exactly on the end date is valid.

When completing an occurrence would advance past the end date, the task is completed for real instead. It leaves the list and appears on Completed. Undo handles both cases: it restores the previous due date for a normal occurrence or un-completes the final one.

The end date cannot be earlier than the due date and cannot be set on a task with no repeat rule.

Recurring completions are written to the server immediately, unlike ordinary completions which wait out the undo toast. The row stays on screen with its new date, and the toast offers a real inverse rather than cancelling a write that has not happened yet.

  • The due chip shows a repeat icon next to the date, with the rule as its accessible label.
  • The task view shows the rule and the end date in the Repeats rail row.
  • Project templates carry repeat rules across, since they are dateless.
  • Todoist imports translate recurring due strings into Conatus rules where the grammar matches; anything unrecognised is flagged for review during the import preview.