Custom fields — filter and sort contacts
Add custom fields to your contacts and use them to filter, sort, and export donor lists.
Overview
Custom fields let you capture information about your donors that isn't in the default contact record — employer, board member status, volunteer interest, t-shirt size, donor tier, whatever your team tracks. Every active custom field automatically shows up in the contacts list's filter picker, becomes a sortable column, and can be added to the columns menu — no per-field toggle to manage.
Manage custom fields in Settings → Custom Fields. The tabs on that page split fields by what they describe: Contacts, Payments, or Accounts. Custom fields are listed alphabetically by label.
Field types
| Type | Filter operators | Column variant |
|---|---|---|
| Text | contains, begins with, ends with, is, is not, is empty, is not empty | Plain text |
| Number | =, ≠, <, ≤, >, ≥, between, is empty, is not empty | Right-aligned numeric |
| Date | on, before, on or before, after, on or after, between, is empty, is not empty | Short date |
| Dropdown | is, is not, is one of, is not one of, is empty, is not empty | Plain text |
| Checkbox | is (Yes / No) | Checkmark |
Settings — field properties
| Property | What it controls |
|---|---|
| Label | The heading donors, admins, and reports see for this field. |
| Type | The shape of the value — locked after the first donor gets a value. See "Type is locked" below. |
| Options | Dropdown choices (dropdown type only). Comma-separated or newline-separated. |
| Required | If on, donors and admins can't save a contact record without a value. |
| On Campaigns (contacts and payments only) | If on, the field appears on donation form field editors so campaign managers can add it to a form. |
| Applies to (accounts only) | Limits the field to specific account subtypes (household, company, foundation, church, school). Leave all unchecked to show the field on every account. |
Field names must be unique within each tab. Two custom fields in the same tab can't share the same label (case-insensitive) — naming a new field "Tier" when you already have a "tier" surfaces a friendly error in the save dialog.
Type is locked once data exists
Once any contact has a value for a custom field, the field's type is locked. This matches how Salesforce, HubSpot, and similar systems work — changing a field's type on live data would break stored values and any saved filter rules that reference the field.
In the edit dialog, the Type selector is disabled and a tooltip explains why — including the exact number of contacts that already have a value.
To change a field's type:
- Create a new field with the new type.
- Copy the values across your contact records (use an export + import, or edit them by hand).
- Delete the old field.
When a field is deleted or made inactive
If you've saved a filter URL that uses a custom field and the field is later deleted or made inactive, the contacts list shows a banner the next time you open that URL:
1 filter rule was removed because the custom field is no longer available.
Click Clean up filter to strip the stale rule from your saved URL. The filter still runs correctly in the meantime — the deleted rule is just ignored.
A different banner copy appears when a field's type was changed (in the narrow window before any data was entered) and an existing filter used an operator that no longer fits the new type:
1 filter rule was removed because the custom field's setup changed.
Either way, the remaining filter rules continue to govern the list.
Using a custom field in the contacts list
Every active custom field is available for filtering and sorting as soon as you create it:
- Go to Contacts.
- Open the filter panel.
- Click Add rule. Pick the field from the picker — custom fields are listed alphabetically under their label.
- Pick an operator and a value. Date fields surface a date picker; dropdown fields surface a choice menu.
- The URL updates as you edit — copy and paste it to share a filter with a teammate.
To sort by a custom field:
- Open the columns menu (top-right of the contacts list).
- Toggle the custom field's column on — custom fields live under the Custom Fields section.
- Click the column header to sort. Click again to reverse.
The sort state is preserved in the URL alongside the filter, so shared links keep the exact view you saw.
Custom fields across other entities
Payments, accounts, and campaigns have their own custom-field tabs in settings. The contacts list surfaces only contact fields. Payment-scoped fields appear on donation-form editors for campaign managers, but they don't appear on the contacts list itself.
See also
- Advanced filter logic — compose nested AND/OR/NOT filter expressions, including custom-field rules.
Last updated on 4/30/2026