KosshiKosshi

Search Reference

This is a reference for search conditions. See Search for the basic workflow.

Choose what to search

Use in: to limit ordinary text searches to one part of a row.

ExpressionSearches
in:note projectNote text only
level:2Rows at hierarchy level 2; the top level is 0
sort:dateSort results by date, oldest first
sort:date-descSort results by date, newest first

in:note changes only where the words in the query are searched. It does not narrow rows by itself, so add words to search, such as in:note project. To find rows that have notes, use has:note.

State, resources, and links

PrefixValues and examplesMatches
is:complete, incomplete, bookmarked, unbookmarkedRow state
has:image, sketch, file, attachmentRows with the selected resource
has:tag, #, @Rows containing the selected tag kind
has:link, note, dateRows with a link, note, or dated tag
backlinks:Type backlinks: and choose a row from the candidatesRows that link to the selected row

The backlink condition is usually easiest to create by selecting the number shown beside a row with backlinks. This opens a search for rows that link to that row. You can also type backlinks: to show candidates and choose a row from the list. See Internal Links for the visual workflow.

Exclude conditions

Put - before a word or condition to show rows that do not match it. Use NOT before parentheses to exclude a group.

ExpressionMatches
-has:imageRows without images
-is:completeRows that are not complete
-tag:workRows without #work or @work
is:bookmarked -has:imageBookmarked rows without images
NOT (bug OR crash)Rows containing neither bug nor crash

To search for text that begins with -, put it in quotation marks, such as "-foo".

Tags and tag values

For ordinary tag searches, put # or @ before the tag. You can also use tag: to limit the tag kind. Use parentheses when you write a value on an @tag, and specify that value after : in Search. The tag kind and value must match; letter case does not matter. If the value contains spaces, use the parenthesized form such as @todo(every monday).

ExpressionMatches
#work#work and its child paths
@work@work
tag:work#work or @work
tag:#work#work and its child paths
tag:@work@work
@status:done@status(done)
@todo(every monday)@todo(every monday)

When a value after : can also be read as a date or number, the search matches both. For example, @label:today matches @label(today) and an @label dated today. To match only the text, use quotation marks: @label:"today".

For a specific numeric tag, search for an exact value or an inclusive range:

ExpressionMatches
@estimate:3@estimate(3)
@estimate:>=3Values of 3 or more
@estimate:<3Values below 3
@estimate:3..8Values from 3 through 8, including both ends

Dates

There are three date searches. created: and modified: refer to the row's creation and modification dates. date: searches every dated @tag; @kind: searches only the specified @tag kind, such as @deadline:.

Use @deadline:today when you want to search only @deadline tags. Use date:today when you want to search across all dated tags, regardless of their tag names.

ExpressionMatches
created:todayRows created today
created:7dRows created in the last 7 days, including today
modified:30dRows modified in the last 30 days, including today
created:this-weekRows created this week
created:last-monthRows created last month
created:2026-04-15Rows created on the specified date
modified:todayRows modified today
date:todayRows with any dated @tag today
date:next-weekRows with any dated @tag in the next calendar week
@deadline:tomorrowRows whose @deadline is tomorrow
has:dateRows with any dated @tag

The available relative date values are:

ExpressionValues
created:, modified:today, yesterday, Nd (for example, 1d or 7d), this-week, last-week, this-month, last-month, this-year, last-year
date:, @kind:today, tomorrow, yesterday, last-week, this-week, next-week, last-month, this-month, next-month, last-year, this-year, next-year

Weeks start on Monday. 7d means the last 7 days including today, while last-week means the previous calendar week.

Date input formats can be set in Date Input. Complete ISO dates always work.

Add >, <, >=, or <= to search for dates before or after a specified date. >= and <= include the specified date; > and < exclude it. For created: and modified:, compare with today, yesterday, or a specific date.

For creation and modification dates, you can also use the directional filters created-after:, created-before:, modified-after:, and modified-before:. The -after: forms include the specified date; the -before: forms exclude it. These filters accept a single date such as today or 2026-04-01.

ExpressionMatches
created-after:2026-04-01Rows created on or after April 1, 2026
created-before:2026-04-30Rows created before April 30, 2026
modified-after:2026-04-01Rows modified on or after April 1, 2026
modified-before:2026-04-30Rows modified before April 30, 2026
ExpressionMatches
created:>=2026-04-01Rows created on or after April 1, 2026
modified:<todayRows last modified before today
date:<todayDated @tag values before today, such as overdue items
date:<=todayToday and earlier, including today
date:>todayAfter today
@deadline:>=2026-09-10September 10, 2026 and later, including that date
@deadline:<2026-09-10Before September 10, 2026

Use .. for an inclusive range. Both endpoints are included:

ExpressionMatches
date:2026-09-10..2026-09-20Any dated @tag from September 10 through September 20
@deadline:2026-09-10..2026-09-20@deadline values in that range
date:9/10..9/20Yearless dates in the selected yearless date order