Dynamic Segments

In addition to static segments (manually assembled lists of contacts), DonorPoint supports dynamic segments — lists defined by a query that is re-evaluated each time the segment is used. Membership in a dynamic segment is always current as of the time it is queried.

Types of Dynamic Segments

Contact Query Segments

A Contact Query segment defines membership using filter criteria on contact fields, custom fields, giving history, and relationships. Contacts that match the criteria are included; those that do not are excluded. The query is re-run each time the segment is used for an email, report, or distribution.

Example uses:

  • All contacts who gave in the previous calendar year but not in the current year (LYBUNT)
  • All contacts whose employer is a specific organization
  • All contacts with a specific custom field value (e.g., department = “Marketing”)
  • All contacts who have not yet responded to the current workplace campaign

Organization Query Segments

An Organization Query segment applies the same logic to Organization records — useful for building distribution lists of employers or agency contacts.

Compound Segments

A Compound Segment combines two or more other segments using set operations:

  • Union — all contacts in any of the source segments
  • Intersection — only contacts in all of the source segments
  • Difference (NOT IN) — contacts in the first segment who are not in any of the others

Compound segments allow sophisticated targeting. For example:

All contacts who pledged this year (Segment A)
MINUS all contacts who have already paid (Segment B)
= Contacts with outstanding pledges

Compound segments can reference other compound segments, enabling layered logic.

Creating a Contact Query Segment

  1. Go to Segments in the sidebar.
  2. Click Create New Segment and select Contact Query.
  3. On the Definition tab, add filter conditions:
    • Select a field (contact property, custom field, giving history field, etc.)
    • Select an operator (equals, contains, greater than, is empty, etc.)
    • Enter a value
  4. Add multiple conditions — all conditions use AND logic by default (the contact must match all conditions).
  5. Save.

The segment will dynamically re-evaluate its membership list whenever it is used.

Creating a Compound Segment

  1. Go to Segments in the sidebar.
  2. Click Create New Segment and select Compound Segment.
  3. On the Definition tab, add source segments.
  4. Set the Operation for each (Union, Intersection, or Difference).
  5. Save.

Using Dynamic Segments for Email

Dynamic segments can be used as email distribution lists just like static segments. When the email job runs, the dynamic segment is evaluated at that moment — meaning newly added or removed contacts are reflected automatically.

See Distribution Lists for how to use segments in email distributions.

LYBUNT / SYBUNT Targeting

A common use of dynamic segments is identifying prior donors for re-engagement:

  • LYBUNT (Last Year But Unfortunately Not This Year): contacts with an active transaction in the prior campaign year and no active transaction in the current campaign year
  • SYBUNT (Some Year But Unfortunately Not This Year): contacts with any historical transaction but none in the current year

To build a LYBUNT segment using Compound Segments:

  1. Create a Contact Query for “gave last year” (active transaction, campaign year = prior year)
  2. Create a Contact Query for “gave this year” (active transaction, campaign year = current year)
  3. Create a Compound Segment = Segment 1 MINUS Segment 2

Dynamic Segments in Reports

Dynamic segments are available as filters in reports. When a report is run with a dynamic segment filter, only records matching that segment’s current membership are included.

Open the segment and click the Reports tab to access reports scoped to that segment’s membership.