What is the best way to build a dynamic Upsell Program?
The Keys are 1. Program Re-Entry (or Loop) every 30 days after subscribing to a product (successful upsell conversion) and 2. Dynamic Segmentation to ensure they receive the version of the email that applies to them. Obviously this would require an exit condition or transition for when the Data Value Change does in fact convert from Product 1 Subscribed = FALSE to Product 1 Subscribed = TRUE. *These are boolean custom fields I created since I'm dealing with a custom CRM where custom objects cannot be used in Segmentation.
I'd like to set it up so a LEAD will not receive the 3 Upsell emails until 30 days after purchasing the previous product. And then every 30 days re-enter to be upsold.
I have 8 Products which is how the segmentation is constructed. The segmentation is built out in a product hierarchy sequence with the logic being:
01 Does Not Have Product 1 ---> then Send 3 email sequence promoting Product 1
02 Does Not Have Product 2 ---> BUT has Product 1 ---> then Send 3 Email sequence promoting Product 2
... and so on and so forth for 03 through 08.
In this thread How can I "allow" a lead to re-enter the same Engagement Program every x number of days? with tremendous help from Jay Jiang and others I was able to solve a similar issue with a dynamic never-ending Re-Engagement (Canceled Clients) program loop.
- Batch #1: date stamps Account Cancelled Date and calculates the nurture start date
- Batch #2: on nurture start date, add to list "nurture list"
- Smart Campaign A: trigger: Added to List is "nurture List" | flow: Send Email and wait sequence with last step Add to List "nurture list" (which is another way of creating a loop)
- Smart Campaign B: "Remover" trigger campaign that listens for when a lead should be removed from flow of Smart Campaign A and (optionally) removed from list "nurture list"
Will this "Loop" method also work with an Upsell Campaign meeting all the same conditions as the Canceled Program while utilizing snippets (segmentation)?
I think one option around the 'Re-Entering' a stream/program issue would be to run it once then every 30 days just clone it and re-batch and run it again as a new program. I think there is a smarter way to do it than that.
I'm sure I'm leaving out details but I don't want make this too confusing. Hopefully you get the idea. Thanks!