At a glance
The top revenue-generating products in the period, ranked by total revenue. Almost every ecommerce store follows the 80/20 rule: 20% of products produce 80% of revenue. The top-N table identifies that 20%, and is the canonical input to: (a) merchandising priority (which products get hero placement), (b) inventory priority (which products must never go OOS), (c) marketing priority (which products get ad spend), (d) margin protection (which products warrant supplier negotiation), and (e) catalogue rationalisation (which products earn their shelf space).
Calculation
Worked example
A UK-based BigCommerce home-and-garden store, top products reading on Wednesday 15 May 26 (30D).
What the top-products reading is telling us:
- Top 10 produce 42.4% of revenue; top 100 produce 78.5%. Classic ecommerce concentration, slightly less concentrated than the typical 80/20 (suggests a healthy long-tail catalogue), but still heavily anchored in the top tier.
-
Bestseller velocity matters more than absolute count. Garden Hose 30m at rank 1 sold 412 units (high velocity, low AOV); Patio Set Wicker at rank 2 sold 86 units (low velocity, high AOV). Both produce similar revenue, but their operational implications differ wildly:
- Garden Hose: high-velocity SKU. Must never go OOS. Set low-stock threshold at 50+ units. Supplier lead time matters enormously.
- Patio Set: low-velocity, high-AOV SKU. OOS less catastrophic per day, but each lost order is £444. Set higher per-product fulfilment SLA.
-
Inventory and ad spend prioritisation.
- Aggressive low-stock thresholds for top 100: bump from default 5 to 20-50 units depending on velocity.
- Ad spend allocation: allocate 70-80% of paid budget to top 100 SKUs (where conversion is highest and CAC most predictable).
- Supplier negotiations: the top 100 are the leverage points for cost reductions; even 2% off COGS on the top 100 is meaningful margin.
-
Concerning movements:
- Patio Heater Gas (-12% vs P): seasonal, patio heater demand drops as weather warms. Expected.
- Garden Hose 15m Standard (-8% vs P): cannibalised by the larger 30m variant (+14%). Likely a category mix shift, not a real loss; merchandise the 30m as the default.
- Patio Set Wicker (-3%): likely competitive shift; investigate competitor pricing.
-
Strong growth movements:
- BBQ Charcoal Pro (+28%): BBQ-season tailwind. Confirm inventory; promote in seasonal email.
- Decking Cleaner 5L (+18%): spring cleaning category. Cross-sell with other decking products.
- Long-tail health. 4.5% from products outside the top 1,000. This is a healthy long-tail proportion, neither too dependent on bestsellers nor wasted on dead inventory. Stores below 2% long-tail proportion are highly bestseller-dependent (vulnerable); stores above 15% may be diluted with products that don’t earn their carrying cost.
-
Recommended actions:
- Confirm top 10 inventory levels, none should be at risk of OOS in next 14 days.
- Review competitor pricing on declining items (Patio Heater Gas, Garden Hose 15m Standard).
- Capitalise on growth items via email + paid media campaigns on BBQ Charcoal and Decking Cleaner.
- Quarterly catalogue rationalisation review for products in the bottom 1,000-by-revenue if they’re consuming inventory or marketing resources.
- Read top 10; assess concentration risk.
- Confirm inventory protection for top 100.
- Identify movement vs prior period; investigate large changes.
- Allocate marketing + supplier focus on the bestseller tier.
- Periodic long-tail review for catalogue rationalisation.
Sibling cards merchants should reference together
Reconciling against the vendor’s own dashboard
Where to look in BC: Analytics → Insights → Products → Top Products by Revenue; Reports → Sales by Product. Why our number may differ:
Cross-connector: complement with
klaviyo.klv_segments_overview (which audiences buy each top product) for marketing ROI.
Quick rule: confirm bundle handling and refund handling first.
Known limitations / merchant FAQs
Q: We have one product producing 30% of our revenue. Is that a problem? Concentration risk, yes. Single-product dependency means an OOS event, supplier failure, or quality issue on that one product can wipe 30% of revenue overnight. Mitigations: (a) aggressive inventory buffer + secondary supplier, (b) develop adjacent or substitute products to diversify, (c) ensure ad spend is not 100% concentrated on this single SKU. Q: How does this card differ frombc_revenue_by_brand or bc_revenue_by_category?
This is per-SKU; brand and category are aggregations. The three together give the merchandising story: which specific SKUs drive revenue, which brands they belong to, which categories they sit in. Use all three for inventory, marketing, and supplier negotiation.
Q: Bundle products, does the parent or the child SKU show up?
Configurable. Default: line-level (children appear individually with their portion of the bundle revenue). Some merchants prefer the parent (the bundle is what was sold). Configure per profile.
Q: We have a seasonal product that ranks #1 in summer and #500 in winter. How is the card useful?
Read the trend column (vs P), large movement signals seasonality. For year-round merchandising decisions, use the longer-window views (90D or 365D rolling) rather than 30D. Vortex IQ provides both; the dashboard hero is 30D for operational pulse.
Q: Some of our top products have negative margin. Is the card showing that?
Not directly. This card is revenue-ranked. To see margin-ranked, use bc_product_margin. A product can rank top by revenue but be unprofitable (loss-leader, deep discount, COGS underestimate); cross-checking with margin is essential.
Q: We use BC’s “preorder” feature for upcoming products. Are pre-order revenues counted here?
If payment captures at pre-order time (typical), yes. The order is a paid order with the product attributed; it appears in the period’s top products. If payment is deferred to fulfilment, it appears in the period when payment captures.
Q: How is this card affected by SKU consolidation (variants vs individual SKUs)?
The card aggregates at the product level (parent), not variant. A blue and red variant of the same shirt count as one product entry. For variant-level decomposition, use bc_top_skus (if available) or BC’s native variant report.
Q: Should we delete products outside the top 1,000?
Generally no, long-tail revenue compounds. Even 0.01% per SKU × 4,000 long-tail SKUs is 40% of revenue collectively. The right action is catalogue hygiene (descriptions, images, SEO) for the long tail, plus quarterly review for products with truly zero recent revenue.