> ## 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.

# Fulfilment Rate by Channel, BigCommerce

> Fulfilment Rate by Channel 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

> Per-channel fulfilment rate: orders shipped within the channel's SLA divided by orders that should have been shipped within the period, decomposed by `channel_id`. The operational health view of multi-channel BC stores. Web fulfilment rates rarely match Amazon LSR rates; B2B fulfilment cycles are different from DTC; POS is structurally 100%. Aggregate fulfilment rate hides the channel that's actually broken.

|                              |                                                                                                                                                                                                                                                |
| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **What it counts**           | `(orders_shipped_within_SLA_30d / orders_due_30d) * 100 GROUP BY channel_id`. SLA defaults to 48 hours per channel but is overridable per-channel (Amazon: 24-48h, B2B portal: 72-168h, etc.). The rolling 30 days vs prior 30 days for trend. |
| **API endpoint**             | `GET /stores/{store_hash}/v2/orders` filtered by `status_id IN (2, 10)` (Shipped, Completed) and `date_shipped` timestamp. Channel mapping via `GET /v3/channels`.                                                                             |
| **VAT / tax treatment**      | n/a, operational metric.                                                                                                                                                                                                                       |
| **Shipping**                 | n/a, but the SLA threshold differs by configured shipping method (expedited 24h, standard 48h).                                                                                                                                                |
| **Discounts**                | n/a.                                                                                                                                                                                                                                           |
| **Refunds**                  | Refunded orders are excluded from the denominator (they don't need fulfilling).                                                                                                                                                                |
| **Cancelled orders**         | Excluded from both numerator and denominator.                                                                                                                                                                                                  |
| **`Incomplete` orders**      | Excluded.                                                                                                                                                                                                                                      |
| **Currency**                 | n/a.                                                                                                                                                                                                                                           |
| **Channel coverage**         | All BC channels. POS reads near-100% (walk-out fulfilment). Marketplaces show their own SLA-specific rates. B2B portal typically 92-98% (longer cycle but tighter quality). Web 88-95% is the typical healthy range.                           |
| **B2B Edition behaviour**    | B2B orders have different SLAs (negotiated PO terms, scheduled delivery). The card auto-detects customer-group and applies the configured B2B SLA. **Don't apply DTC fulfilment thresholds to B2B**, you'll mis-flag the channel as unhealthy. |
| **Multi-Location Inventory** | When MLI is enabled, fulfilment rate decomposes by location within each channel. A web channel fulfilled by a healthy warehouse A and a slow warehouse B shows mixed rates; the per-location view is the actionable read.                      |
| **3PL outage handling**      | A 3PL outage produces correlated drops across all channels using that 3PL. Cross-reference with [BC Alert Fulfilment Delay](/nerve-centre/kpi-cards/bigcommerce/fulfilment-delay-alert) for real-time outage signal.                           |
| **Time window**              | `30D vsP` (rolling 30 days vs prior 30 days).                                                                                                                                                                                                  |
| **Alert trigger**            | `any channel <90%`. Fires when any channel's 30-day rate falls below 90%. **POS is auto-excluded from this threshold** since 100% is structural.                                                                                               |
| **Sentiment key**            | `fulfillment_rate`                                                                                                                                                                                                                             |
| **Roles**                    | owner, 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 apparel brand on BigCommerce Pro with ShipBob 3PL, Amazon Channel Manager, B2B Edition, and POS at flagship store. Snapshot for 1 Apr to 30 Apr 26 vs prior 30 days.

| `channel_id` | Channel              | Orders | Within SLA | Rate      | vs P30D  | Status                    |
| ------------ | -------------------- | ------ | ---------- | --------- | -------- | ------------------------- |
| `1`          | DTC web              | 4,820  | 4,580      | 95.0%     | -1.2pp   | Healthy                   |
| `1019847`    | Amazon (24h SLA)     | 1,140  | 1,060      | 93.0%     | flat     | Healthy (Amazon LSR safe) |
| `1019850`    | Facebook Shop        | 380    | 372        | 97.9%     | flat     | Healthy                   |
| `12000004`   | B2B portal (96h SLA) | 612    | 605        | 98.9%     | +0.4pp   | Healthy                   |
| `1020111`    | Walmart              | 220    | **186**    | **84.5%** | **-9pp** | **ALERT FIRES**           |
| `1020114`    | POS                  | 380    | 380        | 100%      | flat     | Structural                |

What's interesting:

1. **Walmart fulfilment dropped 9 percentage points to 84.5%, well below the 90% threshold.** This is the actionable signal. Walmart's seller-rating algorithm penalises late shipments harder than Amazon's; sustained sub-90% fulfilment can trigger seller-account suspension within 4-8 weeks. **Investigate immediately.**
2. **Diagnostic sequence in 5 minutes**: (a) [BC Channel Manager → Walmart → Recent activity](https://login.bigcommerce.com/deep-links/manage/channel-manager) for sync failures, (b) ShipBob's Walmart-specific picklist log, (c) Walmart Seller Center for any policy notifications, (d) check whether Walmart-specific SKUs require special packaging that's been delayed.
3. **The cause turned out to be SKU-specific**: Walmart-only SKUs (custom bundles created for Walmart's listing format) were being routed to a manual-pack queue at ShipBob that backed up. **Resolution: standardise the Walmart bundles into auto-pack-eligible SKUs**; expected fulfilment rate recovery to 95% within 14 days.
4. **The DTC web -1.2pp is worth noting but not actionable yet.** A 1.2pp slip from 96.2% to 95.0% is within normal variance. Watch for two consecutive periods of decline before treating as a trend.
5. **B2B portal at 98.9% (+0.4pp) is healthy.** B2B orders typically have longer SLAs and fewer surprises (scheduled deliveries, customer-managed addresses), so high fulfilment rates are normal. **A B2B portal below 90% is a red flag**, the customer relationship is at risk far more than DTC, since B2B churn LTV losses are 10-50x DTC losses.

Action priority order:

1. **Filter to channel cohorts before alerting.** POS structural-100% should never trigger; B2B with longer SLAs needs threshold extension.
2. **For marketplace fires (Amazon, Walmart), check the marketplace's seller-rating dashboard** for early penalty signals before the BC card catches up.
3. **For 3PL outages, expect correlated drops across multiple channels.** A single-channel drop usually points to channel-specific operational issue (Walmart-only SKUs, Amazon LTL pickup, etc.).
4. **Pair with [BC Alert Fulfilment Delay](/nerve-centre/kpi-cards/bigcommerce/fulfilment-delay-alert)** for the real-time alarm complement to this trend view.
5. **Configure SLA-by-shipping-method.** Expedited orders should hit 95%+ within 24h; standard 90%+ within 48h. Aggregating produces misleading rates.

## Sibling cards merchants should reference together

| Card                                                                                            | Why pair it with Fulfilment Rate by Channel                                     |
| ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| [BC Alert Fulfilment Delay](/nerve-centre/kpi-cards/bigcommerce/fulfilment-delay-alert)         | The real-time alarm; this card is the trend view.                               |
| [BC Channel Inventory Split](/nerve-centre/kpi-cards/bigcommerce/inventory-split-by-channel)    | Surfaces whether stock at the right location is the issue.                      |
| [BC Inventory Distribution](/nerve-centre/kpi-cards/bigcommerce/inventory-distribution)         | The healthy-stock baseline; pair to identify warehouse bottlenecks.             |
| [BC Alert OOS Spike](/nerve-centre/kpi-cards/bigcommerce/oos-spike-alert)                       | OOS-on-channel directly impacts fulfilment rate.                                |
| [BC Channel Refund Rate](/nerve-centre/kpi-cards/bigcommerce/refund-rate-by-channel)            | Late-fulfilled customers refund more; the two often co-move.                    |
| [BC Alert Channel Revenue Drop](/nerve-centre/kpi-cards/bigcommerce/channel-revenue-drop-alert) | Marketplace fulfilment penalties cascade into ranking and revenue.              |
| [BC Channel Conversion Rate](/nerve-centre/kpi-cards/bigcommerce/conversion-rate-by-channel)    | A poor fulfilment-rate channel sees customers reduce purchase frequency.        |
| [Order Count](/nerve-centre/kpi-cards/bigcommerce/total-orders)                                 | Volume context; 9pp drop on 220 orders is 20 late shipments, on 2,000 it's 180. |

## Reconciling against the vendor's own dashboard

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

[Orders → Shipments](https://login.bigcommerce.com/deep-links/manage/orders) (Pro / Enterprise) shows shipment timestamps; [Channel Manager → individual marketplace](https://login.bigcommerce.com/deep-links/manage/channel-manager) shows marketplace-side fulfilment ack. BC does not natively compute per-channel fulfilment rate; the closest manual computation is via [Reports → Custom](https://login.bigcommerce.com/deep-links/manage/reports) building a fulfilled / due cross-tab.

For B2B Edition: [Channel Manager → B2B Edition → Orders](https://login.bigcommerce.com/deep-links/manage/channel-manager) shows B2B-specific fulfilment status with PO context.

**Why our fulfilment rate may differ from BC / 3PL view:**

| Reason                                                                                                                            | Direction                                         |
| --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- |
| **SLA definition**. We use 48h default; BC has no per-channel SLA concept natively.                                               | Different baselines                               |
| **Partial shipment treatment**. We count partial shipments as fulfilled if any line shipped within SLA; BC's metrics differ.      | Vortex IQ HIGHER on partial-shipment-heavy stores |
| **Channel Manager sync lag**. Marketplace fulfilment ack can lag actual shipment by 30-120 minutes; we count BC's `date_shipped`. | Vortex IQ slightly LEADS                          |
| **Refund handling**. We exclude refunded orders; BC includes them in some shipment views.                                         | Vortex IQ HIGHER rate                             |
| **MLI per-location vs aggregated**. We can show per-location; BC aggregates.                                                      | Different granularity                             |
| **POS auto-100% treatment**. We exclude POS from the alert threshold; BC includes.                                                | Cosmetic on alerts                                |

**Cross-connector reconciliation (when 3PL and marketplace integrations are connected):**

| Card                                                                               | Expected relationship                                           | What causes legitimate divergence                                                                        |
| ---------------------------------------------------------------------------------- | --------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| [`shipbob.sb_otd_rate`](/nerve-centre/kpi-cards/shipbob/on-time-delivery-rate)     | ShipBob OTD rate matches the channels using ShipBob within 1-3% | ShipBob counts pick-to-ship; we count order-to-ship including BC-side queue. Gap is the BC handoff time. |
| [`amazon_sp.amazon_lsr`](/nerve-centre/amazon_sp/amazon_lsr)                       | Amazon LSR co-tracks the Amazon channel slice within 5%         | Amazon LSR uses 30-day rolling but with their own carrier-handoff timestamp; we use BC.                  |
| [`walmart_marketplace.wm_otd_rate`](/nerve-centre/walmart_marketplace/wm_otd_rate) | Walmart's seller-side OTD should match Walmart channel          | Walmart's calculation includes both ship-on-time and delivered-on-time; we measure ship-on-time only.    |
| [`shippo.shippo_otd_rate`](/nerve-centre/shippo/shippo_otd_rate)                   | Shippo's per-carrier OTD aligns by carrier-and-channel          | Shippo measures carrier OTD post-handoff; we measure merchant-handoff to carrier.                        |

**The per-channel fulfilment rate is BC-aligned with similar cards on Shopify (per `fulfillment_status` and `source_name`) and Adobe Commerce (per `shipment_status` and `store_id`); merchant-facing semantics are equivalent.**

***

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

  * [`shopify.fulfilment_rate_by_channel`](/nerve-centre/shopify/fulfilment_rate_by_channel) (planned)
  * [`adobe_commerce.fulfilment_rate_by_store`](/nerve-centre/adobe_commerce/fulfilment_rate_by_store) (planned)
</details>

## Known limitations / merchant FAQs

**Why is my B2B portal at 99% but DTC web at 92%?**
Different SLAs and different operational models. B2B has longer SLAs (96h+ typical) and scheduled / managed orders; DTC has tight SLAs (48h) and unpredictable order patterns. **The two aren't comparable**; both can be healthy at their own benchmarks. Configure cohort-specific thresholds.

**My Walmart channel reads 84% but Walmart Seller Center shows 91% OTD. Are they synced?**
Different metrics. Walmart's OTD measures delivered-on-time at the customer end; this card measures shipped-on-time at your warehouse end. The gap (84% vs 91%) is unusual; usually merchant-side ship-on-time is higher than customer-side delivery-on-time. Check whether your Channel Manager Walmart sync has an issue mapping ship timestamps; sometimes BC records a stale ship date.

**My fulfilment rate dropped 2pp this week. Bad?**
Within normal weekly variance for most stores. Two consecutive weeks of -2pp is a trend; one week is noise. Cross-reference with [BC Alert Fulfilment Delay](/nerve-centre/kpi-cards/bigcommerce/fulfilment-delay-alert), if the alarm didn't fire, the trend is gradual rather than acute.

**My multi-3PL store fulfils web through ShipBob and B2B through dropship. Does the rate combine?**
Yes, by default. Configure per-channel-per-3PL view if you want separate rates. The pair "DTC-via-ShipBob" and "B2B-via-dropship" lets you see whether each operational stream is healthy independently.

**Should I set marketplace SLAs tighter than DTC?**
Yes. Amazon's LSR threshold is 4% (96% on-time); to comfortably stay above LSR, target 95-97%. Walmart's threshold is 95% OTD. eBay's varies. **Configure marketplace SLAs at 24-48h** (vs DTC 48h) to maintain seller-rating safety margin.

**My POS shows 100%. Why include it on the card if it's always healthy?**
Mostly for completeness, but POS does occasionally drop below 100% in BOPIS / ship-from-store configurations where POS terminal triggers a fulfilment workflow. If your POS is purely walk-out, configure it excluded under Settings → Channel filter.

**Why does the alert fire on a single channel but not on the headline?**
Because aggregate fulfilment is dominated by your highest-volume channel. A 9pp drop on a 5%-volume channel barely moves the headline 0.5pp; the per-channel alert catches the concentrated drop. **Always run both store-wide and per-channel alerts**; one catches systemic issues, the other catches concentrated ones.

**My MLI store shows different rates per warehouse. Which one matters?**
Both. Per-warehouse rate identifies the operational bottleneck. Per-channel rate identifies the customer-facing impact. **For root-cause analysis use per-warehouse; for marketplace-penalty risk use per-channel.**

**My fulfilment rate looks good but my customer-service complaints about late shipments are up. Why the disconnect?**
Probably "shipped-on-time" doesn't match "delivered-on-time" at the customer end. Carrier delays after merchant handoff don't impact this card. Cross-reference with shipping-carrier OTD data (Shippo, EasyPost, etc.) to see whether the issue is carrier-side, not merchant-side.

**Can I configure SLA per shipping method?**
Yes, under Settings → SLA → Per shipping method. Common config: standard 48h, expedited 24h, two-day-air 12h, next-day-air 8h. The card auto-applies the right SLA per order based on the chosen shipping method.

***

### Tracked live in Vortex IQ Nerve Centre

*Fulfilment Rate by Channel* 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.
