Filters provide custom filtering beyond segments. Use filters for specific IDs, numeric thresholds, or OR logic.
Note
Understanding Filter Logic: Multiple filters in an array are combined with AND logic. However, the equals operator with multiple values uses OR logic (e.g., "location A OR location B"). This allows you to combine AND logic between different filter conditions while using OR logic within a single condition.
{ "member": "Cube.dimension", "operator": "equals", "values": ["value1", "value2"] }
| Operator | Description | Example |
|---|---|---|
equals | Exact match (OR with multiple values) | "values": ["L123"] |
notEquals | Not equal | "values": ["L123"] |
contains | String contains | "values": ["cafe"] |
notContains | String doesn't contain | "values": ["test"] |
startsWith | String starts with | "values": ["L"] |
endsWith | String ends with | "values": ["ABC"] |
gt | Greater than | "values": ["100"] |
gte | Greater than or equal | "values": ["100"] |
lt | Less than | "values": ["100"] |
lte | Less than or equal | "values": ["100"] |
inDateRange | Date in range | "values": ["2024-01-01", "2024-01-31"] |
notInDateRange | Date not in range | "values": ["2024-01-01", "2024-01-31"] |
set | Value is not null | No values needed |
notSet | Value is null | No values needed |
{ "measures": ["Orders.net_sales"], "filters": [{ "member": "Orders.location_id", "operator": "equals", "values": ["L1234567890ABC"] }] }
{ "measures": ["Orders.net_sales"], "filters": [{ "member": "Orders.location_id", "operator": "equals", "values": ["L1234567890ABC", "L9876543210XYZ"] }] }
Returns net sales from location A OR location B—the equals operator with multiple values uses OR logic.
{ "measures": ["Orders.net_sales"], "filters": [{ "member": "Orders.location_id", "operator": "notContains", "values": ["test"] }] }
{ "measures": ["Orders.net_sales"], "dimensions": ["Orders.location_id"], "filters": [{ "member": "Orders.net_sales", "operator": "gte", "values": ["1000"] }] }
{ "measures": ["Orders.net_sales"], "filters": [ { "member": "Orders.location_id", "operator": "equals", "values": ["L1234567890ABC"] }, { "member": "Orders.sales_channel_id", "operator": "equals", "values": ["online"] } ] }
All filters are combined with AND logic.
| Use Filters When | Use Segments When |
|---|---|
| Filtering by specific IDs | Applying common business logic |
| Dynamic user-selected filters | Ensuring report consistency |
| One-off analysis | Matching dashboard behavior |
| Numeric thresholds | Predefined filter combinations |
| OR logic needed | AND logic sufficient |