Skip to content

Filtering

Rasmus Mecklenburg edited this page Sep 16, 2026 · 1 revision

Filtering Demos

Use the search bar to find demos by name, map, recording player, server name, tags, or events(bookmarks). The search input supports plain-text searches as well as complex queries using the filter syntax.

Filter Syntax

Use key:value to search a specific field:

Filter Matches Example
name: Demo filename name:match
map: Map name map:cp_process
player: Recording player's name player:Alice
type: Demo type: pov or stv type:stv
tag: Tag text tag:review
event: Stored bookmark or killstreak value event:airshot
has:events At least one stored event has:events
has:tags At least one tag has:tags

Filter keys are lowercase. Text matching is case-insensitive and matches partial values. Search suggestions help complete filter keys and values.

Use double quotes for values containing spaces. Examples: event:"New bookmark", tag:"needs review", !player:"Some Player".

Quotes group the value but do not change matching: event:"New bookmark" still performs a case-insensitive substring search. An unclosed quote extends to the end of the query while you type.

Inside quotes, use \" for a literal double quote and \\ for a literal backslash. Apostrophes are ordinary characters. Existing backslash escapes such as tag:needs\ review also continue to work.

Autocomplete adds quotes and escapes when needed.

Negative Filters

Prefix a filter with ! to exclude matching demos.

Some examples: !has:events, !tag:review, !map:cp_process.

These find demos without stored events, without a matching tag, or not recorded on a matching map, respectively.

Combining Filters

Separate filters with spaces:

  • Different keys use AND: map:cp_process tag:review requires both.
  • Repeated positive keys use OR: map:cp_process map:cp_gullywash matches either map.
  • Every negative filter applies: !tag:review !tag:archive excludes demos matching either tag.

Examples:

Query Result
type:stv has:events STV demos with stored events
has:tags !has:events Tagged demos without stored events
has:events has:tags Demos with events, tags, or both
!has:events !has:tags Demos with neither events nor tags

Stored events are bookmarks and killstreaks attached to a demo, not the parsed match highlights shown in the timeline.

Clone this wiki locally