Shopify · May 26, 2026
How to create a 'Bestsellers from Last Christmas' collection in Shopify
Every store hits the same problem in October: which products do we feature for Christmas? The honest answer is “the ones that sold well last Christmas.” But pulling that list, building a collection from it, and keeping it fresh is enough manual work that most stores skip it and guess instead.
Here’s how to automate it.
The intuition
Last year’s holiday window is a more reliable signal than this year’s last-30-days. A scarf that sold 200 units in December and 5 units in May should be a featured product on November 1st of the next year, not buried below your spring inventory.
The window matters too. “Best selling” sort weighs recent sales; it can’t see that a product was a hit one Christmas and will be again. You need a true year-over-year window: the same calendar dates from one or more previous years.
The manual version (don’t do this)
If you wanted to build this collection by hand:
- In Shopify admin, go to Analytics → Reports → Sales by product
- Set the date range to December 1-26 of last year
- Sort by units sold, export the top 30 to CSV
- Create a new collection called “Bestsellers from Last Christmas”
- Set the collection type to manual, and add each product one by one
- Repeat the export → add cycle next year
It works once. It’s painful next year. And it’s stale within a week as your catalog changes.
The automated version
RankRobin has a feature called Seasonal collections specifically for this. You pick a date window from a previous year, pick a metric, and pick how many products you want. It creates the Shopify collection and populates it. Then it regenerates on a daily check, so it stays accurate as more orders come in and as your catalog changes.
Setup, step by step
- Install RankRobin on your Shopify store
- Wait for the historical sales backfill to complete. You need at least one full prior Christmas in the data for this to work
- In the RankRobin dashboard, open Seasonal
- Click New seasonal collection
- Pick a preset: Christmas (US, UK, DE) or Jul (SE) depending on your locale
- Pick the year offset: usually
1(last year). Use2if you want a two-year smoothed average - Pick a metric. Units sold is the safest default for holiday collections
- Pick top-N: 30 is a good starting number for a homepage feature, 60 if you want a deeper page
- Pick a source: All products if you want a global “last Christmas bestsellers” view, or One collection if you want “last Christmas’s bestselling dresses”
- Save
RankRobin creates a Shopify collection with the products from that window. The handle defaults to something like bestsellers-from-last-christmas, which you can rename if you want.
When to create it
Create the collection in early November, even if Christmas is six weeks away. Two reasons:
- The collection populates from your prior-year sales the moment you save it, so it’s useful immediately
- You want Google to crawl the new URL before your traffic peak, not the week before
If you wait until December 1st, you’ve left a month of organic discovery on the table.
Using it on your storefront
Once the collection exists, it’s a normal Shopify collection. You can:
- Link to it from your main navigation as “Holiday Top Sellers” or “Last Christmas’s Bestsellers”
- Add it as a featured collection on your homepage from your theme editor
- Reference it by handle in Liquid:
{% raw %}{{ collections['bestsellers-from-last-christmas'].products }}{% endraw %} - Use it as the audience for an email campaign (“Our customers’ top picks from last Christmas”)
- Run paid ads against the URL during the buying window
Edge cases
First year on Shopify. If you only have a few months of order history, year-over-year windows don’t have data to work with. Use a rolling window for the first year, then switch to year-over-year next season.
Catalog turnover. Products you sold last Christmas but discontinued won’t appear in the new collection. RankRobin only includes products that currently exist in your Shopify catalog. If you want to highlight similar products from a discontinued line, use a source collection (e.g. “Dresses”) so the rule pulls only from active inventory.
Multiple holiday locales. A Shopify store selling in both Sweden and the US can create separate seasonal collections for Jul (Dec 13 - Jan 6) and Christmas (Dec 1 - 26) and link the right one from each market’s navigation.
Beyond Christmas
The same pattern works for any seasonal window:
- “Top Black Friday products” (the original use case for a lot of stores)
- “Last summer’s bestsellers” (custom range, June-August)
- “Mother’s Day favorites” (locale-specific preset)
- “Last back-to-school season” (custom range, August-September)
If your sales have a seasonal rhythm, you have a seasonal collection waiting to be built.