Advanced filtering in Baserow unlocks database-level querying power; combining multiple conditions with AND/OR logic and nested groups to find exactly what you need in tables with thousands of records.
This guide explains how to create complex filters using condition groups, nested logic, and combined criteria to build sophisticated data queries without writing code.
Advanced filtering extends basic filtering by allowing you to create condition groups, collections of filters combined with logic operators that can be nested for complex queries. While basic filters apply simple single or multi-condition rules, advanced filtering lets you build sophisticated “if-this-AND-that-OR-something-else” queries.
Condition groups work like parentheses in mathematical expressions, letting you control how filters combine. You can create filters that say “show me (high-priority AND overdue) OR (medium-priority AND assigned-to-me)” to capture nuanced data patterns that simple filters can’t express.
Advanced filtering applies across Baserow features including row filtering, row coloring conditions, and conditional form fields, giving you consistent query power throughout the platform.

Condition groups are collections of filters connected by AND or OR logic that evaluate together. Each group produces a true/false result, and these groups can be combined with other groups or individual filters to create complex queries.
| Logic type | Behavior | Result | Example |
|---|---|---|---|
| AND | All conditions must be true | Stricter, fewer results | “Status = In Progress” AND “Priority = High” (only rows matching both) |
| OR | Any condition can be true | Permissive, more results | “Status = Blocked” OR “Status = At Risk” (rows matching either) |
Simple filters: Priority = High (shows all high-priority items)
Condition group: (Priority = High AND Status = In Progress) OR (Priority = Critical) (shows high-priority items only if in progress, but shows all critical items regardless of status)
The grouped logic lets you express “show me this specific combination OR that other thing” in ways that flat filter lists cannot.
Complex business rules: Display records that meet multi-part criteria like “(customer tier = enterprise AND contract value > $100k) OR (renewal date in next 30 days)”.
Exception handling: Show standard items with one set of conditions but also include exceptions"(status = active AND last-contact < 30 days ago) OR (vip-customer = true)".
Multi-team workflows: Combine department-specific conditions like “(department = sales AND stage = negotiation) OR (department = support AND priority = urgent)”.
Date range combinations: Create complex temporal filters like “(created this year AND modified this month) OR (flagged-for-review = true)”.
Data validation: Find records that violate business rules “(required-field is empty AND status != draft) OR (approval-date is empty AND status = approved)”.
Build condition groups by adding filters and organizing them with logic operators.
To create a basic condition group:
The table updates in real-time to show only rows matching your condition group.
To create nested condition groups:
Example nested structure:
Show rows where:
(Priority = High AND Status = In Progress)
OR
(Department = Sales AND (Region = West OR Region = East))
| Strategy | Structure | Use case |
|---|---|---|
| Flat groups | All filters at same level with single logic type | Simple “all must match” or “any can match” queries |
| Single nest | One group combined with individual filters | “Show exceptions OR these specific items” |
| Multiple groups | Several groups at same level with OR logic | “Show category A OR category B OR category C” where each category has multiple conditions |
| Deep nesting | Groups within groups | Complex business rules with multiple layers of logic |
Advanced filtering powers multiple Baserow features, creating consistent behavior across the platform:
Apply condition groups in view filters to display only rows matching complex criteria. Each view maintains independent filter configurations. See basic filtering for getting started.
Use condition groups to apply colors to rows when they meet sophisticated criteria. Example: Color rows red when “(status = overdue AND priority = high) OR (days-past-due > 30)”.
Show or hide form fields dynamically based on condition groups. Example: Display “Discount reason” field when “(customer-tier = enterprise) OR (order-value > $10k)”.
Date filtering supports multiple simultaneous date conditions, letting you create precise temporal ranges.
To create combined date filters:
Example: Show records due soon
Example: Show items from specific periods

Show opportunities where:
(Stage = Negotiation AND Value > $50k)
OR
(Stage = Proposal AND Days-in-stage > 14)
OR
(Owner = Current-user AND Status = Action-required)
Result: Shows high-value negotiations, stalled proposals, and your action items.
Show customers where:
(Last-purchase-date < 90 days ago AND Support-tickets > 5)
OR
(Contract-value > $100k AND Last-contact-date < 30 days ago)
OR
(Renewal-date in next 60 days AND Health-score = Red)
Result: Identifies at-risk customers needing attention.
Show tasks where:
(Priority = Urgent AND Status != Complete)
OR
(Due-date is today AND Assigned-to = Current-user)
OR
(Blocked = true AND Days-blocked > 3)
Result: Your urgent tasks, today’s assignments, and long-blocked items.
Basic filtering uses a flat list of conditions with single AND or OR logic throughout. Advanced filtering lets you create nested condition groups with different logic at each level, enabling complex queries like “(this AND that) OR (something else)”.
There’s no fixed limit on nesting depth or number of groups. However, for performance and maintainability, keep filters as simple as possible while meeting your needs. Very complex filters may slow view loading on large tables.
Condition groups are saved with each view. To reuse a complex filter, duplicate the view or create a template view with your filter configuration, then customize it for new use cases.
Yes, condition groups support all field types and their respective operators. You can mix different field types within the same group; for example, combining text, date, and number filters in one condition group.
Yes, each feature maintains its own independent condition groups. Your view might filter rows with one set of conditions while coloring the visible rows with completely different condition groups.
Check the row count displayed in the filter panel to verify results. If the count seems wrong, try simplifying your filter by testing one condition at a time, then gradually adding complexity. The real-time preview helps validate your logic.
Still need help? If you’re looking for something else, please feel free to make recommendations or ask us questions; we’re ready to assist you.