Skip to main content
Card class: Non-HeroCategory: Ecommerce Platform

At a glance

Top SKUs ranked by units sold over 30 days. The unit-volume leaderboard, the SKUs that move the most physical product. Pair with BC Top SKUs Revenue for the dollar-ranking view; together they tell the merchandising team what to feature, restock, and protect.
What it countsSUM(line_item.quantity) GROUP BY product_id over 30 days. Each line item’s unit count rolls up to its parent product. Variants combine by default; toggle to variant-level for the granular view.
VAT / tax treatmentn/a (unit-count metric).
Shippingn/a.
Discountsn/a (unit count is independent of price).
RefundsRefunded units NOT deducted. A SKU sold 500 units, refunded 50 still ranks at 500. For the net-units view, cross-reference BC Refunded Products.
Cancelled / voided ordersCancelled-pre-fulfilment units excluded; cancelled-post-fulfilment included.
Currencyn/a.
Channels / sourcesAll channels contribute. Marketplace SKU mappings (Amazon ASIN to BC SKU, eBay listing IDs to BC SKU) roll up via Channel Manager’s mapping table. Misconfigured Channel Manager mappings may cause the same physical SKU to appear as multiple BC products.
Variants vs productsDefault is product-level (a multi-size t-shirt sums all sizes). Toggle to variant-level for size-by-size or colour-by-colour ranking. Variant view is essential for replenishment; product view for merchandising.
B2B Edition noteB2B portal sells in case quantities; the unit count reflects total units (case_qty × cases). A wholesale order of 10 cases of 12 = 120 units. This may cause B2B-skewed top SKUs to look unusual to retail-only merchandisers. Filter to retail channel for retail-relevant rankings.
Time window30D (rolling 30 days, vs prior 30 day comparison)
Alert triggerNone on this card directly.
Rolesowner, operations

Calculation

