Skip to main content
Metrics type: Supporting MetricsCategory: Ecommerce Platform

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.

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

Reconciling against the vendor’s own dashboard

Where to look in BigCommerce Control Panel: Orders → Shipments (Pro / Enterprise) shows shipment timestamps; Channel Manager → individual marketplace shows marketplace-side fulfilment ack. BC does not natively compute per-channel fulfilment rate; the closest manual computation is via Reports → Custom building a fulfilled / due cross-tab. For B2B Edition: Channel Manager → B2B Edition → Orders shows B2B-specific fulfilment status with PO context. Why our fulfilment rate may differ from BC / 3PL view: Cross-connector reconciliation (when 3PL and marketplace integrations are connected): 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.

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, 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 or book a demo to see this metric running on your own data.