Personalization

When Your Catalog Turns Over: Keeping Personalization Accurate Through Seasonal Shifts

8 min read
Abstract visualization of catalog turnover and recommendation model drift over time

There's a pattern we see at DTC apparel brands specifically around the seasonal collection transition — usually late August into September for fall, and late January into February for spring. The personalization metrics that had been holding steady for months start to drift. CTR on recommended tiles drops. Conversion from personalized sessions softens. The effect often looks like a model quality problem but it's actually a model staleness problem: the behavioral signals the system has been accumulating were trained on products that no longer exist in the catalog.

A DTC outdoor apparel brand launches their fall collection in early September. In August, roughly 45% of their active SKU count rolls off — the summer technical shorts, the lightweight hiking shirts, the warm-weather footwear — and new fall SKUs replace them. The personalization model has 4 to 6 months of behavioral data on the summer catalog: which product combinations shoppers viewed together, which categories showed strong affinity correlations, which price tiers attracted which shopper cohorts. That accumulated signal is now pointing at products that either no longer exist or are in clearance at 40% off. The new fall SKUs have zero behavioral history. They're cold-start products in a system that has relied on behavioral warmth to make good recommendations.

This is catalog-driven personalization drift, and it's predictable enough that you should be designing for it, not discovering it after the fact.

Why the Drift Is Worse Than Simple Product Removal

When a single product goes out of stock, the impact on recommendation quality is bounded — the model removes it from the candidate set, the remaining products pick up the recommendation load, and because individual products were replaceable anyway, the effect on shopper experience is small. The recommendation quality might dip slightly as the model adjusts, but it recovers quickly.

Seasonal catalog turnover is categorically different because the category-level behavioral signals drift, not just individual product signals. A shopper who spent the past two months browsing and purchasing summer technical apparel has demonstrated strong category affinity for that category. But "summer technical apparel" as a category is being replaced by "fall technical apparel" — same behavioral shopper, same underlying preference pattern, but the product set they expressed that preference through is largely gone. The category affinity signals that were strong and reliable are now pointing at SKUs that are in clearance rather than at the new fall equivalents.

The category taxonomy helps here but only partially. If your taxonomy maps "summer hiking shorts" and "fall hiking pants" to the same parent category — "hiking bottoms," for instance — the model can carry the category affinity signal forward to the new products. But many DTC apparel stores categorize by season explicitly, and shoppers browse collections or seasonal shops rather than abstract category pages. When the behavioral signal is attached to a collection structure that doesn't carry across seasons, the affinity data doesn't transfer cleanly.

The Cold-Start Surge Problem at Season Launch

At the point of a major seasonal catalog refresh, you have a large volume of new-arrival SKUs that all enter the recommendation candidate pool simultaneously with zero or near-zero behavioral history. The model's ability to rank these new arrivals is constrained to: product metadata signals (category, price tier, material attributes if available), the new-arrival elevation weight that most systems apply to recently launched products, and early behavioral signals from whatever shoppers have interacted with the new products in the first days after launch.

That early-signal window creates a compounding problem. The first shoppers to engage with new seasonal arrivals are often the most engaged, highest-intent customers — the ones who are actively looking for the new collection. Their behavioral signals are not representative of the broader shopper base. If the model uses those early signals to build product affinity and cross-product co-engagement patterns for the new season, it's learning from a skewed sample. The personalization it produces for the broader shopper base reflects the preference patterns of your most engaged early adopters, not the typical new-season shopper.

We saw this pattern clearly at a DTC activewear brand during their fall 2025 transition. Early adopters who engaged with the new collection in the first week skewed heavily toward their highest-price-tier products. The model built co-engagement associations between those premium items. When the broader shopper base started arriving in week two and three, the recommendations were front-loading premium products at a rate that didn't match the mid-tier price preferences of most of their shoppers. Recommendation click-through was below the summer baseline for nearly three weeks before the behavioral history on the new SKUs became representative enough to correct the skew.

How to Manage the Transition Window

The most effective approach to seasonal catalog transitions is to treat them as a known operational event that requires explicit model management rather than background adaptation. That means three things in practice.

Advance signal decay scheduling. Before the seasonal catalog transition, taper the behavioral weight of products that are being retired. If you know August 15th is your fall collection launch date, start reducing the behavioral weight of summer-only SKUs from August 1st onward. The model doesn't need to lose that history immediately — you want to keep it for cross-category affinity signals that will transfer to the new season — but you don't want retiring products competing for recommendation positions against new arrivals based on six months of accumulated behavioral signal that the new products haven't had time to build.

Category-affinity bridging rather than product-affinity inheritance. Rather than trying to carry product-level behavioral signals across a seasonal transition (which mostly doesn't work because the specific products are different), carry category-level signals. A shopper who demonstrated strong category affinity for "summer technical outerwear" should see their affinity score transferred to "fall technical outerwear" at the category level when the new season launches. This doesn't require the model to pretend the old products were the same as the new ones — it just carries the behavioral evidence that this shopper cares about technical outerwear as a category into the recommendation prior for the new season's equivalent products.

Staged new-arrival elevation with a decay curve. New-arrival elevation weights are standard in most recommendation systems, but the critical design choice is the decay curve. A new SKU launched at the start of a major seasonal collection should start with a meaningful elevation weight — enough to get early behavioral signal from shoppers who will discover it — but that elevation should decay over 2 to 4 weeks as real behavioral data accumulates. If new-arrival elevation stays high for too long, you're showing new products based on recency alone rather than behavioral relevance, which undermines the whole point of a personalized grid.

What This Doesn't Fix: The Known Unknowns

Even with careful seasonal transition management, there's a residual quality window of 2 to 4 weeks after a major catalog refresh where recommendation quality is below what it will be once the new-season behavioral data matures. This is a structural constraint of behavioral recommendation systems: they need behavioral data to make behavioral recommendations, and new products don't have that data at launch.

We're not saying you can eliminate this quality dip entirely. The goal is to minimize its depth and duration — to avoid a 6-week quality trough that damages returning shopper experience during a peak new-collection traffic window. With advance signal decay, category bridging, and well-calibrated new-arrival elevation, you can typically compress that trough to 10 to 14 days and keep the quality decline mild enough that shoppers don't notice it in the form of obviously irrelevant recommendations.

The brands that handle seasonal transitions best are ones where the merchandising team treats the collection launch as a personalization event, not just a catalog event. That means communicating with the personalization system about what's coming — which categories are rolling off, which new categories are launching, which existing perennial SKUs are carrying over — so the signal management can be proactive rather than reactive. A recommendation engine that finds out about a 40% catalog refresh at the same moment shoppers do will always trail by a few weeks. One that has the transition mapped out two weeks in advance can start preparing the signal stack before the catalog flips.

The Perennial SKU Anchor

One practical technique for stabilizing recommendation quality across seasonal transitions is to designate a subset of perennial SKUs — products that carry across seasons, like everyday basics, core accessories, or staple colors of your most popular styles — as behavioral anchors. These products accumulate behavioral signal continuously across seasonal boundaries and serve as stable reference points in the recommendation graph when the broader catalog is in flux.

When a shopper's behavioral history is heavily concentrated on products that are rolling off the catalog, perennial SKU affinity signals provide a stable fallback for initial post-transition recommendations while the new seasonal products build their own behavioral history. It's not a perfect substitute for rich new-SKU behavioral data, but it prevents the recommendation quality from falling all the way back to cold-start behavior during the transition window.

More from the blog

Browse all articles