Skip to main content

Email Filters

Email filters provide powerful control over when automated emails are sent. Unlike field-level filters that show or hide individual fields within an email, email-level filters determine whether an entire email should be sent based on aggregate conditions across all analysis results.
Email filters are applied before an email is generated. If the filter conditions aren’t met, no email is sent at all, helping reduce inbox noise and ensure recipients only get truly relevant notifications.

Understanding Email Filters vs Field Filters

Fabius offers two types of filtering for email subscriptions:
Filter TypePurposeConfiguration LocationExample Use Case
Email FilterControls whether an email is sent at allEmail Template configurationOnly send emails when any score is below 3
Field FilterControls which fields appear within a sent emailIndividual field settingsHide individual scores unless they’re extreme values
Email filters evaluate conditions across all scores and fields in the analysis, while field filters only affect the visibility of individual fields.

Accessing Email Filters

Email filters are configured at the template level:
  1. Navigate to Settings → Subscriptions → Email
  2. Click on a template to open its configuration
  3. Look for the “Email Filter” section near the top of the page
  4. Click “Edit Filter” to open the visual filter builder
Only users with permission to edit email templates can modify email filters.

Visual Filter Builder

The visual filter builder provides an intuitive interface for creating complex filter conditions without writing code.

Basic Interface

The filter builder displays your conditions in a tree structure:
  • Conditions: Individual rules that evaluate to true or false
  • Groups: Containers that combine multiple conditions with AND/OR logic
  • Drag & Drop: Reorganize conditions and groups by dragging them

Available Condition Types

Score-Based Conditions

ConditionDescriptionExample
Any score ≥At least one field has a score greater than or equal to the thresholdAny score ≥ 8
Any score ≤At least one field has a score less than or equal to the thresholdAny score ≤ 3
All scores ≥Every field with a score meets or exceeds the thresholdAll scores ≥ 7
All scores ≤Every field with a score is at or below the thresholdAll scores ≤ 5
Field score ≥A specific field’s score meets or exceeds the thresholdBudget score ≥ 8
Field score ≤A specific field’s score is at or below the thresholdAuthority score ≤ 4

Aggregate Conditions

ConditionDescriptionExample
Average scoreCompare the average of all scoresAverage score > 7
Maximum scoreCompare the highest scoreMaximum score ≥ 9
Minimum scoreCompare the lowest scoreMinimum score < 3
Score countCompare the number of fields with scoresScore count > 5

Field Presence Conditions

ConditionDescriptionExample
Has fieldCheck if a specific field has any valueHas field “Next Steps”

Building Filter Logic

Creating Simple Filters

  1. Click “Add condition” to add your first rule
  2. Select the condition type from the dropdown
  3. Configure the parameters (field name, threshold value, operator)
  4. The filter automatically saves as you make changes
Scenario: Only send emails for low-performing calls
  1. Add condition: “Any score ≤ 3”
This creates a simple filter that triggers emails only when at least one score is 3 or below.

Creating Complex Filters with Groups

For more sophisticated logic, use groups to combine conditions:
  1. Click “Add group” to create an AND or OR container
  2. Add conditions or nested groups within
  3. Select whether conditions should use AND (all must be true) or OR (any must be true) logic
Scenario: Send emails for either very good or very poor performance
  1. Create an OR group
  2. Add condition: “Any score ≥ 9”
  3. Add condition: “Any score ≤ 2”
This sends emails when scores indicate exceptional performance (good or bad).

Advanced Multi-Level Filters

You can nest groups to create sophisticated logic:
Scenario: Alert on poor performance with high volume
  1. Create an AND group (root level)
  2. Add condition: “Any score ≤ 3”
  3. Add a nested OR group
  4. In the OR group, add:
    • “Score count > 10”
    • “Has field Critical Issue”
This sends emails only when there are low scores AND either many fields were scored OR a critical issue was identified.

Drag and Drop Organization

The visual builder supports full drag-and-drop functionality:
  • Reorder conditions: Drag conditions up or down within a group
  • Move between groups: Drag conditions from one group to another
  • Create nested structures: Drag groups inside other groups
  • Flatten groups: Drag all conditions out of a group to remove it
When dragging, a blue drop indicator shows where the item will be placed. Drop zones appear above and below existing items.

Common Filter Patterns

Performance-Based Filtering

Coaching Alerts

Only send emails when improvement is needed:
Any score ≤ 3

Excellence Recognition

Celebrate high performance:
All scores ≥ 8 AND Score count ≥ 5

Exception Reporting

Focus on outliers:
Any score ≤ 2 OR Any score ≥ 9

