Re-enroll Contacts into Contact-Based Workflows Based on Other Non-Contact Properties

HubSpot Employee

At the moment, it’s only possible to enroll an object into a workflow once based on another object’s properties. For example, when we set a deal property as an enrollment criteria in a workflow, it isn’t possible to use that same criterion for re-enrollment. 


non-contact properties cannot be used for re-enrollment in a contact-based workflownon-contact properties cannot be used for re-enrollment in a contact-based workflow

This becomes an impediment when we want to execute certain actions with the associated contact that are only available on contact-based workflows such as adding/removing a contact to a static list, managing the contact subscriptions or adding/removing a contact from an ad audience.


As a workaround to this re-enrollment issue, we can use a contact property as an intermediary between one non contact-based workflow and a contact-based workflow. In this example, we will use an intermediary property to allow for a kind of ‘re-enrollment’ based on deal properties. 


I would like to send an internal email notification whenever a deal name is ‘Example Deal’. 


Part 1: Create Intermediary Property 

Create a contact property to act as an intermediary between the deal and contact-based workflows. 

  1. Follow the steps in this Knowledge Base Article to create the custom property. 
  2. For simplicity, I recommend naming the custom property with a description of exactly what it does. 
  3. I also recommend using a picklist-type field such as a dropdown select field. 
  4. In this example, I’ve created the property ‘Deal Name is Example Deal’ and a single option ‘Yes’. 

    example custom propertyexample custom property


Part 2: Create Deal-Based Workflow to Update Intermediary Contact Property 

Create a deal-based workflow to update this contact property.

  1. Set the deal property enrollment criteria - in this case, it would be ‘Deal Properties > Deal Name > is any of ‘Example Deal’’. 
  2. Click into the ‘Re-enrollment’ tab and click on the option to re-enroll whenever ‘Deal Name’ is any of ‘Example Deal’. 

    re-enrollment enabled on deal-based workflowre-enrollment enabled on deal-based workflow

  3. Add a ‘Set Property Value’ action to set our custom contact property ‘Deal Name is Example Deal’ to the value of ‘Yes’.

    set property value action in workflowset property value action in workflow

    configuration of set property value actionconfiguration of set property value action

  4. Add a small time delay, I’ve added a five minute delay to allow the associated contact to enroll into the other workflow. 
  5. Add a ‘Clear Property Value’ action to clear the property value from our custom property. This will allow the same deal to ‘update’ the property again if the deal enrollment trigger is met in another instance.  

    clear property value action in workflowclear property value action in workflow

    configuration of clear property value actionconfiguration of clear property value action

Part 3: Use Property as Enrollment and Re-Enrollment Criteria in Contact-Based Workflow

Returning to the contact-based workflow, use the custom property as an enrollment trigger. 

  1. Set the enrollment trigger ‘Contact Properties > ‘Deal Name is Example Deal’ > is any of ‘Yes’’. 
  2. Click into the ‘Re-enrollment’ tab and click on the option to re-enroll whenever ‘Deal Name is Example Deal’ is any of ‘Yes’. 

    re-enrollment criteria based on custom propertyre-enrollment criteria based on custom property

  3. Now whenever a deal property is updated, or a new associated deal has the name ‘Example deal’ the contact property will be updated which will enroll the associated contact into this workflow again. 

Do also note: 

  • Generally, for the ‘When a contact no longer meets the enrollment conditions, remove them from this workflow’, we will want to select the option ‘No, keep them in this workflow’ as the earlier workflow clears the property value for our intermediary property after the delay. (Especially if the contact-based workflow is particularly long)

    keep contact in workflowkeep contact in workflow

  • The contact won’t re-enroll unless the existing associated deal name is cleared or edited, then set to ‘Example Deal’ again. Or, if there is another deal associated with that contact where the deal name is also ‘Example Deal’. 

Hope this helps! 

0 Replies

No replies on this post just yet

No one has replied to this post quite yet. Check back soon to see if someone has a solution, or submit your own reply if you know how to help! Karma is real.

Reply to post

Need help replying? Check out our Community Guidelines

0 Replies 0