Occasionally, a contact may have unexpectedly enrolled in your workflow. A common cause is how you configure your enrollment triggers when using the does not contain filter.
For example, your workflow's enrollment triggers include Contact property | does not contain | X, Y, and Z or Contact property | is not equal to | X, Y, and Z. A contact with no value for one of those properties means they're eligible to enroll, as they fulfill those does not contain and is not equal to filters.
When would I see this happen?
This happens most often when your enrollment triggers target analytics properties that the system generates, such as IP country, Create date, or Original source. There's a slight delay in populating these properties, so the list segmentation process will occur more quickly than this processing. This applies to the workflow's list of enrollment triggers, which is used to enroll contacts in a workflow.
Some common examples include:
- A new contact enters your HubSpot contact database through a form submission.
- The new contact is in your HubSpot contact database but their analytics properties are blank.
- The contact fulfills your workflow's enrollment triggers and joins the starting list, triggering the workflow enrollment.
- The contact's analytics properties are populated, so they no longer fulfill the workflow enrollment triggers, but their enrollment has already been triggered.
This can also occur for properties on an associated company or deal record. It can take longer for HubSpot to associate a company record, for example, to a contact record, than it takes for workflow enrollment to occur. If a workflow is using "[Associated company record property] is not equal to/is not any of" as an enrollment trigger, a contact may be enrolled into a workflow before the company record is associated to the contact record.
Even though the contact property timestamp and the workflow enrollment may look identical, these instantaneous differences will lead to these unexpected workflow enrollments.
Are there any workarounds?There are two workarounds to avoid this:
- Add an AND criterion of [the analytics property] | is known to each filter group in the workflow's enrollment triggers.
- Add a delay of a minute or so before the first workflow action and select the Yes, remove them from this workflow option for the When a contact no longer meets the enrollment conditions, remove them from this workflow? setting. With this workaround, contacts with a blank analytics property can still be enrolled in the workflow.