Guide for Keeping Track of Profiles in Klaviyo Flows
With this informative guide, originally written by Michaela Fooksa and published on the Klaviyo blog, you’ll learn how to create a profile property containing a list of all Flows a profile is currently in, and a profile property containing a list of all Flows a profile has successfully completed, using Klaviyo’s powerful tool – custom profile properties.
Bottom Line: If you own an ecommerce business and want to have more control over your messaging by understanding which Klaviyo Flows your customers are in, then this piece is a must-read.
Going forward, maintaining accurate track of profiles currently in Klaviyo Flows could open up new opportunities for ecommerce businesses to personalize their marketing messages and improve customer engagement significantly.
Understanding Klaviyo’s Custom Profile Properties
Custom profile properties in Klaviyo can take on many forms such as text properties, list properties, and dictionary properties. Learning to manage these properties effectively is crucial for ensuring that each profile receives personalized marketing messages.
A Common Challenge
One frequent issue is determining whether a profile is actively in a flow. While this can be achieved using the ‘Update Profile Property’ action, it does not support updating list-type profile properties, necessitating separate profile properties for each Flow, which can then pile up on a customer profile.
This strategy combines all Flows into a single comprehensive property that contains all Flows a profile is currently in, and also running daily checks to verify that profiles have not exceeded the time scope of each flow. Thus, even if a customer fails flow filters, the Flow will still be removed from their profiles.
What You Will Need
- A Klaviyo Flow containing at least 2 webhooks
- A Napkin.io account
- A Klaviyo List
The instructions are divided into four parts:
Part 1: Set up Napkin.io functions
The first step involves creating an account on Napkin.io, generating a private API key in Klaviyo and defining three functions on Napkin.io called “Active Flows”, “Past Flows”, and “Flow Cleaner”.
Part 2: Set up current_flows webhook
This part involves creating a list in Klaviyo, setting up a webhook at the beginning of the flow, configuring the webhook body to pass parameters, and setting up authentication.
Part 3: Add past flows webhook
The third part involves adding a new webhook to the end of the flow to track past flows and updating profiles based on if any flows have lapsed.
Part 4: Set up the Flow Cleaner Function
In this part, update the ID of your Active Flows List and schedule the function to run daily
With this strategy, you will automatically be able to keep track of which Flows each of your profile is in. Having this information at your disposal can prove invaluable in controlling and customizing your interactions with your customers. Segmenting based on the ‘current_flows’ property provides total control over simultaneous customer messages, thereby enhancing the customer experience.
If you want to dig deeper, check out the following resources: