Dates in Tana give you the power to connect all your data in relation to time, and to resurface data that is the most important to you now.
There are two important ways that Tana treats date information. Date objects are a concept of time that you can link to, meanwhile a calendar node is a place in the graph you can write on that is related to a date. The two are intertwined but not the same.
Date objects can be mentioned on any node using @-mention. They have flexible date granularities so you can be as broad or specific as you want to be, allowing you to say "meet Henry at 2:15pm tomorrow", as well as "yearly goal for 2024".
Calendar nodes are what drive your daily page. They are automatically set up for days, weeks, months, and years, and allow you to take notes and set up searches that capture items in those date intervals.
@today in Tana, and you'll see it bring up today's date.
@Wednesday last week, or
@5pm next Saturday. Once you have a date object, you can click it to bring up the date picker.
-101" = "
101 BC" = "
-100" in astronomical years
create default day/week/month/year tag" on the calendar node to create them.
today at 5pm", "
Nov 15", "
last month", "
in two weeks".
add end. Use
remove end to remove the range.
@[date] to [date]. Example:
@Nov 21 to Nov 30
Alt+click the date object to navigate to that corresponding calendar node
Go to calendar date node/
Open calendar date node in new panel
Week 45, or
November 2023, you can
Alt+click to navigate to that corresponding calendar node
✨NEW You can also right-click the Today button under the title to navigate to this week/month/year.
change workspace to a different one.
create default day/week/month/year tag".
At the bottom of each node is a reference section. For calendar nodes, it will collect all nodes in the workspace that mention that particular date granularity, either mentioned in name or in a field. Example: week nodes will capture any node that have date objects using the
Week WW granularity, month nodes will capture
November YYYY granularity and so on.
There are many search operators that are specifically designed to handle date queries, as well as general purpose numeric ones that work with date queries as well.
LT/GT is the only field operator in this list. Find nodes with date that are Less Than/Greater Than a particular date. Less = earlier, greater = later.
To use LT/GT, insert a date field and the value to compare to. Example: To find all appointments you've had up until a certain date, you can build a search like this:
>LT: >Appt date: [Date object]
If the value you access through
PARENT.field is a date value, you can increment/decrement it using +/-. For example, to find all the tasks due during the next three days on a daily node, write a search like this:
>GT: >Due Date: PARENT
>LT: >Due Date: PARENT+3
Use a date object to find any node that mentions that date as a date object.
A keyword operator that matches any node that mentions that date as a date object.
Insert a date in the YYYY-MM-DD format, like this:
FOR DATE 2023-11-21
A keyword operator that matches with calendar nodes.
Is most useful for excluding from searches:
>NOT: IS CALENDAR NODE
A keyword operator that matches children of any #day node
Several search operators will look for nodes with date values within (NUMBER) of days:
DONE LAST (N) DAYS
CREATED LAST (N) DAYS
EDITED LAST (N) DAYS
The search operator OVERDUE only works when used in tandem with system field Due date.
We discourage using Due date because system fields in general are very inflexible. They cannot be configured and customized like other user-created fields with default hide state, default value, auto-initialization and so on.
We can now replicate the functionality of OVERDUE for any date field using LT/GT.
For more date-related searches, check this FAQ out.
GRANDPARENT refers to the immediate ancestors in the outline hierarchy relative to the search node.
If the parent/grandparent is a calendar node, you can add these search operators as a date field value. This will replace the field value with the date represented by the calendar node.
Example: If you create search nodes on your day node, you can use PARENT/GRANDPARENT to fetch all #tasks that are due today (PARENT), or this week (GRANDPARENT)
You can use
PARENT-3 to find future/past dates relative to the target. See LT/GT for more.
If a node has a date field, you can use PARENT.field to target that field value for date searches. See LT/GT for more.
Add this in the date field value, and it will be replaced with a date that is relative to the current date.
Compare PARENT/GRANDPARENT with FOR RELATIVE DATE, the former let's you look back at what you wrote yesterday relative to the calendar node you're on, whereas the latter shows results relative to today's values (which will change every day), and can be placed anywhere in the graph (not just nested as a child/grandchild of a calendar node).
Accepts the following parameters
Unfortunately we don't have a search expression that can be used in a node filter for dates that have a start/end or not.
See Command nodes > Insert relative date for more.
Date fields used in supertags can be made to auto-populate a date upon use. Use a date field in the supertag config, and the following auto-initialize options will be available:
Every node stores a some default system fields that record date/time information based on certain events. This information are not editable, but can be queried.
See any list of nodes plotted in a calendar.
For more, see Views > Table view
Create a search node under a day/week/month to see all captured items from that period.
Insert relative date command, here's an example:
PARENT in the field value of the Date field of the task.
GRANDPARENT in a date field:
+3 (use any number) to hit a specific date before/after the
PARENT date, respectively. Example:
PARENT+3 = Any match on date 3 days from today
LT search operators (greater than or less than) together with
PARENT to match a range of dates before/after today. Example:
FOR RELATIVE DATE [term] as keyword field value for the Date field of the task, and insert
today as the term, without the brackets.
It depends on what you want to find, the context of the search (which part of the graph it is made in), and the time scale/granularity you are looking for.
Below are possible queries you can use to find date-related things in Tana. A quick legend:
> : Typing this key starts a field anywhere in Tana, so we prefix fields with this sign when writing out queries in text
LT/GT : Less than/Greater than field operators
text : Text in this style is meant to be written out
FOR RELATIVE DATE today
FOR RELATIVE DATE this/last/next week
WITH REFS to include references in the search
X with a number)
CREATED LAST X DAYS
EDITED LAST X DAYS
DONE LAST X DAYS
To read about these search operators and more, check out Search Operators