For the complete documentation index, see llms.txt. This page is also available as Markdown.

🖥️Enrolling & Removing People from a Flow

Flows put contacts through a multi-step, multi-channel journey. This page covers how contacts get in, how they get out, and — most importantly — how to figure out why for any specific person.

How contacts enter a flow

There are five ways someone can enter a flow.

1. Segment-based enrollment (most common)

When you build a flow (Step 4 of Creating a Flow), you select a target audience segment. From that point:

  • Dynamic segment — anyone who newly matches the segment criteria is auto-enrolled. This is what powers most "when someone becomes a lead" style journeys.

  • Static segment — only the contacts in the list at the time of enrollment are added. New matches later are not enrolled.

If enrollment isn't happening for someone you'd expect, the first thing to check is whether the segment is dynamic and whether the contact actually matches it. Open the contact's profile and confirm segment membership.

2. Manual enrollment

You can add a contact to a flow one at a time.

Step 1 — Open the contact's profile. Three ways to get there:

  • Use the search bar at the top of the page to look them up by name, email, or phone.

  • Navigate to Audience → Contacts and click the contact's name.

  • Open the Sales Pipeline and click the contact's card.

Step 2 — On the contact profile, click the three-dot menu (⋮) at the top right.

Step 3 — Select Enroll in Flow.

Step 4 — In the window that opens, check the flow(s) you want to enroll them in and click Save.

The enrollment window lists any Active Flows the contact is already in and the list of Available Flows to add.

3. Sync-triggered enrollment (from integrations)

When a contact syncs in from an integration and matches a dynamic segment used by an active flow, they're enrolled automatically. Timing depends on the source system:

Integration
Sync method
Typical time to enrollment

Mindbody

Webhook (push) + hourly polling reconciliation

Within minutes

ClubReady

Webhook (push) + hourly polling reconciliation

Within minutes

ABC

Polling only, every 30–60 minutes

Up to 1 hour

If enrollment is taking longer than these windows, jump to Troubleshooting below.

4. Form-triggered enrollment

Any Gleantap form can trigger a flow on submission. Set this up on the form itself under Trigger Flows or Campaigns. See Trigger Flows or Campaigns.

5. API-triggered enrollment

Contacts can be enrolled programmatically via the Gleantap API. See the API Reference for endpoint details.


How contacts leave a flow

There are three ways a contact can leave a flow. Two of them are logged as unenrollments; the third is completion.

1. Unenroll criteria (the main way)

When building a flow, you can define unenroll criteria on the flow settings. Unenroll criteria are structured as a list of Criteria groups:

  • Within a single Criteria group, all rules must match (AND).

  • Across Criteria groups, matching any one group unenrolls the contact (OR).

So a flow that has three unenroll criteria groups behaves like:

Unenroll if (Criteria 1 rule A AND rule B) OR (Criteria 2 rule C) OR (Criteria 3 rule D AND rule E)

Gleantap evaluates unenroll criteria continuously. The moment any group matches, the contact is unenrolled and any pending steps are cancelled.

Common patterns:

  • "Unenroll new-member nurture flow when they've booked their first class"

  • "Unenroll lead-follow-up flow when they've become a paying member"

  • "Unenroll re-engagement flow when they reply to any message"

2. Manual removal

You can remove someone from a flow the same way you added them.

Open the contact profile → three-dot menu (⋮) → Enroll in Flow. In the Active Flows section of the window, click the trash icon next to the flow you want to remove them from, then click Save.

3. Flow completion

Once a contact reaches the end of the flow, they exit naturally. This is not recorded as an unenrollment — it's a completion. Completions don't show a "reason" because there isn't one; they finished the journey.


How to see why a specific contact was (or wasn't) enrolled or unenrolled

Every enrollment and unenrollment event is logged. There are two places to look, depending on whether you're investigating a specific person or a whole flow.

Investigating one contact — Contact Profile → Activities

  1. Open the contact profile.

  2. Click the Activities tab.

  3. Scroll through the timeline. Every flow enrollment and unenrollment is listed with a timestamp.

  4. Unenrollment events show the reason — the specific criteria group that matched.

This is the fastest way to answer "why was this person unenrolled on April 25th?"

Investigating a whole flow — Marketing → Flows

  1. Navigate to Marketing → Flows.

  2. Click into the flow you want to inspect.

  3. Scroll to the list of people and their status.

  4. Anyone who was unenrolled shows the specific reason inline.

Use this view when you want to spot patterns — e.g., "most people are being unenrolled by Criteria 2, is that expected?"


Troubleshooting: "Why didn't this happen?"

"They should be in this flow, but they're not"

Walk through this checklist:

  1. Is the flow published? Draft flows don't enroll anyone.

  2. Is the target segment dynamic or static? Static segments don't pick up new members after enrollment starts.

  3. Does the contact actually match the segment? Open the contact and check their segment memberships. If they don't match the entry segment, they won't enroll.

  4. If sync-based, are you inside the expected window? Mindbody / ClubReady: within minutes. ABC: up to 1 hour. Wait, then re-check.

  5. Are the unenroll criteria matching immediately? If a contact matches an unenroll criteria group at the moment of entry, they'll unenroll instantly. Check the flow's unenroll criteria and cross-reference with the contact's attributes.

"The flow fired later than expected"

  • Check Quiet Hours. They're set on the Configure Email and Configure SMS pages (gear icon at the top → Configure Email or Configure SMS). Messages are held until quiet hours end. See Configure Email and Configure SMS.

  • Check the flow's Delay steps — a 12-hour delay step will look like a "12-hour delay bug" from the outside.

  • For ABC-sourced contacts, add 30–60 minutes to your expected time.

"They got unenrolled and I don't know why"

  • Open the contact profile → Activities tab. The unenroll reason is on the event.

  • Or Marketing → Flows → the flow → scroll to the people list. Reason shows inline.

"A contact left a flow, but I don't see an unenroll reason"

  • They may have completed the flow. Completion is not an unenroll; there's no reason field. Check whether they reached the last step.

  • They may have been removed manually. Check the Activities tab — manual removals are logged with the teammate's name.

"The contact matches unenroll Criteria 1 rule A but not rule B — why weren't they unenrolled?"

Rules within a single Criteria group are AND'd together. If rule B doesn't match, the whole group doesn't match. Either move rule B into its own Criteria group (making the logic OR) or remove it if it wasn't intended.


FAQ

For quick questions, see the Flows FAQ.

Related pages:

Last updated

Was this helpful?