Whatâs the best approach to copying the highest lifecycle stage out of all associated contacts to the company level? Any examples would be super helpful
Hi @Gavin5,
This would be a company-based workflow which does the following:
- Enroll companies when Number of associated contacts is known (enable re-enrollment) AND Company is associated to any contact where Lifecycle stage is known
- Add a branch (AND/OR criteria) and move from the highest to the lowest lifecycle stage, e.g.
- Company is associated to any contact with Lifecycle stage Customer
- Company is associated to any contact with Lifecycle stage Opportunity
- âŚ
- Company is associated to any contact with Lifecycle stage Lead
- In each branch, use the âSet property valueâ workflow action to the set the lifecycle stage of the company to the one that corresponds to the branch
Things to keep in mind:
- Removing a contact will re-trigger the workflow (due to the changed number of associated contacts) but not move the company back in lifecycle stage unless you use the âClear property valueâ workflow action at the beginning of the workflow, before the branch
- You might want to set up a separate workflow that sets all companies meeting certain baseline criteria (e.g. company domain name is known) to the Lifecycle stage Lead.
Let me know if you have any follow-up questions!
Thanks, @karstenkoehler! However, one question I have is, will companies enroll if the contactâs lifecycle changes? We have a lead score system where contactsâ lifecycle stages change based on that.
To my knowledge, it will only re-enroll if a company field is updated, correct? Since it is a company workflow. Let me know your thoughts or any ideas for workarounds. Much appreciated!
@Gavin5 in that case, you would have to design this as a contact-based workflow â which simply reenrolls contacts when âLifecycle stage is knownâ, then copies the property value from the contact lifecycle stage into the company lifecycle stage. Since records canât go back in lifecycle stage, the copy action will only work if itâs going forward, effectively only copying the highest lifecycle stage.
Hi Karsten, could you please provide more detail on how to structure this contact-based workflow? Thank you!
Hi @MArbelaez1, Thanks for your interest in this workflow.
Could you share a bit more about your current setup or the lifecycle stages youâre working with?
The more info, screenshots (without sensitive/confidential information), and details you can provide, the better.
Thatâll help the Community give you the most relevant steps for structuring your contact-based workflow.
Iâd love to connect you with our Top Experts in workflows: Hi @karstenkoehler, @MHolzer and @danmoyle do you have recommendations to help @MArbelaez1, please?
Have a lovely weekend and thanks so much for your valuable contributions! ![]()
BÊrangère
@MArbelaez1 hereâs what youâd need to do in detail to accomplish what @karstenkoehler laid out.
First, create a contact-based workflow from scratch. Hereâs how to do that.
- Automation > Workflows > Create from scratch.â
- Enrollment trigger: Met filter criteria > Contact > Lifecycle stage is known.
- Turn on re-enrollment for the same criterion so contacts re-enter whenever lifecycle stage is updated (like if by lead scoring).â
Next, think about guardrails for which contacts enroll. So Iâd consider adding additional enrollment filters if needed. âAssociated company is knownâ is one example. You can also consider excluding certain lifecycle values (maybe donât write up âOtherâ or âEvangelistâ if that does not belong on the company).
â
Then youâll want to copy lifecycle from contact to company. The workflow steps for that are:
- First action: Copy property value
- From object: Contact
- From property: Lifecycle stage
- To object: Company
- To property: Lifecycle stage.â
Because lifecycle stage is progressive and cannot be moved backward via workflows without clearing it first, a contact with a later stage (e.g., SQL, Opportunity, Customer) will overwrite any earlier value on the company but a contact going âdownâ in stage will not downgrade the company. This is what makes it behave like âcopy the highest lifecycle stage to the company."
Hopefully that helps!
Thanks so much Dan! This is super clear and incredibly helpful. This solves exactly what I needed. Really appreciate you taking the time to lay this out!
Happy to help, @MArbelaez1 !
Hi @BÊrangèreL , thank you for the follow-up!
Iâm using HubSpotâs default contact lifecycle stages. My goal is for the Company lifecycle stage to always match the highest lifecycle stage of its associated contacts.
Example:
- All associated contacts are Subscribers â Company = Subscriber
- One contact moves to Lead â Company updates to Lead
- Another contact moves to MQL â Company updates to MQL
In short, whenever a contactâs lifecycle stage changes, the company lifecycle stage should automatically update to the highest stage across all associated contacts.
Looking forward to your recommendations. Thank you!