Skip to content
Book a demo

One of three surfaces your shoppers see — this one re-orders the feed around the piece she opened.

curatedProducts · personalized by contextSKUs — past-clicked ids ride along, no stored profile

Curated Products.
The feed, re-ranked for the shopper in front of it.

Open one product and a small product feed comes back — a mini listing that mixes the category the shopper opened with the categories that go with it. Open the T-shirt below: it returns tees and the jeans, jackets, shoes, bags and belts that complete them. What re-orders that feed between two shoppers is contextSKUs — the handful of product ids this browser has been opening. No login, no tracking script, no stored profile. It is the same mechanic behind every curated surface.

What it returns is a product feed, not a worn look — the on-model looks live on Curated Inspiration.

One query parameter · no profile, no tracking script

One product opens → a mixed mini-PLP comes back.

A shopper opens a single T-shirt. curatedProducts returns a small product listing built around it — more tees, and the jeans, jackets, shoes, bags and belts the engine reads as going with it. Not one suggestion, not a worn photo: a genuine mixed product feed, in the engine’s own order.

Classic Crew Neck T-Shirt — catalog packshot opened
the product the shopper opened Classic Crew Neck T-Shirt top · T-Shirts · $57

This one tee returns a 24-product feed, mixed across 6 categories. More tees lead; the pieces that complete them follow, in the engine’s own order.

6top5bottom2outerwear4shoes4bag3accessory
openedClassic Crew Neck T-Shirt — catalog packshot
Classic Crew Neck T-Shirttop · T-Shirts$57
Relaxed Fit Mid-Rise Jeans — catalog packshot
Relaxed Fit Mid-Rise Jeansbottom · Jeans$98
Leather-Effect Jacket With Attached Scarf — catalog packshot
Leather-Effect Jacket With Attached Scarfouterwear · Jackets$149
Leather Loafer Shoes — catalog packshot
Leather Loafer Shoesshoes · Shoes$178
Split Suede Maxi Tote Bag — catalog packshot
Split Suede Maxi Tote Bagbag · Bags$151
Suede Leather Belt With Metal Buckle — catalog packshot
Suede Leather Belt With Metal Buckleaccessory · Belts$49
Classic Interlock Crewneck T-Shirt — catalog packshot
Classic Interlock Crewneck T-Shirttop · T-Shirts$53
Classic Interlock Crewneck T-Shirt — catalog packshot
Classic Interlock Crewneck T-Shirttop · T-Shirts$40
Ruffled Short Sleeve Top — catalog packshot
Ruffled Short Sleeve Toptop · T-Shirts$47
High-Rise Tailored Trousers — catalog packshot
High-Rise Tailored Trousersbottom · Trousers$55
Leather Platform Loafer Shoes — catalog packshot
Leather Platform Loafer Shoesshoes · Shoes$76
Shimmer Weave Crossbody Bag — catalog packshot
Shimmer Weave Crossbody Bagbag · Bags$169
Resin Bead Statement Necklace — catalog packshot
Resin Bead Statement Necklaceaccessory · Jewellery$23
Slim Fit Mid-Rise Cigarette Jeans — catalog packshot
Slim Fit Mid-Rise Cigarette Jeansbottom · Jeans$107
Contrast Lapel Structured Blazer — catalog packshot
Contrast Lapel Structured Blazerouterwear · Blazers$160
Polka Dot Ballet Flats With Bow Detail — catalog packshot
Polka Dot Ballet Flats With Bow Detailshoes · Shoes$75
Beaded Bucket Bag — catalog packshot
Beaded Bucket Bagbag · Bags$101
Adjustable Cord Necklace With Stone Accents — catalog packshot
Adjustable Cord Necklace With Stone Accentsaccessory · Jewellery$51
Soft Knit A-Line Midi Skirt — catalog packshot
Soft Knit A-Line Midi Skirtbottom · Skirts$70
Leather Derby Dress Shoes — catalog packshot
Leather Derby Dress Shoesshoes · Shoes$183
Structured Flap Shoulder Bag — catalog packshot
Structured Flap Shoulder Bagbag · Bags$195
Relaxed Linen-Blend T-Shirt — catalog packshot
Relaxed Linen-Blend T-Shirttop · T-Shirts$78
T-Shirt With Bow Detailing — catalog packshot
T-Shirt With Bow Detailingtop · T-Shirts$67
Ripped Straight-Leg Mid-Rise Jeans — catalog packshot
Ripped Straight-Leg Mid-Rise Jeansbottom · Jeans$76

