Skip to main content

Attribute Based Filters

Attribute based filters suppress events whose metadata matches a set of key/value conditions you define. When an event matches, it is excluded from scoring, session creation, and lead creation entirely. These filters are found under Configure > Filters > Attribute Based.

Attribute based filters evaluate before velocity based filters. This means a bot event that matches a metadata condition is dropped immediately — it never enters the velocity counting pipeline at all.

For filters that catch excessive repetition (bursts of the same event type from a single lead), see Velocity Based Filters.

When to Use Attribute Based Filters

Use these filters when you can identify unwanted events by something in their metadata rather than by rate:

  • Bot traffic by user-agent — Suppress Page View events where user_agent contains "Googlebot" or "bot"
  • Internal test events — Suppress events where a metadata key like test equals "true" or source equals "qa"
  • Known exclusion markers — Suppress events where environment equals "staging" so test data never enters production scoring
  • IP-based suppression — Suppress events from known internal IP ranges by matching a metadata field your tracker includes

How Attribute Based Filters Work

Each filter has a name, an optional event type scope, and one or more conditions. When an event arrives:

  1. If the filter targets a specific event type and the event type does not match, the filter is skipped
  2. All conditions are evaluated against the event's metadata
  3. If all conditions match, the event is suppressed
  4. The suppressed event is still stored for audit purposes — it is simply excluded from scoring and lead activity

Multiple active filters are evaluated independently. An event is suppressed if it matches any enabled filter.

Filter Components

FieldDescription
NameA descriptive label for the filter (e.g., "Suppress Bot Traffic", "Block QA Events")
Event TypeOptionally restrict this filter to one event type. Leave blank to apply to all event types
ConditionsOne or more key/value rules. All conditions must match for the event to be suppressed
EnabledToggle to pause a filter without deleting it

Condition Operators

Each condition targets a metadata key and uses one of these operators:

OperatorBehavior
equalsExact string match
not equalsDoes not match the value
containsValue includes the specified text (case-insensitive)
not containsValue does not include the specified text
starts withValue begins with the specified text
ends withValue ends with the specified text
matches regexValue matches a regular expression
is emptyKey is absent or its value is blank
is not emptyKey is present and has a non-blank value

Creating an Attribute Based Filter

  1. Navigate to Configure > Filters
  2. Select the Attribute Based tab
  3. Click Add Metadata Attribute Filter
  4. Enter a name for the filter
  5. Optionally select an event type to scope the filter
  6. Add one or more conditions using the condition builder
  7. Use Preview Match Count to see how many existing events would be suppressed by the current conditions
  8. Toggle Enabled on and click Create Filter

Preview Match Count

Before saving, click Preview Match Count to run your conditions against your existing event history. The result shows how many events currently in your account would be suppressed if the filter were active. Use this to catch over-broad conditions before they take effect.

Example Configurations

Suppress Googlebot Traffic

Name: Block Search Crawlers
Event Type: Page View
Conditions:
user_agent contains "bot"

Suppresses all page views where the user-agent includes the word "bot". Catches Googlebot, Bingbot, and most crawler strings.

Block Internal QA Events

Name: Exclude QA Events
Event Type: (any)
Conditions:
source equals "qa"

Removes events your QA pipeline marks with source: "qa" from all scoring.

Suppress Staging Environment Events

Name: Exclude Staging Data
Event Type: (any)
Conditions:
environment equals "staging"

Keeps staging activity out of your lead scores when your tracker includes an environment field in event metadata.

Multi-Condition Filter

Name: Block Internal Tools
Event Type: (any)
Conditions:
source equals "internal"
environment not equals "production"

Both conditions must match. This would only suppress events tagged as internal AND not from the production environment.

Best Practices

Be specific with conditions. A condition like user_agent contains "bot" will catch most crawlers, but verify with Preview Match Count that it does not accidentally suppress legitimate leads who happen to have "bot" in a company name or campaign URL.

Name filters clearly. Include the suppression reason in the name: "Block Googlebot", "Exclude Internal Tools", "Suppress Staging Events". Your team will thank you during quarterly reviews.

Use event type scoping when possible. Scoping a filter to a specific event type limits its blast radius and makes it easier to audit later.

Disable rather than delete. Toggle a filter off instead of deleting it. This preserves the configuration for reference if suppression behavior changes unexpectedly.

Layer with velocity filters. Attribute based filters are evaluated first, so they handle known bad actors immediately. Velocity based filters then catch unknown automated patterns by rate. Together they cover most suppression scenarios.

Troubleshooting

SymptomLikely CauseSolution
Filter not suppressing expected eventsMetadata key name does not matchCheck the exact key names in your event metadata; they are case-sensitive
Too many events suppressedCondition is too broadNarrow the condition or add a second condition to restrict scope
Suppressed count is 0Events do not include the target metadata keyVerify the metadata key is present in your event payloads
Filter is enabled but events still scoreFilter was created after events arrivedFilters apply to new events only; previously ingested events are not retroactively suppressed