> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Revenue by Category, BigCommerce

> Revenue by Category for BigCommerce stores. Tracked live in Vortex IQ Nerve Centre. How to read it, why it matters, and how to act on it.

**Metrics type:** [Supporting Metrics](/nerve-centre/overview#metrics-types-explained)  •  **Category:** [Ecommerce Platform](/nerve-centre/connectors#connectors-by-type)

## At a glance

> Total revenue split by BigCommerce catalogue category, ranked descending. The merchandising-team workhorse, this is how you decide what to feature on the homepage, where to spend ad budget, and which categories to expand or cut. Multi-category retailers live in this card; single-category brands rarely use it.

|                               |                                                                                                                                                                                                                                                                                            |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **What it counts**            | `SUM(line_item.total_inc_tax) GROUP BY product.category_id` over the period. Each line item is attributed to the product's primary category. The sum across categories equals goods revenue (excluding shipping).                                                                          |
| **VAT / tax treatment**       | **Tax-inclusive** (`total_inc_tax`).                                                                                                                                                                                                                                                       |
| **Shipping**                  | Excluded (line-item level; shipping is order-level in BC).                                                                                                                                                                                                                                 |
| **Discounts**                 | Deducted at the line-item level. Order-level discounts pro-rated.                                                                                                                                                                                                                          |
| **Refunds**                   | Not deducted (gross).                                                                                                                                                                                                                                                                      |
| **Cancelled / voided orders** | Included in gross revenue.                                                                                                                                                                                                                                                                 |
| **Currency**                  | Multi-currency without FX. Filter by currency for clean comparison.                                                                                                                                                                                                                        |
| **Channels / sources**        | All channels contribute. Category attribution is product-side, so it works identically across web, POS, marketplaces, and B2B.                                                                                                                                                             |
| **Multi-category gotcha**     | BC products can belong to multiple categories. We attribute each line item to `primary_category_id` to avoid double-counting; products without a primary category fall back to the first category in `category_ids`. **Set primary categories explicitly** in BC for accurate attribution. |
| **Category tree depth**       | The card ranks at leaf-category level by default. Toggle to top-level for the merchandising-overview view.                                                                                                                                                                                 |
| **B2B Edition note**          | B2B portals often expose a different category tree than retail. Filter to a specific channel for B2B-only or retail-only views.                                                                                                                                                            |
| **Time window**               | `30D` (rolling 30 days, vs prior 30 day comparison)                                                                                                                                                                                                                                        |
| **Alert trigger**             | None on this card directly.                                                                                                                                                                                                                                                                |
| **Roles**                     | owner, marketing                                                                                                                                                                                                                                                                           |

## 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 sporting-goods retailer on BigCommerce Pro, 30-day window 14 Apr 26 to 14 May 26.

| Rank      | Top-level category  | Revenue       | Share    | vs prior 30d  | Sub-category leaders                                         |
| --------- | ------------------- | ------------- | -------- | ------------- | ------------------------------------------------------------ |
| 1         | Cycling             | \$214,800     | 32.1%    | +18.4%        | Road bikes ($82k), helmets ($41k), apparel (\$38k)           |
| 2         | Camping             | \$148,200     | 22.2%    | -4.2%         | Tents ($55k), sleeping bags ($28k), cookware (\$22k)         |
| 3         | Running             | \$96,500      | 14.4%    | +6.7%         | Shoes ($61k), apparel ($19k), GPS watches (\$16k)            |
| 4         | Yoga & Fitness      | \$74,800      | 11.2%    | +3.1%         | Mats ($28k), apparel ($24k), weights (\$14k)                 |
| 5         | Swimming            | \$52,100      | 7.8%     | -22.5%        | Swimsuits ($22k), goggles ($13k), pool toys (\$9k)           |
| 6         | Hiking              | \$48,200      | 7.2%     | +1.4%         | Boots ($24k), backpacks ($14k), poles (\$6k)                 |
| 7-12      | (6 tail categories) | \$33,400      | 5.0%     | mixed         | (Skiing, racquet sports, golf, fishing, water sports, other) |
| **Total** |                     | **\$668,000** | **100%** | +5.8% overall |                                                              |

What's interesting:

1. **Cycling at +18% growth on a 32% share is the standout signal.** The category is both the largest and the fastest-growing; allocate ad budget and homepage real estate accordingly. Within cycling, road bikes (\$82k, 38% of cycling revenue) deserve their own deep-dive. The sub-category split prevents "cycling is up" from masking which sub-category is actually driving the lift.
2. **Swimming at -22% is the urgent investigation.** A 22% drop on a $52k category is $11k of monthly revenue evaporating. Likely causes (in order of probability): (a) seasonality (swimming peaks May-July; this is mid-April so April-May lift may not be in yet); (b) inventory issues (top swimsuit SKUs OOS, cross-check [BC Channel OOS per Channel](/nerve-centre/kpi-cards/bigcommerce/oos-listings-per-channel)); (c) a competitor running aggressive pricing on goggles or pool gear. Run the diagnosis before assuming seasonality.
3. **Camping at -4% is acceptable seasonal drift.** Camping peaks May-September; April is shoulder season. The -4% is within normal noise.
4. **The tail (6 categories at 5% combined)** is a focus question for the merchandising team. Skiing in April is correctly low (post-season); golf and fishing should be growing. Investigate whether tail categories are losing share because of catalogue gaps or because they were never strategic.
5. **Compounding effect on cycling.** A 32% share growing at 18% means cycling alone added \$33k of incremental revenue this month. Doubling down on cycling is likely 3-4× more leveraged than trying to revive swimming.

Action priority order:

1. **Diagnose swimming -22% drop** today. 1-hour audit: stock, ads, pricing, competition.
2. **Plan a cycling expansion** this week, more SKUs, more featured placement, brief the ads team.
3. **Set per-category alerts** via Vortex Mind for any category >5% of revenue dropping >15% week-over-week.
4. **Quarterly: review the bottom-3 tail categories** for cut-or-commit decision.
5. **Audit primary-category assignments**, ensure no products are silently miscategorised, the leaf-level rankings are only as good as the BC catalogue hygiene.

## Sibling cards merchants should reference together

| Card                                                                                     | Why pair it with Revenue by Category                                                                                                         |
| ---------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| [BC Revenue by Brand](/nerve-centre/kpi-cards/bigcommerce/revenue-by-brand)              | Brand × category cross-tabs reveal which brands dominate which categories, and where to expand.                                              |
| [Top Products](/nerve-centre/kpi-cards/bigcommerce/top-products-by-revenue)              | The SKU-level zoom. Drill into the top category to see which SKUs drive its revenue.                                                         |
| [Bottom Products](/nerve-centre/kpi-cards/bigcommerce/slow-moving-products)              | The flip view: which categories are dominated by tail SKUs that should be cut.                                                               |
| [Total Revenue](/nerve-centre/kpi-cards/bigcommerce/total-revenue)                       | The denominator. The sum across categories equals goods revenue (ex-shipping).                                                               |
| [BC Top SKUs](/nerve-centre/kpi-cards/bigcommerce/top-skus)                              | The unit-volume view; a category with high revenue but low unit volume is a premium-price category.                                          |
| [BC Revenue by Channel](/nerve-centre/kpi-cards/bigcommerce/revenue-by-channel)          | Category × channel cross-tabs reveal which categories sell best on which channels (cycling indexes higher on web; camping on Amazon, often). |
| [Refund Rate](/nerve-centre/kpi-cards/bigcommerce/refund-rate)                           | A category growing in revenue but with rising refund rate is a quality crisis in the making.                                                 |
| [`shopify.collection_health`](/nerve-centre/kpi-cards/shopify/collection-category-count) | Cross-platform peer (Shopify uses collections; semantically equivalent to BC categories for merchandising).                                  |

## Reconciling against the vendor's own dashboard

**Where to look in BigCommerce Control Panel:**

[Analytics → Reports → Sales](https://login.bigcommerce.com/deep-links/manage/analytics) on Plus / Pro / Enterprise plans includes a "Sales by Category" view. Pick the same date range; totals should match within ±2-3% (rounding plus the multi-category attribution differences). For source-of-truth catalogue assignments, [Products → Categories](https://login.bigcommerce.com/deep-links/manage/products/categories) lists the category tree.

**Why our number may legitimately differ from BC:**

| Reason                                                                                                                                                                                                                                                  | Direction                                                      |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| **Multi-category attribution**. BC's Sales by Category report attributes a multi-category product's revenue to *every* assigned category (a product in 3 categories shows revenue 3 times). We attribute to primary category only (no double-counting). | Vortex IQ LOWER per category, equal in total; BC double-counts |
| **Shipping exclusion**. We exclude shipping; BC report includes pro-rated shipping per category.                                                                                                                                                        | Vortex IQ LOWER                                                |
| **Category reassignment mid-period**. If a product moved categories, BC may attribute orders to whichever category was assigned at order time; we attribute to current assignment on next index sync.                                                   | Either direction                                               |
| **Custom-category fields**. Some BC stores use custom fields for sub-categorisation; we index `category_id` only.                                                                                                                                       | Vortex IQ may MISS sub-categorisation                          |
| **Time-zone and boundary days**. BC uses store time zone; we use UTC.                                                                                                                                                                                   | Boundary differences                                           |
| **Multi-currency**. BC converts to store currency; we don't.                                                                                                                                                                                            | Either direction                                               |

**Cross-connector reconciliation (when ad and analytics integrations are connected):**

| Card                                                                                                         | Expected relationship                                                               | What causes legitimate divergence                                                              |
| ------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| [`google_ads.ga_revenue_by_category_label`](/nerve-centre/google_ads/ga_revenue_by_category_label)           | Category-targeted ad spend should track category revenue here within ±20%.          | Ads attribution windows; this card is order-source-of-truth.                                   |
| [`google_analytics.ga_revenue_by_item_category`](/nerve-centre/google_analytics/ga_revenue_by_item_category) | GA4's `item_category` should match within ±15%.                                     | GA4 misses 10-25% to ad blockers.                                                              |
| [`facebook.fb_catalog_category_performance`](/nerve-centre/facebook/fb_catalog_category_performance)         | Facebook catalog feed category should align with BC categories if mapped correctly. | Facebook category mapping is independent of BC; mismatches mean the feed mapping needs review. |

**The category-revenue split is BC-aligned with Shopify's `collection_health` and Adobe Commerce's category attribution; the field shape differs but the merchant-facing semantics are equivalent.**

***

<details>
  <summary><em>Same-metric documentation cross-reference (for agencies running multiple platforms)</em></summary>

  * [`shopify.collection_health`](/nerve-centre/kpi-cards/shopify/collection-category-count)
  * [`adobe_commerce.revenue_by_category`](/nerve-centre/adobe_commerce/revenue_by_category) (planned)
</details>

## Known limitations / merchant FAQs

**My category totals don't add up to store revenue, why?**
Two reasons: (1) shipping is excluded (line-item revenue ≠ order revenue); (2) products without a primary category fall into a "Uncategorised" bucket. Sum of all categories + Uncategorised + shipping = store total. If your Uncategorised bucket is large, fix it in BC's bulk product editor.

**Should I rank by leaf category or top-level?**
**Both, depending on the question.** Top-level (e.g. "Cycling") for strategic merchandising and budget allocation. Leaf level (e.g. "Cycling > Road Bikes > Carbon Frames") for SKU-level investigation. Use the depth toggle.

**A product is in 3 categories, where does its revenue go?**
To the `primary_category_id` only. If no primary is set, fallback to the first category in `category_ids`. **Set primaries explicitly in BC** for accurate attribution. Bulk-set primaries via Products → bulk edit → primary category.

**Why does BC's Sales by Category report show higher totals?**
BC's report attributes multi-category products to every assigned category (double, triple counts). The sum across categories there exceeds store revenue. Our card uses primary-category attribution only, so the sum equals goods revenue. Both views are valid for different questions; we prefer the no-double-count view for clean ranking.

**My category tree is 5 levels deep, which level does the card rank by default?**
Leaf level (deepest). For 5-level trees this can be very granular ("apparel > women > tops > t-shirts > graphic tees"). Use the depth toggle to roll up to a strategic level (typically level 2 or 3).

**A category surged 50% week-over-week, real?**
Check order count and AOV simultaneously. A 50% revenue surge with stable order count = AOV moved (a wholesale order, a high-value SKU); 50% surge with proportional order growth = real demand lift. For categories with \<50 orders/month, week-over-week swings of 30-50% are within noise; require multi-week trends.

**Can I exclude seasonal categories from the headline view?**
Yes, configure a saved view "Year-round only" excluding categories tagged seasonal (skiing, swimming, holiday-specific). Keep the seasonal view as a separate dashboard for the categories that should be evaluated against year-over-year, not month-over-month.

**My B2B portal has different categories than retail, can I see them separately?**
Yes. Filter the card to the B2B channel (`channel_id = <your B2B portal id>`). The B2B category tree on BC Enterprise is often more practical (case-quantity based) than retail (lifestyle based); the B2B-only view supports B2B-specific decisions.

**Should I cut a category below X% of revenue?**
**Generally yes for categories below 1% of revenue with no growth trajectory** and no strategic role (e.g. lifestyle anchor, customer-acquisition gateway). Cutting tail categories simplifies merchandising and frees working capital. Exceptions: gateway categories (low revenue but bring new customers who buy from other categories) deserve to stay even when small.

**A category with high revenue has high refund rate, what do I do?**
Investigate the SKU mix within the category. Often one or two bad SKUs drive most of the refund volume; fix those rather than treating the whole category as broken. Cross-reference [BC Refunded Products](/nerve-centre/kpi-cards/bigcommerce/most-refunded-products) filtered to the category.

**Multi-currency BC store, do categories sum correctly?**
Without a currency filter, no, the sum is meaningless across mixed currencies. Apply a currency filter for clean per-currency category rankings.

***

### Tracked live in Vortex IQ Nerve Centre

*Revenue by Category* 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](https://app.vortexiq.ai/login) or [book a demo](https://www.vortexiq.ai/contact-us) to see this metric running on your own data.
