Skip to main content

Dashboard Filters

Starter+

Dashboard filters let viewers slice and dice every chart on a dashboard simultaneously, without modifying the underlying chart configuration. CalabiIQ uses native filters — a built-in, high-performance filter system that ships as a collapsible sidebar.


Filter Architecture

Each filter targets a column in one or more datasets. When a viewer selects a value, CalabiIQ appends a WHERE clause to every chart query within the filter's scope.


Filter Types

Filter TypeUse CaseExample
ValueSelect one or more values from a categorical columncountry IN ('US', 'UK')
Numerical RangeRestrict a numeric column to a min/max rangescore BETWEEN 60 AND 100
Time RangeFilter all time-series charts to a date rangeexam_date BETWEEN '2025-01-01' AND '2025-12-31'
Time GrainChange the time grouping (day/week/month/quarter/year)DATE_TRUNC('month', exam_date)
Custom SQLAny arbitrary WHERE clauseLOWER(email) LIKE '%@yourcompany.com'

Adding a Native Filter

  1. Open the dashboard in Edit mode (click the pencil icon, top-right).
  2. Click the Filters icon (funnel) in the left sidebar.
  3. Click + Add filter / divider.
  4. Choose a filter type from the dropdown.
  5. Configure the filter fields (see sections below).
  6. Click Save to apply.
note

You must be a dashboard owner or Admin to add or edit filters. Viewers can use filters but cannot change their configuration.


Configuring a Value Filter

Value filters present a dropdown or multi-select widget populated from a column's distinct values.

FieldWhat to set
Filter nameDisplay label in the filter bar (e.g., Country)
DatasetThe dataset whose column provides the filter values
ColumnThe column to filter on (e.g., country_name)
Filter typeValue
Multiple selectAllow selecting more than one value
Search all filter optionsFetch all distinct values (use for low-cardinality columns)
Default valuePre-selected value(s) when the dashboard first loads

Scoping a filter to specific charts

By default, a filter applies to all charts whose datasets contain the filtered column. To restrict scope:

  1. In the filter configuration panel, click Scope.
  2. Deselect charts you want to exclude.
  3. Click Save.

Configuring a Numerical Range Filter

  1. Add a filter and choose type Numerical range.
  2. Select the Dataset and Column (must be numeric).
  3. Set optional Min and Max bounds for the slider.
  4. Choose whether to render as a Slider or Input fields.

Example use case: Allow viewers to filter exam scores between 0 and 100.


Configuring a Time Range Filter

The Time Range filter is the most powerful filter type — it drives the time window for all time-series charts on the dashboard.

  1. Add a filter and choose type Time range.
  2. Optionally set a Default date range (e.g., Last quarter, This year).

Time range selector options

OptionDescription
Last day / week / month / quarter / yearRolling relative windows
Previous calendar periodPrevious full month, quarter, or year
Custom rangeExact start and end dates
No filterShow all data regardless of date
tip

Use Last quarter as the default for operational dashboards — it gives immediate context without overwhelming users with too much historical data.


Configuring a Custom SQL Filter

For cases where no standard filter type fits your requirements:

  1. Add a filter and choose type Custom SQL.
  2. Write a SQL WHERE clause fragment (without the WHERE keyword):
-- Only show data from active candidates in EMEA
region = 'EMEA' AND candidate_status = 'active'
  1. Map the filter to the relevant datasets using Scope.
warning

Custom SQL filters are static — viewers cannot change them at runtime. Use them for permanent editorial restrictions, not interactive slicing.


Time Grain Filter

The Time Grain filter lets viewers change how time-series data is grouped without rebuilding charts.

Example: A line chart showing daily exam volumes can be dynamically grouped by week or month by the viewer — just add a Time Grain filter and map it to the relevant charts.

  1. Add a filter, choose Time grain.
  2. Select which grains to expose: Day, Week, Month, Quarter, Year.
  3. Set a Default grain.

Cross-Filtering

Cross-filtering enables charts to act as interactive filters for other charts on the same dashboard. When a viewer clicks a bar in a bar chart, all other charts filter to match that selection.

Enabling cross-filtering

  1. Open the dashboard settings (pencil icon → ···Dashboard properties).
  2. Enable Cross-filtering.
  3. Click Save.

How it works

Cross-filter values are shown as chips in the filter bar. Click the × on any chip to remove that cross-filter.


Filter Bar Position

The filter bar can be placed on the left (default) or across the top of the dashboard.

  1. In Edit mode, click ···Edit dashboard.
  2. Toggle Filters on top in the panel.
  3. Click Save.

Left sidebar is recommended for dashboards with many filters. Top bar works better for dashboards with 1–3 quick-toggle filters.


Filter Interactions

Filter dependencies

You can make one filter depend on another — e.g., a City filter that only shows cities within the selected Country.

  1. Open the filter you want to make dependent (e.g., City).
  2. Check Pre-filter available values.
  3. Choose the parent filter (e.g., Country).
  4. Save.

Now the City dropdown automatically narrows to cities in the selected country.


Dashboard Filter URL State

Filter selections are encoded in the dashboard URL, making it easy to share a pre-filtered view:

https://calabi.yourdomain.com/bianalyst/dashboard/42?
native_filters_key=<encoded-filter-state>

Use the ShareCopy permalink button to capture the current filter state into a shareable URL.


Filter Reference

FeatureSupported
Multiple simultaneous filtersYes
Cascading (dependent) filtersYes
Cross-filteringYes
Default filter valuesYes
Time range filterYes
Custom SQL filterYes
Scoping to specific chartsYes
Shareable filter state via URLYes
Filter bar on topYes
Filter bar on leftYes