How an affinity profile is built
The profile is assembled from weighted behavioural events:
| Event | Weight |
|---|---|
| Product page view | 1 |
| Add to wishlist | 2 |
| Add to cart | 3 |
| Purchase | 5 |
Every weight is adjusted for recency: an event from two weeks ago counts half as much as one
from today. That keeps the profile pointed at current intent rather than the whole history.
What the profile contains
Each affinity profile holds several dimensions:
- Category affinity: Sneakers 0.87, Jackets 0.43, Accessories 0.21
- Brand preference: Nike 0.91, Adidas 0.65
- Attribute preference: colour, material, size
- Price band: the median price of viewed products defines the shopper’s range
How it feeds personalization
User → Affinity profile → Personalization
├── Recommendation widgets
├── PLP (listing sort order)
├── Personalized homepage banners
├── Triggered email campaigns
└── Retargeting audiences
Cold start: what to do with new users
For visitors with no history — typically their first one to three sessions — there is not yet
enough signal to build an affinity profile. The system falls back to cold-start strategies:
popular products, bestsellers, or content-based recommendations derived from the attributes of the
page the visitor is currently on.
As events accumulate — usually after five to seven interactions — the profile becomes dense enough
to drive genuinely personalized recommendations.