Hi, I raised this with Klaviyo support and got some helpful advice, but after thinking it over, I realised it doesn’t work.
Customer enters a loyalty flow after purchasing a specific product. The flow is long (a few years). Naturally in this time, we would expect some customers to unsub before they’ve fully finished it. We’d like them to re-enter if they resubscribe later down the line.
For this reason, the flow filter “has never been in this flow” doesn’t work.
Klaviyo support suggested adding a filter property like “Completed this flow” = Yes and then making sure that people can only re-enter if it’s No, but then they’d be able to re-enter after every email, which we don’t want.
Essentially: we want people to enter this 1 time per customer lifetime. But, if they unsub, resub later down the line, and then make a purchase, we want them to re-enter because of the information promoting loyalty flow in our order confirmation - we wouldn’t want to say they’d enter this loyalty flow but then they actually don’t because they unsubbed previously.
Anyone done anything similar? Is this too much of an edge case to worry about?
Thanks in advance! Let me know if you need clarification.
Best answer by OmarView original
Thought of a clarification:
Essentially: we want someone to enter this flow only once - UNLESS they unsub, resub, and complete the trigger again - then we’re happy for them to either start from the beginning again, or pick up where they left off. Happy with either. Thanks!
Welcome to the Community.
I think that the Support team did offer a good solution but maybe not taking into consideration such an edge case. One thing that comes to mind would be attaching a profile property to users that exit the first flow prematurely and just adding them to a new Flow that serves as a continuation from the beginning. I don’t think there would be a way to start a user from the middle of a Flow.
The issue I see would be that a user could unsub, resub, and complete a trigger another time so I think to limit this, you would have to utilize profile properties.
Looking forward to hearing others’ ideas.
A way to solve this would be to add a profile property after (or before) each email is sent. In short you could add a property: "received loyalty email” with a number corresponding to which number it is. Then at the start of the flow you need to check for each number and split the email based on this condition and enter them at the right next email.
So start of flow --> wait time --> email 1 --> create property --> wait time --> email 2 --> update property
Then for the condition
start of flow → conditional split “property about someone” - received loywalty email 2 → enter after (or before) wait time email 3.
If the flow becomes too complex you could essentialy also clone this flow and have a trigger that includes/excludes this segment so you're able to send an somewhat better 1st email “Good to see you back here”
This does however not anwer if there are any people who'd qualify for this?