> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bondata.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Simple Filter

> Filter records by field conditions using AND/OR logic

Filters records based on field values and conditions. Use it to narrow your dataset to only the records that match your criteria - for example, accounts missing an email, contacts in a specific region, or deals above a certain value.

## Configuration

| Setting        | Description                                                                           |
| -------------- | ------------------------------------------------------------------------------------- |
| **Conditions** | One or more filter conditions to apply                                                |
| **Logic**      | **AND** (all conditions must match) or **OR** (any condition matches) - default is OR |

Each condition specifies:

| Setting      | Description                           |
| ------------ | ------------------------------------- |
| **Field**    | The field to evaluate                 |
| **Operator** | Comparison operator (see table below) |
| **Value**    | The static value to compare against   |

### Supported Operators

| Operator                  | Description                           |
| ------------------------- | ------------------------------------- |
| **equals**                | Exact match                           |
| **not equals**            | Does not match                        |
| **greater than**          | Numeric/date comparison               |
| **greater than or equal** | Numeric/date comparison               |
| **less than**             | Numeric/date comparison               |
| **less than or equal**    | Numeric/date comparison               |
| **contains**              | Field value includes the text         |
| **not contains**          | Field value does not include the text |
| **starts with**           | Field value begins with the text      |
| **ends with**             | Field value ends with the text        |
| **is null**               | Field has no value                    |
| **is not null**           | Field has a value                     |

## How It Works

<Steps>
  <Step title="Add conditions">
    Click **+ Add condition** to define what records should match. Each condition compares a field against a static value.
  </Step>

  <Step title="Choose logic">
    Select **AND** to require all conditions, or **OR** to match any condition.
  </Step>

  <Step title="Chain filters">
    To combine AND and OR logic, chain multiple filter nodes sequentially - each node applies its own logic independently.
  </Step>
</Steps>

## Output

Records that match the filter conditions pass through to downstream nodes. Records that don't match are excluded.

<Tip>
  Use **Filter Insights** (button on the filter's right side) to preview how many records match before running the Agent. Requires saving the Agent first.
</Tip>

## Example

Find Salesforce Accounts missing a website:

* **Field:** Website
* **Operator:** is null
* **Logic:** OR (single condition)

Result: only accounts where the Website field is empty flow downstream.

## Best Practices

* Place filters early in your workflow to reduce the dataset before expensive operations
* Use **Filter Insights** to verify your conditions match the expected number of records
* Chain filters for complex AND + OR combinations
* For comparing fields against other fields (not static values), use the [Field Comparison Condition](/guide/nodes/condition/field-comparison-condition-node) instead

## Related Nodes

* **[Or Filter](/guide/nodes/filter/or-filter-node)** - similar filtering with explicit OR logic across conditions
* **[Basic Condition](/guide/nodes/condition/basic-condition-node)** - branches into TRUE/FALSE paths instead of just filtering
* **[Router Condition](/guide/nodes/condition/router-condition-node)** - routes records to multiple paths based on different conditions