Calculated automatically from your BigCommerce data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A US homewares brand on BigCommerce Pro, 30-day window 14 Apr 26 to 14 May 26.
RankSKUProductUnits soldRevenue contributionVariantsVerdict
1MUG-CRM-04”Cream mug, set of 4”1,840$36,8001High-velocity hero
2TWL-6PK-IVR”Bath towel set 6pk, ivory”720$43,2001Hero by units AND revenue
3LIN-DUV”Linen duvet” (King + Queen)482$96,4002Hero by revenue, mid by units
4LMP-CRMC”Ceramic table lamp” (4 colours)380$34,2004Solid mid-tier
5THR-WLN”Wool throw” (3 colours)264$34,3203Solid mid-tier
6-10(5 mid-tier SKUs)(mixed)1,180$58,000mixedLong mid-tier
11-50(40 SKUs)(mixed)4,200$144,000mixedBody of catalogue
Top 50 total9,066$446,92067% of unit revenue
What’s interesting:
  1. **The cream mug set at 1,840 units / 36,800isthecataloguesvolumehero.Lowerpriceperunit(36,800 is the catalogue's volume hero.** Lower price-per-unit (20) drives volume; not the highest revenue but moves more cartons through the warehouse. Operationally, this SKU defines packing, inventory, and replenishment cadence. Action: ensure no OOS risk; cross-reference BC Stock vs Sales for days-of-stock.
  2. The linen duvet at 482 units but $96,400 revenue is the dollar hero. Lower units, much higher AOV. The merchandising priority and replenishment urgency are different from the mug. Plan reorders well in advance (linens have long lead times).
  3. Mug and towel set at ranks 1 and 2 are price/volume opposites but both are hero. The merchandiser’s takeaway: catalogue health requires both volume drivers (high-frequency-low-AOV) AND revenue drivers (low-frequency-high-AOV). Losing either type is a structural problem.
  4. Top 5 SKUs = 51% of unit volume; top 50 = 90%. Long-tail SKUs (rank 51-2,000) account for only 10% of unit volume. The merchandising effort spent on the tail rarely pays off; focus on protecting and expanding the top 50.
  5. The variant column matters. SKUs with multiple variants (lamp, throw) split velocity across colours; the rank shows aggregate. Toggle variant-level to see if “white lamp” outperforms “blue lamp” or if velocity is even.
Action priority order:
  1. Verify days-of-stock for top-5 today. Top-5 going OOS is a five-alarm event.
  2. Variant-level review for ranks 4-10 to identify under-performing variants (paused or cut to free up SKU complexity).
  3. Cross-check top SKUs against BC Refunded Products any top-volume SKU also high-refund is the highest priority to fix.
  4. Plan paid-traffic budget allocation weight ad spend toward top-10 SKUs; long-tail SKUs rarely justify paid-search bids.
  5. Quarterly: review top-50 for new entrants newcomers into top-50 deserve merchandising attention; long-tenure incumbents may be candidates for premium pricing.

Sibling cards merchants should reference together

CardWhy pair it with Top SKUs
BC Top SKUs RevenueThe dollar-ranking view; together they show the unit-vs-revenue dichotomy.
BC Stock vs SalesTop SKUs going OOS is a five-alarm event; cross-check days-of-stock.
BC Refunded ProductsA top SKU also in the top-refunded list is the urgent fix.
Bottom ProductsThe flip view; what to cut to free up catalogue complexity.
Top ProductsThe product-level view; this card defaults to product but variant view is essential.
BC Revenue by BrandTop SKUs grouped by brand reveals brand-level concentration.
BC Revenue by CategoryTop SKUs grouped by category reveals category dominance.
shopify.top_productsCross-platform reference for top-product analysis.

Reconciling against the vendor’s own dashboard

Where to look in BigCommerce Control Panel: Analytics → Reports → Best Selling Products on Plus / Pro / Enterprise plans gives the BC-native top-selling-products view. Pick the same date range; the rankings should match closely. For variant-level, BC’s standard reports default to product-level; per-variant requires manual export and aggregation. Why our number may legitimately differ from BC:
ReasonDirection
Variant rollup. We default to product-level; BC’s top-products report is also product-level. Match within ±1-2%.Match closely
Refund netting. BC may net out refunded units in some reports; we don’t.BC LOWER if netted
Channel coverage. We include all channels by default; BC may default to web only.Vortex IQ HIGHER for multi-channel stores
Time-zone. BC uses store time zone; we use UTC.Boundary differences
Marketplace SKU mapping. If Channel Manager maps the same Amazon ASIN to two BC products by mistake, the unit count splits across two BC products in our view.Vortex IQ may UNDERSTATE per-product if mapping is broken
Sub-products / kits. Bundle products containing other SKUs may count units at the bundle level or at the component level depending on configuration.Either direction
Cross-connector reconciliation (when ad and analytics integrations are connected):
CardExpected relationshipWhat causes legitimate divergence
google_ads.ga_top_skus_paidPaid-traffic top SKUs should overlap meaningfully with this card; high-paid-spend SKUs absent here suggest paid traffic isn’t converting.Ads attribution windows; this card is order-source-of-truth.
google_analytics.ga_top_itemsGA4’s item_id ranking should match this card within ±15%.GA4 misses 10-25% of orders to ad blockers.
amazon_sp.amazon_top_asinsThe Amazon channel slice should match Amazon SP-API top ASINs.Amazon ranking may use different units (sessions vs orders); compare carefully.
The top-SKUs view is BC-aligned with similar cards on Shopify (top_products) and Adobe Commerce; the merchant-facing semantics are equivalent.

Known limitations / merchant FAQs

My top SKU shifted week-over-week, real signal or noise? Top-3 ranks are usually stable across weeks; ranks 5-50 swing more. Common causes: (1) a featured-on-homepage SKU spikes for a week then settles; (2) seasonal pull (sunscreen in May, heaters in November); (3) marketplace listing temporarily losing or winning the buy box; (4) a single B2B order moving 100 units of a tail SKU into the top-50 transiently. Look at 30-day rolling rank stability rather than week-over-week changes. Why is my variant view different from product view? Multi-variant products (King vs Queen duvet, sizes S/M/L/XL) split velocity across variants. Product-level rankings smear across all variants; variant-level shows individual SKU velocity. Use variant-level for replenishment and per-variant decisions; product-level for merchandising and homepage feature decisions. A new SKU jumped to top-10 in week 1, expected? Possible if (a) it was added to homepage / featured collections; (b) it ran a launch campaign; (c) it filled a previously-OOS gap in the catalogue. Verify the surge has structural explanation; otherwise it may be temporary novelty. Why does a SKU appear at #1 by units but #15 by revenue? Low price-per-unit. The cream mug at 1,840 units × 20=20 = 36k revenue ranks below higher-AOV SKUs. Both rankings matter for different decisions: units for warehouse / replenishment; revenue for finance / margin planning. Should I cut SKUs below rank 100? Generally yes for SKUs below rank 200 with no strategic role, no growth trajectory, and meaningful inventory tied up. The catalogue-complexity cost (storage, photography, descriptions, sync, supplier relationships) rarely pays off below rank 200. Exceptions: gateway SKUs (low velocity but bring new customers), seasonal SKUs with predictable pull, prestige SKUs (anchor pricing, brand positioning). My marketplace SKUs aren’t matching my BC SKUs, why? Channel Manager maintains a mapping table between marketplace listings and BC products. If a marketplace ASIN maps incorrectly (e.g. an Amazon variant points to a different BC product), units count against the wrong BC product. Audit Channel Manager → Listings → Mapping for misalignment. Why are my top SKUs different from my best-selling-on-Amazon list? Because Amazon Seller Central reports Amazon-channel only, while this card defaults to all channels. Filter to the Amazon channel for the per-Amazon view; should match Amazon Seller Central within ±5% (refunds, time-zone, sync-lag noise). A top SKU disappeared from the list, what happened? Most likely it went OOS (no orders to count) or was set to availability = disabled. Check inventory level and product status. Other causes: marketplace listing suspended (orders flow stopped from that channel); the SKU was renamed / re-keyed (orders attribute to the new ID). Should I run paid ads on top-50 SKUs only? For most merchants, yes. Paid-search and paid-social SKUs need to convert at a known rate; top-50 SKUs have stable velocity that supports ad-spend modelling. Long-tail SKUs need lots of impressions to validate conversion rate; usually not worth the spend. Exception: hero-launch SKUs in their first 30 days, force ad spend to drive discovery, even if outside historical top-50. My B2B SKUs dominate the unit ranking, is that correct? Yes if your store is B2B-heavy (case-quantity orders multiply unit counts). For retail-relevant rankings, filter to retail channel. Mixing B2B and retail in one ranking can mislead retail-specific merchandising decisions. Multi-currency, do top SKUs vary by currency? The unit ranking is currency-agnostic (units don’t have currency). The revenue ranking varies by currency. For unit-volume planning, multi-currency stores can use the unified view; for revenue planning, filter by currency. Why doesn’t this card show profit margin? Margin requires cost data (COGS) which BC doesn’t store natively for most products. Cross-reference BC Product Margin (which uses Vortex Mind’s COGS overlay) for margin-aware ranking. A high-volume SKU with poor margin contributes less profit than a mid-volume high-margin SKU.

Tracked live in Vortex IQ Nerve Centre

Top SKUs is one of hundreds of KPI pulses Vortex IQ tracks across BigCommerce and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.