Advanced Filtering Logic
Asking good questions about your marketing data is a key part of marketing analytics as it helps you identify patterns, trends, and insights that can inform marketing strategy and decision making. By asking the right questions, marketers gain a deeper understanding of customer behavior, preferences, and pain points, and can use this information to optimize campaigns, improve targeting and personalization, and increase ROI.
Focusing on good questions can also help identify areas of opportunity, such as untapped market segments or new channels to explore. In this way, asking good questions about data is crucial for making data-driven decisions that can improve the overall effectiveness and efficiency of marketing efforts.
Simple Queries with the SegMetrics Builder
Showing revenue from only one product
Showing revenue generated from everyone in a single funnel
- make sure revenue is generated during the date range
Ignoring certain products in a report
Advanced Queries with Combined Filters
We’ve already seen how we can use filters to limit our results to a certain subset of the data. For example we can show revenue only from Product A, or revenue from Product A and Product B.
But sometimes we want to see combinations of those filters to understand how our customers act. For example, we may want to get a list of people only if they’ve purchased BOTH Product A & Product B.
When we use the same filter type multiple times (for example Product Name
or Tag Name
), SegMetrics turns that into a Contact Limiter query, and will only return results from contacts that fulfill BOTH of those filters.
This is also useful for Funnel Reports and other reports where you’re looking for people who have performed two actions such as Clicked on Landing Page
and Clicked on Thank You Page
to see only the people who had opted in, by going to both pages.
💡 Note: Some filters do not create Contact Limiter queries, where they don’t make sense. For example, Product Price
will be applied to the entire query, without creating a Contact Limiter.
Advanced Queries with Negative Filters
When we're looking to exclude people from a filter, there are two ways to do that:
Showing people who do A, but not B
Contact Limiter queries become even more powerful when we add negative conditions to the mix to identify the exact people we’re looking for.
In the previous example, we looked at people who had performed two actions such as Clicked on Landing Page
and Clicked on Thank You Page
to see only the people who had opted in, by going to both pages.
If we reverse that second condition, to say Clicked on Landing Page
and DID NOT click on Thank You Page
, we would get everyone who had gone to the landing page, but not moved on to the second step of our funnel.
Negative Filters with a Contact Limiter
When a report uses a Contact Limiter (two or more of the same filter type), and both of those filers are negative (for example Tag Name is not "A"
and Tag Name is not "B"
) the logic can start to get a little tricky.
If we follow the logic from a standard Contact Limiter filter, the above logic would be to exclude only those people who had both tag “A” and “B.” Which means that people who had tag “A” would still show up on the report.
While powerful, that’s not what people generally expect, and so Contact Limiter filters behave similar to a standard negative filter, where they remove items that match EITHER of the filters.
Ignoring vs Excluding using Negative Filters
When dealing with negative filters, we introduce the idea of “ignoring” or “excluding” results.
When we “ignore” results, those records are not included in the report, but those contacts still may be. For example, if we set a report where Product Name is not "A"
we will not include A in any of the results, but we will still include other purchases by people who have purchased A in the past.
Similarly, when we filter Page is not “top-page"
, we will not include “top-page” in our results, but will still show other pages that were clicked by people who clicked “top-page.”
However, when we filter on aspects of a contact, such as companies
, tags
, lists
, etc then we mark the filter as Excluding the results, and remove the entire contact from the report.
For example, if we set a report with Tag is not "A"
we will exclude that contact from the report altogether, even if they have other tags applied to them.
💡 Hint: If you want to change an Ignoring query into an Excluding query, just add a “does exist” filter of the same type, and it will create a standard Contact Limiter query.