> For the complete documentation index, see [llms.txt](https://docs.smaq.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.smaq.io/documentation/features/dashboard/mastering-dashboard-filters/limitations-and-tips.md).

# Limitations and Tips

#### 1. Connector Support (Major Limitation)

The visual filter menus work automatically only for specific integrations.

* Supported: Works seamlessly with standard marketing APIs like Google Analytics 4 (GA4), Facebook Ads, Google Ads, TikTok, LinkedIn, and the other native integrations.
* Not Supported (SQL/Databases): The standard filter UI does not work for direct database connections (PostgreSQL, MySQL, BigQuery, ClickHouse, Microsoft Azure SQL, MongoDB).
  * *The Workaround:* For SQL sources, use Parameters (variables like `${start_date}`) directly inside your SQL code rather than using the visual filter panel. See [Create project datablocks → Path 2 (SQL)](/documentation/features/datablocks/create-project-datablocks.md) for the parameter syntax.

#### 2. The "AND" Rule (No "OR" Groups)

Filters are designed to narrow data down, not broaden it.

* "AND" Logic Only: If you add multiple filters, the system requires ALL of them to be true.
  * *Example:* Filter A (`City = New York`) + Filter B (`Device = Mobile`).
  * *Result:* Shows only users who are in New York AND on Mobile.
* No "OR" Conditions: You cannot ask the system to "Show all users from New York OR all users on Mobile."

#### 3. Strict Data Binding

Filters are strictly "loyal" to the specific data source they were created for.

* No Cross-Source Filtering: A filter set for "GA4 Property A" will not change a chart connected to "Facebook Ads," even if they both have a "Date" field.
* The Implication: If your dashboard mixes sources (e.g., a Facebook chart next to a GA4 chart), you must create separate filters for each data source at the Dashboard level.

#### 4. "All-or-Nothing" Inheritance

Inheritance is a binary switch—there is no middle ground.

* No Partial Picking: A chart cannot choose to "inherit the Date filter but ignore the Country filter."
* The Rule: If "Inherit Filters" is ON, the chart accepts every filter from the Dashboard and Page. If OFF, it blocks everything.

#### 5. Value Limitations

The system compares your data against fixed values, not dynamic logic.

* Static Values Only: You can filter for `Revenue > 1,000`.
* No Field-to-Field Comparison: You cannot filter based on another dynamic field (e.g., you cannot set a rule for `Revenue > Ad Spend`).
* No Regex: Advanced pattern matching (Regular Expressions) is not supported. You are limited to standard rules like *Equals, Contains, Greater Than,* etc.

***

#### ⚡ Quick Tips for Common Scenarios

Scenario A: The "Side-by-Side" Comparison

* *Goal:* Compare "Mobile" vs. "Desktop" on the same page.
* *Fix:* Create two identical charts. Turn "Inherit Filters" OFF for both. Manually set one chart's filter to "Mobile" and the other to "Desktop."

Scenario B: The "Multi-Channel" View

* *Goal:* See data for Facebook and LinkedIn combined, excluding Google.
* *Fix:* Within a single filter category (e.g., "Source"), selecting multiple checkboxes acts as an OR. Checking both "Facebook" and "LinkedIn" allows data from either source to show.

Scenario C: Presenting to Clients

* *Goal:* Ensure a client only sees "Paid Search" data and no Organic traffic.
* *Fix:* Apply a Dashboard Level filter for `Medium = cpc`. Because inheritance flows down, this "locks" the whole report to Paid Search, ensuring no Organic data leaks into the view even if you drill down.
