At a glance
Average Order Value broken down by channel_id over the trailing 30 days. The single most-useful BC card for understanding why aggregate AOV moves: BigCommerce is channel-native in a way Shopify isn’t, your store can sell DTC web + Amazon + eBay + Walmart + B2B portal + POS simultaneously through one BC backend, and each channel has wildly different AOV profiles. This card is essential for separating “I have an AOV problem” from “I have a channel-mix problem”.
| What it counts | SUM(total_inc_tax) / COUNT(orders) GROUP BY channel_id over the trailing 30 days. Each channel shows its order count, AOV, and 30D-vs-prior-30D delta. Channels with fewer than 10 orders in the window are excluded by default to avoid small-sample noise. |
| API endpoint | GET /stores/{store_hash}/v2/orders paged with channel_id per order. The OpenSearch index materialises per-channel-per-day aggregates. Channel display names come from GET /v3/channels. |
| VAT / tax treatment | Tax-inclusive on each channel. |
| Shipping | Included. Note that POS channels rarely have shipping fees (walk-out fulfilment) which structurally lowers POS AOV vs web. |
| Discounts | Deducted. Channel-specific promotions (Amazon discount campaigns, web-only coupons) affect only their respective channels. |
| Refunds | Not deducted. |
| Cancelled orders | Excluded. |
Incomplete orders | Excluded. |
| Currency | Multi-currency aggregated. Channels with currency-locked behaviour (Amazon UK = GBP, Amazon US = USD) need converted-display for cross-channel comparison; configure under Settings → Currency. |
| Channel coverage | Web (channel_id = 1), POS, Amazon Channel Manager, Facebook Shop, eBay, Walmart, B2B portal, custom Channels API channels. Each channel_id is a separate row. Marketplaces typically have lower AOV than web (single-item Amazon orders); B2B portal typically has 4-15x higher AOV than web (quote-converted PO orders). |
| B2B Edition behaviour | The B2B portal appears as its own row; AOV is structurally higher (4-15x web) because of the quote / PO workflow. Don’t compare B2B AOV against DTC AOV without context. |
| Alert trigger | any channel <50% of lead channel. Fires when one channel’s AOV falls below half of the highest-AOV channel. This is intentionally a relative comparison because absolute thresholds don’t work across web/POS/marketplace/B2B which have different normal AOVs. |
| Sentiment key | aov_trend |
| Time window | 30D rolling. |
| 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 industrial supply distributor on BigCommerce Enterprise with B2B Edition, multi-storefront, and active marketplace channels. Snapshot for 1 Apr to 30 Apr 26.channel_id | Channel | Orders | AOV | vs P30D |
|---|---|---|---|---|
1 | Stencil DTC web | 4,820 | $120 | -3% |
12000004 | B2B portal (B2B Edition) | 612 | $2,000 | +2% |
1019847 | Amazon Channel Manager (US) | 1,140 | $140 | flat |
1019850 | Facebook Shop | 380 | $52 | -8% |
1020111 | Walmart Marketplace | 220 | $96 | flat |
1020114 | POS Terminal A | 380 | $65 | +5% |
1020115 | POS Terminal B | 290 | $58 | flat |
| Headline | 7,842 | $285 | -3% |
- **B2B portal at 2,000; the alert trigger (“any channel <50% of lead channel”) would fire on every other channel, which is structurally meaningless. For B2B-active stores, exclude the B2B portal from the lead-channel comparison under Settings → Alerts → Channel exclusions, or run a separate alert against the DTC-channel cohort only. This is the single most common configuration tweak on BC stores running this card.
- **Facebook Shop at 140. Facebook Shop at 140, well below the 50% threshold. Investigate Facebook Shop merchandising, the channel may be configured to feature only single-product entry-level SKUs.
- POS AOV is structurally low and that’s correct. $58-65 reflects walk-out single-item purchases vs web’s bundled basket. The alert engine’s auto-tune detects POS as a separate cohort and applies a POS-specific threshold (typically 50% of POS lead, not 50% of all-channels lead). Configure cohort-based thresholds under Settings → Alerts → Channel cohort.
- Amazon at 120. This is somewhat unusual; most BC stores have DTC web AOV higher than Amazon. The reason here: this merchant restricts Amazon to bundle-only listings (single-item listings disabled to control margin and shipping cost), so every Amazon order is a multi-item basket.
- The DTC web -3% is the genuinely concerning trend. Even though it didn’t trigger any alert, a 3% MoM AOV decline on the volume channel is the leading indicator of margin compression. Cross-reference with BC AOV with/without Discount to see if a new promo is dragging it down.
- Decompose by channel and exclude structural extremes (B2B, POS) before reading the alert.
- Apply cohort-based thresholds so DTC channels are compared against DTC channels only.
- Pair with BC Channel Top Products to identify the SKUs driving each channel’s AOV.
- For marketplace channels, audit the listing cohort. Many BC merchants list a curated subset on Amazon vs full catalogue on web; AOV gaps often reflect listing strategy, not buyer behaviour.
- For multi-currency channels, view in converted-display mode before comparing.
Sibling cards merchants should reference together
| Card | Why pair it with AOV by Channel |
|---|---|
| Average Order Value | The headline rollup; this card is the channel decomposition. |
| BC Orders by Channel | Volume context; high-AOV channel with low volume is a niche, not a strategy. |
| BC Channel Revenue Trend | The over-time view per channel; pair to spot drift before it triggers an alert. |
| BC Channel Conversion Rate | Conversion context; high-AOV / low-conversion channel needs different optimisation than low-AOV / high-conversion. |
| BC Channel Top Products | Identifies which SKUs drive each channel’s AOV. |
| BC Channel Currency Mix | Multi-currency channels need this to read AOV correctly. |
| BC Channel Refund Rate | Channels with high AOV but high refund rate may be selling premium items that disappoint. |
| BC AOV by Country | Cross-cut by geography; some channels concentrate in specific countries. |
Reconciling against the vendor’s own dashboard
Where to look in BigCommerce Control Panel: Analytics → Sales → “Sales by channel” view (Plus / Pro / Enterprise) shows per-channel revenue and order count; AOV is implicit (revenue / orders) and not natively displayed. Channel Manager provides per-channel order lists with totals; manual reconciliation matches this card’s per-channel AOV. For B2B Edition specifically: Channel Manager → B2B Edition → Analytics shows B2B portal revenue separate from DTC. Why our channel AOV may differ from BC Sales by channel:| Reason | Direction |
|---|---|
Channel display naming. BC’s analytics view uses channel_name; we use the same with cosmetic normalisation (e.g. “Meta Shop” vs “Facebook Shop” depending on BC version). | Cosmetic only |
| Channel group rollups. BC’s analytics groups some channels (e.g. all POS terminals into one “Point of Sale” row); we surface each terminal separately. | Different denominator structure |
| B2B Edition treatment. BC’s main analytics surface excludes B2B; B2B portal AOV only appears in the B2B-specific surface. We surface it on this card directly. | Vortex IQ surfaces B2B; BC main view does not |
| Multi-storefront aggregation. BC’s per-channel view shows per-storefront; we offer aggregated. | Different denominator |
| POS terminal aggregation. BC may roll all terminals; we surface each. | Different granularity |
| Cancelled / Incomplete handling. BC’s analytics tile in some plan tiers includes Incompletes; we don’t. | Vortex IQ HIGHER AOV (excluding low-value Incompletes) |
| Card | Expected relationship | What causes legitimate divergence |
|---|---|---|
amazon_sp.amazon_avg_order_value | Should match the Amazon-channel slice within 1-3% | Amazon SP-API includes some pre-fulfilment fees; our card uses BC’s total_inc_tax post-fees. |
facebook.fb_shop_aov | Should match the Facebook-channel slice | Meta’s commerce surface includes some fee adjustments not visible to BC. |
square.square_aov | If POS uses Square integration, should match POS rows | Square’s reporting includes off-platform Square sales not in BC. |
google_analytics.ga_aov_by_source | GA4 source-AOV correlates with channel-AOV but doesn’t match exactly | GA4’s “source” is traffic source, not BC channel. The two views are related but not identical. |
source_name) and Adobe Commerce (per store_id); merchant-facing semantics are equivalent.
Known limitations / merchant FAQs
My B2B portal shows $2,000 AOV. Should I be alarmed by the alert against other channels? No, the alert is comparing across channel cohorts that don’t compete. B2B and DTC are different businesses; comparing them on a single threshold is meaningless. Configure cohort-based thresholds (DTC vs DTC, marketplace vs marketplace, POS vs POS) under Settings → Alerts → Channel cohort. The alert engine ships with sensible defaults; you only need to tune if your channel mix is unusual. Why does my Amazon channel have higher AOV than my web channel? Probably you’ve curated the Amazon listing to bundle / multi-pack SKUs only, while web carries the full catalogue including single-item entry points. This is intentional for many BC merchants because Amazon FBA fees punish low-AOV orders. A higher-Amazon-AOV pattern is a sign of disciplined multi-channel merchandising, not a data issue. My POS channel AOV is so low it’s flagging a constant alert. What’s wrong? The alert is comparing POS to web; they shouldn’t be compared. POS sales are walk-out single-item; web sales are basket. Configure POS into its own cohort under Settings → Alerts → Channel cohort. POS-vs-POS comparison is the right read; alerting on a 50% threshold across all POS terminals is the correct configuration. What about a brand-new channel that just launched? It shows 5x higher AOV than my established channels but only 12 orders. Small-sample effect; we exclude channels with fewer than 10 orders, but 12 is right at the boundary. Wait 14-30 days for the channel to accumulate stable sample; meanwhile, ignore the alert. Configure higher minimum-order threshold (50, 100) under Settings → Alerts → Min sample if you launch channels frequently. My Channel Manager reports Amazon AOV at 140. Are they synced? Within 3-5% match is normal. Channel Manager applies some Amazon-specific fee adjustments (referral fee deducted) before reporting; our card uses BC’stotal_inc_tax which is pre-fee. The 3-5% gap is the Amazon fee. For comparable cross-tool reads use BC’s total_inc_tax consistently; don’t try to reconcile against Amazon’s seller-central numbers, they include FBA and storage costs that aren’t visible to BC.
Why doesn’t this card show currency next to each channel’s AOV?
By default it shows the merchant’s primary currency. For multi-currency stores, configure under Settings → Display → Per-channel currency. Each channel will then show AOV in its native currency (Amazon UK in GBP, Amazon US in USD) which is more accurate but harder to compare across channels.
I just rolled out a new B2B price list that lowers prices 15%. Will this card flag it?
Probably yes; the B2B portal AOV will drop ~15% MoM, well past the alert sensitivity. For known one-off pricing changes, manually reset the baseline under Settings → Alerts → Baseline reset, or temporarily silence the channel for 30 days while the new baseline establishes.
My Facebook Shop AOV reads 120. Is Facebook a “low-AOV” channel structurally?
Generally yes. Meta’s commerce surface attracts impulse / discovery buyers who add a single item and check out fast. Facebook Shop AOV typically runs 40-65% of web AOV across the BC ecosystem. A Facebook Shop AOV at 50% of web is the healthy norm, not a problem to fix.
Can I exclude a channel from the alert without removing it from the report?
Yes, configure under Settings → Alerts → Channel exclusions. We recommend excluding (a) any new channel under 30 days, (b) the B2B portal from DTC alert cohorts, (c) any test / dev channel.
Multi-storefront stores: does this card aggregate across storefronts or per-storefront?
By default per-storefront. Use the storefront selector at the top of the Nerve Centre dashboard to switch. Aggregating across storefronts is rarely useful since storefront-specific themes and assortments produce different AOV profiles by design.