This is curatedProducts’ own feed for this T-shirt. The products, the categories and the order are exact result rows from the recommendation tables (feature_database 9464, store 78). It is reconstructed offline over our demo catalog, never a live call; the relative order is the engine’s, the absolute scores illustrative. Every piece is a real catalog packshot.

bunsarcurated productsthe engine’s own feed · 6 categoriesreconstructed offline — not a live call

Same product. One shopper clicked denim first.

Two shoppers open the same T-shirt. The only thing that differs is contextSKUs — the pieces each browser had been opening. Shopper B had clicked three pairs of jeans first, so the denim-carrying looks score higher and their pieces surface earlier. Same feed, one query parameter, a different order.

Shopper B had been opening
Classic High-Rise Straight Leg JeansRipped Flare Mid-Rise JeansHigh-Rise Wide-Leg Jeans
same call, same product — only this differscontextSKUs = 584443613 · 584443778 · 584443688

The 24-card feed above is Shopper A’s — no context, the catalog’s own order. Held against Shopper B’s, card for card:

Cards 1–18 are identical in both feeds — same products, same positions. They are drawn small here because none of them moved; each one is full size in the feed above.

  1. 1Classic Crew Neck T-Shirt
  2. 2Relaxed Fit Mid-Rise Jeans
  3. 3Leather-Effect Jacket With Attached Scarf
  4. 4Leather Loafer Shoes
  5. 5Split Suede Maxi Tote Bag
  6. 6Suede Leather Belt With Metal Buckle
  7. 7Classic Interlock Crewneck T-Shirt
  8. 8Classic Interlock Crewneck T-Shirt
  9. 9Ruffled Short Sleeve Top
  10. 10High-Rise Tailored Trousers
  11. 11Leather Platform Loafer Shoes
  12. 12Shimmer Weave Crossbody Bag
  13. 13Resin Bead Statement Necklace
  14. 14Slim Fit Mid-Rise Cigarette Jeans
  15. 15Contrast Lapel Structured Blazer
  16. 16Polka Dot Ballet Flats With Bow Detail
  17. 17Beaded Bucket Bag
  18. 18Adjustable Cord Necklace With Stone Accents

the two feeds separate at card 19

Shopper Ano context
19Soft Knit A-Line Midi Skirt — catalog packshot

drops out of the visible 24

Soft Knit A-Line Midi Skirtbottom · Skirts$70
20Leather Derby Dress Shoes — catalog packshot

drops out of the visible 24

Leather Derby Dress Shoesshoes · Shoes$183
21Structured Flap Shoulder Bag — catalog packshot

drops out of the visible 24

Structured Flap Shoulder Bagbag · Bags$195
22Relaxed Linen-Blend T-Shirt — catalog packshot

↓ moves to 19

Relaxed Linen-Blend T-Shirttop · T-Shirts$78
23T-Shirt With Bow Detailing — catalog packshot

↓ moves to 20

T-Shirt With Bow Detailingtop · T-Shirts$67
24Ripped Straight-Leg Mid-Rise Jeans — catalog packshot

↓ moves to 21

Ripped Straight-Leg Mid-Rise Jeansbottom · Jeans$76
Shopper Bclicked denim first
19Relaxed Linen-Blend T-Shirt — catalog packshot

↑ up from 22

Relaxed Linen-Blend T-Shirttop · T-Shirts$78
20T-Shirt With Bow Detailing — catalog packshot

↑ up from 23

T-Shirt With Bow Detailingtop · T-Shirts$67
21Ripped Straight-Leg Mid-Rise Jeans — catalog packshot

↑ up from 24

Ripped Straight-Leg Mid-Rise Jeansbottom · Jeans$76
22Strappy Cut-Out Ballet Flats — catalog packshot

new to this feed

Strappy Cut-Out Ballet Flatsshoes · Shoes$160
23Beaded Structured Handbag — catalog packshot

new to this feed

Beaded Structured Handbagbag · Bags$142
24Geometric Buckle Leather Belt — catalog packshot

new to this feed

Geometric Buckle Leather Beltaccessory · Belts$49
  • 18cards hold their exact position
  • 3climb into view, from 22, 23 and 24
  • 3enter that Shopper A never sees
  • 3fall out of the visible 24

