How to Build a Program-Based List

Last updated: July 6, 2026

Summary

The most common task in HubSpot with this integration is building a list of the people who registered for a specific program — so you can email them, enroll them in a workflow, or report on them. This walkthrough builds that list in HubSpot's Lists tool using cross-object filters against the registration data the integration syncs.

Before you start

  • The program detail you'll filter on (program name, branch, type) lives on line items attached to registration deals, not on the contact directly. See The Object Model.

  • Cross-object list filters depend on your HubSpot subscription tier. If you don't see the associated-object options below, check your Marketing Hub entitlements or ask your implementation partner.

Steps

1. Create a new active list. Go to CRM → Lists → Create list, choose Contact-based, and select Active list (so it stays current as new registrations sync in).

📸 Screenshot: The HubSpot "Create list" dialog with Contact-based + Active list selected.

2. Filter to real program registrations. Add a filter group: Associated Deal / Line itemProduct Type (description) is equal to Program. This ensures you're capturing actual class registrations and not membership or fee lines. (Why this matters: Product Types.)

3. Narrow to the specific program. Add an AND condition on the line item's Program / Product Name is equal to (or contains) your program — for example, a swim or gymnastics class name.

📸 Screenshot: The list filter builder showing Product Type = Program AND Product Name contains "[program]".

4. (Optional) Add branch or timeframe. Layer additional AND conditions — for example, Branch for a single location, or a date condition tied to the session. For date-based sends, see How to Trigger a Workflow on a Class Start Date.

5. Review and save. Check the list preview count and spot-check a few records to confirm they're the people you expect. Name the list clearly (e.g., "Program – [Name] – [Branch] – Active") and save.

Tips

  • Keep it active, not static, so people who register later are automatically included.

  • Group your program families. A single program is often offered across many branches and months, each as its own product record — so filter on the program name (and branch, if needed) rather than a single SKU. See Understanding Your Product Library.

  • Members and non-members will both appear — that's expected and usually desired. To send them different messaging, branch inside a workflow rather than splitting the list. See How to Segment Members vs. Non-Members.

Related articles