Boost Seasonal Sales: Dynamic Best-Seller Collections on Shopify (Without Expensive Apps!)

Hey there, fellow store owners! As someone who spends a lot of time digging through the Shopify community forums, I often come across brilliant ideas and even more brilliant solutions shared by merchants just like you. Recently, a thread caught my eye that really resonated, especially for those of us in seasonal niches or fashion.

It all started with a fantastic feature request from Nataliya at Loja Style Me, a Brazilian fashion boutique. Nataliya highlighted a common pain point: Shopify's built-in "Best Selling" sort for automated collections looks at your store's entire sales history. While useful, this can be a real headache for businesses with strong seasonality.

Think about it: if you sell swimwear, your "historical best sellers" might include winter coats from years ago, or last summer's styles that are no longer in stock. As Nataliya pointed out, this clogs up dynamic ads on platforms like Meta Ads and Google Shopping, showing irrelevant items and wasting your ad spend. What we really need, she argued, is the ability to create automated collections sorted by "Best Selling within X days" – say, the last 30, 60, or 90 days.

This would allow us to push hyper-relevant, seasonal best-sellers directly to our marketing channels without relying on expensive, potentially buggy third-party apps. A truly valid point, right?

The Community Steps Up: A Clever Workaround

While a native feature would be amazing (and we hope Shopify's product team is listening!), another savvy merchant, Tim, shared a fantastic workaround that achieves pretty much the same goal, using tools already available within Shopify: Analytics Reports and the Shopify Flow app. And here’s the best part – for many Shopify plans, Flow is free to use!

Tim's solution is elegant because it leverages your own sales data and automates the collection updates daily. Let's break down how you can implement this for your own store.

Step 1: Crafting Your Best-Seller Report in Shopify Analytics

The first piece of the puzzle is creating a custom report that identifies your best-selling products within a specific timeframe. You'll find this under Analytics > Reports in your Shopify admin. While Shopify's report builder is powerful, Tim shared a specific query that gets straight to the point. This query looks a bit like SQL, and you can often paste or adapt similar queries into custom report tools if you have that access, or use the visual builder to approximate it.

Here’s the core of Tim's query, which fetches the top 20 bestsellers from the last 30 days:

FROM sales
  SHOW product_id, net_items_sold, gross_sales
  WHERE product_title IS NOT NULL
  GROUP BY product_title, product_id WITH TOTALS
  SINCE startOfDay(-30d) UNTIL today
  ORDER BY net_items_sold, gross_sales DESC
  LIMIT 20

Let's unpack that a little:

  • FROM sales: We're pulling data from your sales records.
  • SHOW product_id, net_items_sold, gross_sales: We want to see the product ID, how many units were sold, and the total revenue for each.
  • WHERE product_title IS NOT NULL: Just ensures we're looking at actual products.
  • GROUP BY product_title, product_id WITH TOTALS: This groups all sales for the same product together and gives us totals.
  • SINCE startOfDay(-30d) UNTIL today: This is the magic part for seasonality! It restricts the data to sales from the last 30 days. You can adjust -30d to -60d or -90d to change your timeframe.
  • ORDER BY net_items_sold, gross_sales DESC: Sorts your products by the number of items sold, then by gross sales (to break ties), both in descending order (highest first).
  • LIMIT 20: This caps the report to your top 20 bestsellers. You can increase or decrease this number as needed.

Once you've set up or adapted a report like this, make sure to save it. This report will be the dynamic source for your new collection.

Step 2: Automating with Shopify Flow

Now for the automation! Shopify Flow is an incredibly powerful (and often overlooked) tool that lets you create automated workflows. If you haven't explored it yet, you definitely should! It's available on most Shopify plans, including Shopify, Advanced Shopify, and Shopify Plus.

Here’s how you’d set up a flow to leverage your new report:

  1. Install Shopify Flow: If you don't have it, search for "Shopify Flow" in the Shopify App Store and install it. It's a free app from Shopify.
  2. Create a New Flow: In your Shopify admin, go to Apps > Shopify Flow and click "Create workflow."
  3. Set the Trigger: You'll want this collection to update regularly. The simplest trigger for this is a "Scheduled time." Choose to run it daily, perhaps in the early morning before your main traffic hits.
  4. Add an Action: Get Report Data: This is where you connect to the report you just created. Look for an action that allows you to "Get data from a report" or similar. You'll select your saved "Best Sellers (Last 30 Days)" report.
  5. Process the Report Data: Flow will get a list of product IDs from your report. You'll then need to iterate through these products.
  6. Add / Remove Products from Collection:
    • First, clear the existing collection: Before adding new best sellers, you'll want to remove all products currently in your target collection. This ensures only the latest best sellers are present. Look for an action like "Remove products from collection."
    • Then, add the new best sellers: For each product ID returned by your report, add an action to "Add product to collection." You'll specify the collection you want to update (e.g., "Seasonal Best Sellers").
  7. Activate Your Flow: Once configured, turn your flow on. It will now run daily, clear your collection, and populate it with the latest best-selling products from your report!

This setup allows you to create dynamic collections like "Last 30 Days Best Sellers," "This Month's Top Picks," or "Current Season Favorites." You can then link these collections directly to your online store's navigation, feature them on your homepage, or, as Nataliya intended, use them to power your product feeds for Meta Ads and Google Shopping.

Beyond the Workaround: Why This Matters

While Tim's solution isn't a native UI button, it's a testament to the power and flexibility that Shopify offers through its underlying tools. It solves a very real problem for many merchants, especially those with inventory that fluctuates with trends or seasons. By having truly relevant products in your "best sellers" collections, you're not just improving ad efficiency; you're enhancing the customer experience on your site, guiding them to products that are genuinely popular right now.

So, if you've been struggling with stale best-seller lists, give this combination of Shopify Analytics Reports and Shopify Flow a try. It might take a little setup, but the benefits in terms of targeted marketing and improved sales can be significant. It's a fantastic example of how connecting the dots between Shopify's powerful features can unlock custom solutions that feel almost native.

Share:

Use cases

Explore use cases

Agencies, store owners, enterprise — find the migration path that fits.

Explore use cases