Skip to main content
Filters change the data pulled into your charts. A chart showing revenue over time becomes revenue from France with a filter for country is equal to France. This page covers how filters combine, the filter types available on each kind of field, and the SQL that timestamp and date filters compile to. For adding filters, see filtering in the Explore view and dashboard filters.

Working with filters

These behaviors are the same wherever you’re filtering.

Adding more than one filter

Click + Add filter to add another condition. In the Explore view:
Adding a second filter in the Explore view
Or on a dashboard:
Adding a second filter to a dashboard

Matching ALL or ANY of the conditions

With multiple filters, the drop-down menu at the top-left chooses whether all conditions must match or any of them can.
The ALL or ANY selector above a set of filters
ALL puts an AND between your conditions in the compiled SQL:
ANY puts an OR between them:
To mix the two, open a filter’s three-dot menu and select Convert to group. The filter moves into a nested group with the opposite setting, and Add group rule adds more conditions to it. For example, to show the last three full months plus the current month so far, put in the last 3 completed months and in the current month on the same date field in an ANY group. The menu appears once a chart has two or more filters. Dashboard filters always combine with AND. They have no ANY option and can’t be grouped, so build OR logic into the chart’s own filters instead.

Filtering on multiple values

Hit enter between each value to include several in one filter.
A filter holding several values
The listed values are separated by an OR in the compiled SQL, so the filter above gives:

Uploading a CSV of filter values

For a long list of values on a string filter — hundreds or thousands of customer IDs or product SKUs — upload a CSV instead of typing each one:
  1. Open the filter dropdown for a string field.
  2. Click Upload CSV.
  3. Select a CSV containing your filter values, one value per row or a single column.
The values from your CSV are added to the filter. Developers can add permanent filters to tables with the sql_filter YAML option. See table configuration.

Filter types

Numeric filters

String filters

Boolean filters

Date filters

For week, month, quarter, and year, the “in the current” and “not in the current” filters can switch the period to a to date variant — “week to date”, “month to date”, and so on — that runs from the start of the period up to today. In this mode, an Include today checkbox (checked by default) controls whether today is part of the range; uncheck it to end the range at yesterday. For “in the last”, “not in the last”, and “in the next”, picking a completed unit, such as completed months, lines the range up with whole calendar periods and leaves out the current, partial one. Completed means whole, not already past: in the last 3 completed months is the three full months before this one, and in the next 3 completed months is the three full months after it. To leave out the most recent periods, combine two filters with ALL: in the last 54 completed weeks and not in the last 2 completed weeks give the 52 full weeks before the last two. Use completed units on both filters, or the cutoff moves day by day instead of falling on a week boundary.

Date/Timestamp Filter Reference Guide

The below examples show possible date/timestamp filter combinations and their corresponding SQL outputs. All examples use BigQuery syntax and assume:
  • Current timestamp: 2025-10-24 15:30:00
  • Example field: orders.created_at
  • Timezone: UTC
  • Week starts on Monday

Timestamp filter examples

Current Period Filters

Current (In The Current)

Past Period Filters

Last N Periods (in the last)
Last N Completed Periods (in the last, Completed)

Future Period Filters

Next N Periods (In The Next)
Next N Completed Periods (In The Next, Completed)
Within Custom Range

Notes

  1. Completed periods always:
    • Start at the beginning of a period (00:00:00)
    • End at the beginning of the next period
    • Don’t include partial periods
  2. Rolling periods (non-completed):
    • Use the current time as the reference point
    • Look backward/forward the specified amount
    • Include partial periods
  3. Current periods:
    • Always start at the beginning of the current period
    • End at the beginning of the next period
    • Example: Current month starts at 1st of the month
  4. Week handling:
    • By default, weeks start on the default day configured in your database
    • You can configure this to a different day in your database connection settings
    • Week boundaries are always at midnight (00:00:00)

Date filter examples

Current Period Filters

Current (In The Current)

Past Period Filters

Last N Periods (in the last)
Last N Completed Periods (in the last, Completed)

Future Period Filters

Next N Periods (In The Next)
Next N Completed Periods (In The Next, Completed)
Within Custom Range

Notes

  1. Key differences from timestamp filters:
    • No time components in any filters
    • Single day comparisons use equality (=) instead of ranges
    • DATE() function used instead of TIMESTAMP()
  2. Completed periods always:
    • Start at the beginning of a period
    • End at the beginning of the next period
    • Don’t include partial periods
    • For single days, use equality instead of ranges
  3. Rolling periods:
    • Use the current date as the reference point
    • Count in full days (N days forward/backward)
    • Include the current date in the range
  4. Current periods:
    • For single day: use equality
    • For longer periods: use standard ranges
    • Example: Current month is all days from 1st to last day
  5. Week handling:
    • Weeks start on Monday by default
    • Can be configured to start on Sunday
    • Full days only, no time components