This T-shirt’s own lead look already carries jeans, so the denim clicks mostly confirm what was already at the top — the visible movement sits further down. Within the 24 you can see, 3 products enter (marked new) and 3 climb (marked up from): the pieces of a denim-carrying look the clicks lifted. Three others drop out of view. Go out to the engine’s default depth of 50 and it widens — 7 products enter, more jeans among them, and 25 positions change. Underneath, denim re-ranks the 357 candidate looks; over the top-20, 11 change rank — then the flatten reshuffles the feed you scroll.

bunsarcontextSKUs · one query parameterthe engine’s own re-rankreconstructed offline — not a live call

No profile to defend

Personalization with nothing to collect, store, or defend.

The shopper’s context is the list of product ids open in their own browser, handed back on the next call and used for that one answer. There is no shopper profile in our data model — so there is no CDP to integrate, no consent surface to maintain, and no tracking script on the page.

  • Deletes a CDP dependency — nothing to sync, nothing to reconcile
  • Deletes a consent surface — no cross-site identifier to disclose
  • Deletes a tracking script — the list lives in the shopper’s browser
  • No shopper profile in the data model — a breach of one cannot happen
Split Suede Maxi Tote Bag — catalog packshota piece from the feed — real catalog product
Leather-Effect Jacket With Attached Scarf — catalog packshota piece from the feed — real catalog product

First visit = hundredth visit

No cold start. A first-time shopper gets a full feed on the spot.

Recommenders that lean on a history need a warm-up window — the first session is the worst one they ever give. Here, a brand-new shopper gets exactly the same mixed feed as a returning one, because neither has a file. The one product they just opened is enough to build the whole listing.

  • No warm-up window — the opened product is the input
  • Someone on their first visit and someone on their hundredth are read the same way
  • Nothing to back-fill, nothing to migrate when a catalog changes
  • Works from the very first product the shopper opens

Here, then gone

The context is only what the shopper has open right now.

contextSKUs is the small set of products the shopper has opened this visit — not a dossier assembled over months. It steers the feed while they are on it and is forgotten when they leave. The listing re-orders around what the session touches; everything it doesn’t keeps your catalog’s own order.

  • The context is a handful of live product ids, not a lifetime record
  • It moves only what the session actually touches
  • Untouched pieces keep the order you would ship without us
  • Nothing to age out, nothing to expire
Contrast Lapel Structured Blazer — catalog packshota piece from the feed — real catalog product

How it works

One list. One formula. The whole feed re-ordered.

  1. The browser keeps the list. contextSKUs is the list of product ids this shopper has opened, and it comes back to us on the next call. No id we issue, no record we hold.
  2. The engine scores every look against it. A look scores by how many of the products the shopper has been opening it carries — either the product itself, or a close match to it from the engine’s own similar products. The looks then flatten into a single product feed with no repeats.
  3. The same list is sent to all three surfaces. One contextSKUs list goes to the outfit shelf, the inspiration looks and the product feed alike — so one session context can re-order the whole page, not a single widget. Here we show it re-order the product feed.

How this is measured — the exact formula is the scoring rule above, and the result rows are the feed below, in the order the engine returned them.

the outfit shelfthe inspiration looksthe product feed

bunsarcurated productssession context · the engine’s own formulareconstructed offline — not a live call

This is the engine’s own feed and scoring rule recomputed over our demo catalog — a reconstruction, never a live session. Which products are in the feed, and the order they come in, are the engine’s result rows; only the absolute scores are illustrative, and only the session context changes between the two runs.

Said plainly: we keep no shopper profile. That is a claim about our data model, not about server logs — the session ids ride on the request like ordinary web traffic, and can appear in a routine log like any other request does.

Where a vendor puts a lift chart, we put the shift itself.

No borrowed benchmark — no lift figure, no conversion claim, no session count, no logo wall. The proof is the feed moving: the same product, the same feed, re-sequenced by the one thing that changed between the two shoppers — the pieces each had been opening.

3 / 7new products enter the denim shopper’s feed — 3 of them within the top 24, 7 by the engine’s default depth of 50
25positions change out to 50 — the denim clicks lift the looks that carry jeans, and their pieces surface earlier
1query parameter — contextSKUs. Same product, same feed, same formula; the divergence is the session, nothing else

And the same engine is honest about the shopper it cannot read yet: a cold session — no pieces opened — gets the catalog’s own feed order, byte-for-byte identical for everyone. The feed re-orders when there is a session to read; until then it is the listing you would ship without us. See what the same engine builds →

Point it at your own range and watch the feed re-order for two shoppers who opened the same product — no profile to build.

Book a demo
Same eye · the next surface Inspiration This is the engine ordering the feed around one product. The same eye also builds the room she browses when there is no product to start from.