Volume-Based Filtering

Comprehensive Analysis Only

Only send emails with substantial content:
Score count > 10

Quality Over Quantity

High-quality analysis with sufficient data:
Score count ≥ 5 AND Average score ≥ 7

Field-Specific Filtering

Critical Field Focus

Send emails when specific important fields score poorly:
"Decision Criteria" score ≤ 3 OR "Economic Buyer" score ≤ 3

Presence-Based Triggers

Send when certain fields are populated:
Has field "Competitor Mentioned" OR Has field "Feature Request"

Understanding Filter Behavior

Evaluation Process

  1. After Analysis: Filters are evaluated after an analysis completes
  2. Before Email Generation: If the filter returns false, no email is generated
  3. All Scores Available: The filter has access to all scores and fields from the analysis
  4. Real-time Evaluation: Each analysis is evaluated independently

Automatic Group Flattening

The filter builder automatically optimizes your logic:
  • Nested groups with the same operator (AND/OR) are flattened
  • Single-condition groups are unwrapped
  • This ensures the most efficient evaluation without changing the logic
Example: OR(A, OR(B, C)) automatically becomes OR(A, B, C)

Empty and Default Filters

  • No filter configured: All emails are sent (equivalent to “true”)
  • Empty conditions: Treated as “false” - no emails will be sent
  • Invalid syntax: The builder prevents invalid configurations

Best Practices

Start Simple

Begin with basic threshold filters before building complex logic:
  • Test with a single condition first
  • Gradually add complexity as needed
  • Document your filter logic for team members

Consider Your Recipients

Think about what triggers are most valuable:
  • Managers: Focus on coaching opportunities (low scores)
  • Executives: Highlight risks and exceptional performance
  • Product teams: Filter for specific feedback types

Test Thoroughly

Before deploying to production:
  1. Use test data with known score distributions
  2. Verify emails are sent/suppressed as expected
  3. Check edge cases (all high scores, all low scores, no scores)

Balance Signal vs Noise

  • Too restrictive: Important emails might be missed
  • Too permissive: Recipients get overwhelmed
  • Aim for actionable insights that require attention

Combine with Field Filters

Use both filter types together:
  • Email filter: Determine IF to send
  • Field filters: Determine WHAT to include
  • Example: Send email if any score ≤ 3, but only show the low-scoring fields

Troubleshooting

Emails Not Sending

Check if the filter is too restrictive:
  • Review your AND conditions - all must be true
  • Test with sample data that should pass the filter
  • Try temporarily simplifying the filter
Verify scores exist:
  • Ensure the analysis is producing scores
  • Check that field names in the filter match exactly
  • Confirm the analysis configuration includes scored fields

Unexpected Email Behavior

Filter logic issues:
  • Review AND vs OR logic in groups
  • Check for unintended nesting
  • Verify threshold values are appropriate
Testing filters:
  1. Save a simple test filter (e.g., “Any score ≥ 1”)
  2. Run an analysis to verify emails are sent
  3. Gradually add complexity back

Visual Builder Issues

Drag and drop not working:
  • Ensure JavaScript is enabled
  • Try refreshing the page
  • Check browser console for errors
Changes not saving:
  • The builder auto-saves, but verify the filter displays correctly
  • Re-open the filter editor to confirm changes persisted
  • Check for validation errors in complex expressions

Advanced Concepts

Performance Considerations

  • Filters are evaluated efficiently on the server
  • Complex nested logic has minimal performance impact
  • The automatic flattening optimization improves evaluation speed

Interaction with Other Features

Email filters work seamlessly with:
  • Email subscriptions: Each subscription can use different templates with different filters
  • Analysis configurations: Filters can reference any field from the configuration
  • Custom fields: If included in analysis, custom fields can be used in filters

Future Enhancements

Based on user feedback, future versions may include:
  • Filter templates for common patterns
  • A/B testing different filter configurations
  • Analytics on filter effectiveness
  • Time-based conditions

Sales Coaching Filter

OR Group:
  - Any score ≤ 3
  - AND Group:
      - Average score ≤ 5
      - Score count ≥ 10
Triggers on very low individual scores or consistently mediocre performance across many fields

Executive Escalation Filter

AND Group:
  - OR Group:
      - "Risk Score" ≤ 2
      - "Decision Maker" score ≤ 3
  - Has field "Competitor Mentioned"
Alerts executives when deals have both risk indicators and competitive pressure

Product Feedback Filter

OR Group:
  - Has field "Feature Request"
  - Has field "Product Complaint"  
  - "Product Satisfaction" score ≤ 5
Routes product-related insights to the product team

Next Steps