Sushinet

How to Auto-Tag Bestseller Products on Shopify by Units Sold

Automatically tag Shopify products as Bestseller once they cross a real units-sold threshold, over the last 30 days, 90 days or all time — no manual export, and the tag updates as sales change.

how-to

"Bestseller" badges sell — but only if the tag behind the badge reflects what's actually selling, not a list someone updated by hand three months ago and forgot about.

Why Shopify doesn't do this natively

Shopify's admin lets you sort a collection by best-selling, which is genuinely useful for page order — but sort order isn't a tag, so a theme badge, an email-flow filter, or a saved admin search that reads tags has no way to know which products actually qualify. The common workaround is a manual export of sales data, checked and re-tagged every so often — accurate the day it's run, stale the moment sales shift.

The fix: a rule that reads real sales data

An auto-tagging rule can check a product's actual units sold over a real window and tag it the moment it qualifies:

If product's units sold in the last 30 days is at least 50 → tag bestseller.

Because the tag lands on the product, any theme badge, filter, or email flow that reads product tags picks it up immediately — no manual re-export, no waiting for someone to notice a product crossed the line.

Because it's a rule:

  • Choose your own window. Last 30 days, last 90 days, or all time — each tells a different story, and you can run more than one at once (a "trending" tag and an "all-time" tag).
  • Set your own threshold. 50 units might mean bestseller for one catalogue and barely notable for another — the number is yours.
  • Combine with other conditions — bestseller and still in stock, so the badge never points a customer at something that's about to disappoint them at checkout.

Why the window you pick matters

An all-time threshold never needs to come off — once a product crosses it, that fact about its history doesn't change. A rolling window (last 30 or 90 days) is different: it should come off automatically once a product's recent sales fall back under the line, so the badge keeps meaning "selling well right now" instead of quietly becoming "sold well at some point."

Rules2Tag is built to run rules like this — reading a product's real sales figures rather than a manual export, previewed against a real product before it runs, and self-healing as a rolling window's numbers change.

Rules2Tag does this automatically

Rules2Tag applies and removes tags like these from a plain-English rule you write once — backfilled against your order history, taken off again when a condition stops matching, and no workflow builder to babysit.

Questions

Doesn't Shopify have a 'best selling' sort already?

Yes — Shopify offers a 'Best selling' sort order on collection pages, and it's genuinely useful for arranging products by how well they've sold recently. But a sort order is a runtime calculation Shopify applies when a page renders, not a fact stored on the product — there's nothing to filter, export or save. A theme badge that reads 'Bestseller' on a product card, a saved admin search like tag:bestseller, an email segment built around bestselling products, or a Shopify Flow workflow all need something they can check per-product directly, and a sort order gives them nothing to key off — it only ever describes the current page's ordering, never an individual product's status. A tag is the opposite: a stored fact on the product record itself, so every one of those tools can read it the same way they'd read any other tag, without knowing anything about how Shopify computes its sort.

What counts as a bestseller — is it a fixed number or relative to other products?

This rule works off an absolute units-sold threshold you choose yourself — say, 50 or more units — rather than a ranking relative to the rest of your catalogue. That's a deliberate difference from Shopify's own 'Best selling' sort, which IS relative: it always has a #1, even in a ten-product catalogue where nothing is actually selling well. An absolute threshold means the tag is a fact about that one product's own sales record, not a moving target that shifts depending on what else you happen to be stocking that month. You can still approximate a relative feel by picking a threshold near where your own top slice of products historically sits, and revisiting it as your catalogue and sales volume grow — but the rule itself always evaluates the same fixed number, so what 'bestseller' means on your store doesn't quietly drift without you deciding it should.

Can I use different windows — this month's bestsellers vs all-time?

Yes — the same rule shape works over any window you choose: the last 30 days, the last 90 days, or all time, and nothing stops you running more than one at once, each with its own threshold. A 'trending now' tag on a 30-day window catches a product that's suddenly taking off — a seasonal item, something that went viral, a restock that sold through fast — while an 'all-time bestseller' tag rewards a product with a genuinely long sales history, even if this particular month is quiet for it. The two tell different stories and usually deserve different thresholds too: a 30-day window naturally needs a lower bar than all-time, since there's simply less time for units to accumulate. Because each window is its own independent rule, changing the threshold on one — tightening 'trending' for a big sale event, say — never touches how the all-time tag behaves.

Does the tag come off if sales slow down?

That depends entirely on which window the tag is built from. Units sold ALL TIME can only ever increase — a product that has sold 200 units in its lifetime has still sold 200 units next month even if it sells zero more, so an all-time bestseller tag never needs removing once it's earned. A last-30-days tag behaves completely differently, because the window itself moves: even with zero new sales, a product's 30-day count quietly drops every day as older orders roll out of the window and nothing new replaces them. A rule built on that window should re-check the condition regularly and remove the tag the moment a product's recent sales fall back under the threshold — otherwise a 'Trending now' badge keeps pointing customers at something that stopped trending three weeks ago, which is exactly the kind of stale, manually-maintained badge this rule is meant to replace.

Related guides

Ready to try it?

Rules2Tag applies and removes tags like these from a plain-English rule you write once — backfilled against your order history, taken off again when a condition stops matching, and no workflow builder to babysit.

See what Rules2Tag does · Pricing · ← All auto-tagging guides