We didn’t build this content recommender model — but we did build a workplace where things like this happen.
At Peacock, personalization powers much more than the homepage. Tailored experiences span across sports, genre subpages, and many other surfaces. Our production systems operate at massive scale, serving tens of millions of users daily. That scale demands a high degree of control — especially over how carousels are labeled, ordered, and blended with editorial and promotional content. We optimize for multiple business and user objectives — like continuing a show, re-watching favorites, or surfacing trending titles — all while ensuring editors retain the ability to shape the overall experience.
What you’re about to read wasn’t developed at Sky, wasn’t part of any official roadmap, and the methods described here are not part of Peacock’s production systems. Instead, this is a piece of academic research focused on discovery — exploring how automatically generated, semantically coherent collections could enrich a content page with more diverse and novel items.
While some of the ideas were inspired by real-world challenges, the implementation and experiments are entirely separate from Peacock’s personalization infrastructure. Curious to know more? Just scroll on.
If you've ever opened your favorite app — whether for videos, music, shopping, or beyond — you’ve likely seen multiple rows (or "carousels") of recommendations: “Keep Watching,” “Just for You,” “Hot Right Now,” and so on. Yet much of the academic research still focuses on a single ranked list — one vertical column of suggestions.
That mismatch between real-world interfaces and research is exactly what inspired the framework presented in ““Full-Page Recommender: A Modular Framework for Multi-Carousel Recommendations,” In the post below, our colleague Jan Kislinger walks you through why multi-carousel layouts matter, how his framework tackles the challenge, and what it could mean for the next generation of recommendation experiences (see panels below for a visual example).

Why Carousels?
1. Reflecting Real User Behavior
When platforms use carousels, users naturally scan pages in an F-shaped pattern—glancing at the top carousels before scrolling down or swiping horizontally. By flattening everything into one long list, traditional evaluation methods miss the way people actually browse.
2. Balancing Multiple Goals
A strong carousel page has to juggle different objectives:
Relevance: Surfacing what a user is most likely to enjoy.
Diversity: Keeping the page fresh, so it doesn’t feel repetitive.
Coherence: Ensuring each row sticks to a theme—think “Romantic Comedies” or “Nature Documentaries.”
Deduplication: Avoiding the same item appearing in multiple rows.
Pushing relevance too hard can hurt diversity; focusing only on diversity might dilute relevance. Our framework seeks a balanced, principled approach.
A Three-Part, Modular Approach
Jan breaks the problem into three pieces, each manageable on its own:
1. Item Ranking starts with a standard recommendation model—matrix factorization, autoencoders, or transformers—that assigns each item a “relevance score” for the user.
2. Collection Generation
Next, Jan groups items into coherent “collections.” These could be broad genres (Comedy), niche themes (Heist Movies), or editorial picks. In the experiments, he tried:
Metadata-based grouping (using tags like “comedy” or “historical”)
Clustering in an embedding space, so items with similar user-behavior patterns get grouped
Hybrid, editorially curated lists (e.g., “Editor’s Picks”)
Because items can belong to multiple collections—just like a movie can be both Comedy and Romance—the aim was to preserve flexibility.
Carousel Layout Optimization
Finally, Jan assembled the collections into a vertical list of carousels using a greedy, sequential algorithm. At each step:
A combined score for each potential carousel is calculated based on item relevance and “freshness” (to avoid duplicates).
The top-scoring carousel is picked for the next row, then item freshness (“temperature”) are updated before moving on.
This greedy method approximates a global optimum well enough and runs quickly in real-time.
Measuring Success Beyond Accuracy
Instead of simply flattening everything into one list, a real user behavior is simulated:
F-Shaped Scanning: items are weighted based on where they appear on the page, prioritizing the top-left.
Interest Dynamics: As a simulated user browses, their interest increases when they find relevant items and fades when they don’t.
By converting the page into a “viewing sequence,” Jan can apply classic metrics like DCG or precision@k in a way that respects layout.
Why This Matters
Shifting from single lists to full-page carousels isn’t just cosmetic. It directly affects:
Discovery: Improved diversity helps surface unexpected delights.
Engagement: Better layouts keep users exploring longer.
Business Metrics: Platforms can showcase new or high-margin items without hurting user satisfaction.
Whether you’re a researcher, product manager, or an avid streamer, understanding this framework sheds light on where recommendation interfaces are headed.
Looking Forward
In the paper, several next steps are suggested:
Joint Optimization: Planning multiple carousels together instead of one-by-one.
Automatic Labeling: Leveraging language models to craft catchy, accurate carousel titles.
Live A/B Testing: Putting these ideas to the test on real platforms.
As multi-carousel layouts become even more prevalent—from video streaming to online shopping—Jan hopes our Full-Page Recommender framework provides a solid foundation for the next wave of discovery engines.
A few words about the author and how this project came to life:
This research was born out of pure academic curiosity, a bit of movie magic, and one of our team members being a recommender systems scientist in disguise. Jan Kislinger is currently pursuing a PhD in Informatics at Czech Technical University — building very clever algorithms in between his day job and conference deadlines.
His work impressed not only us, but also the academic community: Jan presented it at RecSys 2025, the world’s leading conference on recommender systems.
Naturally, the idea sparked curiosity in our team. To explore its potential further, we tested the model offline using anonymized data from Peacock, one of NBCUniversal’s streaming platforms — and the results were promising.
At Sky Czech Republic, we’re always eager to support student talent and give space to fresh ideas that can push the boundaries of product innovation. This is one of those moments when academic curiosity meets real-world relevance — and we couldn’t be happier to have Jan on the team.


