■§01
p.01/03How they work.
Popularity-based Recommenders
Recommends the products that are most popular across all shoppers — bestsellers, top-rated items, frequently purchased or viewed items. The same products are shown to every visitor.
ExampleDefault Shopify recs, basic merchandising rules
Collaborative Filtering
Builds a profile for each shopper from their past behavior — purchases, views, ratings — and from the behavior of shoppers with similar histories. Recommendations come from those accumulated patterns, not from the current visit.
ExampleAlgolia Recommend
Session-based Recommenders
Recommends based on what the visitor is actively doing during the current session — what they've clicked, added to cart, or searched for. Each new action updates the recommendations in real time.
ExampleDynamic Yield, Bloomreach
■§02
p.02/03Where the gap shows up.
vs ob.session
Shows the same products to every visitor
Shows personalized products to each visitor on every page
Recommendations don't change with behavior
Recommendations are personalized based on what the visitor did so far
Uses no per-visitor signal
Uses 100+ behavioral signal types per session
Where it matters.
Every first-time anonymous visitor
Every page where the merchant hasn't yet replaced default recommendations with a personalization engine
■§03
p.03/03Every approach, point by point.
| Popularity-based | Collaborative Filtering | Session-based | ob.session | |
|---|---|---|---|---|
| First-time anonymous visitor | Default bestsellers | Cold-start, falls back to defaults | Cold-start until first click | Personalized from the second page (page 1: defaults) |
| Logged-in customer interests shifted | Default bestsellers (login ignored) | Anchored to a stale stored profile | Waits for fresh clicks this session | Live session overrides stored profile |
| Lapsed shopper returns months later | Default bestsellers | Driven by old purchase patterns | Waits for fresh clicks this session | Driven by the current session, not only history |
| Browse-only session | Default bestsellers | Falls back to profile/defaults | No strong signal — falls back to defaults | Personalizes from weak signals: dwell, scroll, hover, etc. |
| Multi-category browsing session | Default bestsellers | Stays in the profile's categories | Stays in last-clicked category | Cross-category picks from live intent |
| Time to first personalized rec | Never | Needs history accumulation (days–weeks) | Mid-session, after first strong click | Second page of first session |
| Storefront placements | Widgets | Widgets (PLP rare) | Widgets (PLP rare) | Widgets + PLP personalization on any page |