> For the complete documentation index, see [llms.txt](https://support.sayprimer.com/primer/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://support.sayprimer.com/primer/audiences/audience-filters.md).

# Audience filters

The filter sources you build an audience from — Primer data, events, CRM and datasets — with sample filters.

Filters define who's in an audience. They're grouped by **source** — where the data comes from — and you can combine filters from any source. Each filter matches with operators like **is** / **is not**; numeric filters use ranges.

## Primer data

Primer's own person and company data. This is the default source, available to everyone.

* **People** — Job Title, Seniority, Department, Person Location, Skills, Degrees, Majors.
* **Companies** — Industry, Headcount, Annual Revenue, Company Location, Domain, Keywords, Technology, NAICS Code, Founded Year.

Department and Industry are picked from fixed, Primer-defined lists so audiences stay comparable; the audience builder shows every available value as you filter. Keywords and Technology accept your own values.

## Events

The people your [website pixel](/primer/connections/website-tracking/installing-the-pixel.md) has identified — for example everyone who visited a page or arrived from a campaign. The pixel must be [Connected](/primer/connections/website-tracking/pixel-connection-status.md); these filters have nothing to match against until it is, so they only appear once it's connected.

* **Pages visited** — filter by the page someone viewed.
* **UTM parameters** — source, medium, campaign, term and content, matching the **first**, **last** or **any** touch.
* **Form fills** — whether someone submitted a form, and which one.
* **Engagement** — number of visits, session time, referrer, device and browser, intent level and traffic type.
* **Audience membership** — whether someone belongs to another of your audiences, most often to [exclude one audience from another](/primer/audiences/exclusion-audiences.md).

## CRM

Custom fields from a connected CRM, so you can filter on your own data — Salesforce (Lead, Contact, Account, Opportunity, Campaign) and HubSpot (Contact, Company, Deal, Form). These appear once the [CRM is connected](/primer/connections/integrations/connecting-a-crm.md).

## Datasets (CSV Files)

Filter against lists you've [imported as a CSV](/primer/connections/datasets/importing-a-csv.md).

## Why some filters are slower to process

Most filters resolve against pre-indexed (normalized) values, so estimates update quickly. A **CRM filter** on a custom field that hasn't been normalized is the exception: Primer has to scan the raw values instead of a prepared index, which makes the [size and match-rate estimates](/primer/audiences/estimates.md) take longer to compute. When your audience uses one, the builder shows a turtle note — *"Unnormalized filters can cause slower estimates."*

This is only a speed note, not an error: the filter still matches correctly and the audience still builds and syncs. If estimates feel slow, it's usually one of these CRM filters at work; removing it makes estimates snappy again, or you can simply wait for it to finish.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://support.sayprimer.com/primer/audiences/audience-filters.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
