Dynamic Yield affinity-based personalization enables you to translate user interactions with your products (product views, purchases) and engagement into simple preference scores to your product catalog attributes. This score can help you present product recommendations and promotions based on user preferences. For example, recommend pink products to users whose favorite color is pink, or target the new shoe collection promotion to users who are interested in shoes.
Selecting attributes to add to your User Affinity Profile
- Click Assets in the top navigation and click Data Feeds.
- Click the View Feed icon in the Product Feed row.
- Select the attributes from the Affinity Profile Attributes dropdown, and then click Save.
Pro tip: Best practices
While your product feed includes many attributes, it is recommended to focus on up to 4 attributes that characterize your users the most. That said, we do support up to 10 attributes. A good rule of thumb: If there are more than 50 different values for this attribute, it's probably not a good attribute to use.
How does it work?
Step 1: Collection
For each engagement type, Dynamic Yield collects all the product attribute values that the user interacted with. We start collecting product interaction from the first product or category page view, add to cart, or purchase. In the context of a single visitor, we can imagine the following table:
Attribute: |
Color |
Style |
Gender |
Price Range |
||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Value: |
green |
red |
blue |
T |
tank |
cami |
Men |
Women |
Boys |
Girls |
<$50 |
>$50 |
product view |
4 |
6 |
2 |
12 |
0 |
0 |
12 |
0 |
0 |
0 |
12 |
0 |
Add to cart |
1 |
1 |
0 |
2 |
0 |
0 |
2 |
0 |
0 |
0 |
2 |
0 |
Purchase |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
The table above describes the following session: A visitor generated 4 pageviews in which the product color was green, 6 in which the product was red and 2 that were blue. All viewed items were T shirts for men priced under $50. He added two items to cart (red and green T shirts) but ultimately bought a single red T shirt.
Note: A limited set of product attributes are used in affinity calculations in order to ensure that the calculations are performed efficiently. You can view which attributes are included in the calculation at the top of your Product Feed page. To modify the list of attributes, speak to your Customer Success Manager.
Step 2: Calculating
The score sums up the total engagements for each value, and weighted by engagement type and engagement recency.
Engagement type weight
Each interaction type (for example, product view, add to wishlist, and so on) receives a coefficient determined by an assumed level of intent of that interaction, based on how rare the interaction is (in comparison to pageviews). For example, making a purchase receives more weight than adding something to the cart, which receives more weight than product views. When calculating the attribute value score, the occurrence of each engagement type is multiplied by the engagement type coefficient.
You can adjust the automatically-calculated weight of the coefficient to meet your particular business needs. If you need to adjust the weights of these interactions, speak to your Customer Success Manager.
∑ Engagement type weight x attribute value count = score
Let’s assume the following coefficients: Purchase weight is 4, Add to Cart weight is 2, and Product View weight is 1. The total score for attribute value “color:red” is (1x1x6)+(20x2x1)+(60x4x1) = 286
Coefficient (automatic) |
Weight |
Color |
|||
---|---|---|---|---|---|
green |
red |
blue |
|||
Product View |
1 |
1 |
4 |
6 |
2 |
Add to Cart |
20 |
2 |
1 |
1 |
0 |
Purchase |
60 |
4 |
0 |
1 |
0 |
Score |
|
6 |
12 |
2 |
Engagement recency weight
To identify user intent in real time as well as preference changes over time, each interaction receives a recency coefficient in order to favor recent activity over historical activity. There are three supported recency periods:
- Real time: The last 48 hours including the current browsing session
- Recent history: the last 30 days
- Old history: the last 6 months.
When calculating an attribute value score, the score is multiplied by recency weight too.
∑ recency weight (engagement type weight x attribute value count) = score
Let’s assume the same user, from our previous example, comes back to the site 2 weeks later and purchases the green T-shirt he abandoned in the cart last time. Assuming that the recency coefficients are 8 for real time interaction and 2 for recent interactions the calculation of a total score for color green is now: 2(1x4)+2(2x1)+2(4x0) + 8(4x1)= 44
Attribute: |
Color |
||||
---|---|---|---|---|---|
Recency |
Value: |
Weight: |
green |
red |
blue |
Recent History (weight = 2) |
Product view |
1 |
4 |
6 |
2 |
Add to cart |
2 |
1 |
1 |
0 |
|
Purchase |
4 |
0 |
1 |
0 |
|
Score |
6×2=12 |
12×2=24 |
2×2=4 |
||
Real Time (weight = 8) |
Purchase |
4 |
1 |
0 |
0 |
Score |
4×8=32 |
0 |
0 |
||
Total Score |
44 |
24 |
4 |
For users that are identified on multiple devices, the affinity profile is calculated based on cross-device behavior.
How can you leverage user affinity?
The affinity profile of a user can be used several ways:
- Recommendations: a recommendation algorithm, that allows you to recommend products according to each user's past behavior. For example, if the user purchased a lot of black shirts - the algorithm will recommend her more black shirts.
- Behavioral Targeting: a targeting and audience condition that allows you to target users who have a strong affinity to a specific value of a specific attribute (e.g. high affinity to black color).