Skip to main content
Card class: Cross-ChannelCategory: Shipping & Courier
Per-channel Parcelforce OTD - which sales surface is suffering most.

At a glance

Parcelforce on-time-delivery rate split by the originating sales channel (Shopify, BigCommerce, Adobe Commerce, Amazon marketplace, B2B reseller portal, manual ops, etc.). The card joins Parcelforce shipment records to the commerce-sibling order via the order_ref field and groups by the channel attribute. Cross-channel view tells you not “is the carrier broken” but “which sales surface is the carrier failing for”.
What it countsparcelforce.shipment.actual_delivery_datetime <= parcelforce.shipment.promised_delivery_datetime joined to commerce_sibling.order on order_ref, grouped by commerce_sibling.order.channel. OTD% computed per channel.
Required commerce siblinghas_commerce_sibling. The card only renders when the merchant has at least one commerce connector active (Shopify, BigCommerce, Adobe Commerce, Amazon, etc.). Without an order-channel attribute to join against, the card cannot split.
Channel attribution accuracyDepends on the commerce connector’s channel field discipline. Shopify’s source_name is reliable; Adobe Commerce’s channel mapping requires merchant-side configuration. Misattributed orders flow into the channel they were tagged with at the commerce layer.
Delivery success criterionDriver POD scan or signature-on-glass, identical to par_otd_rate.
Service scopeAll services pooled (Express24 dominates DTC channels, Express10 / ExpressAM dominate B2B reseller).
Money-back-on-late mechanicRefund eligibility is per-consignment (service-tier-dependent), not per-channel. The card surfaces which channel’s customers experienced the misses, which guides customer-comms triage and channel-specific service-recovery.
B2B vs B2C interpretationThe B2B reseller channel typically delivers higher OTD than DTC consumer channels (predictable corporate addresses, named-recipient sign-off, weekday-only delivery). A drop in B2B-channel OTD is a contract-penalty risk; a drop in B2C-channel OTD is a customer-experience-and-NPS risk.
Time window30D
Alert triggerany channel <90%, the card trips if any single channel falls below 90%. The aggregate may still look fine while a specific channel is suffering.
Rolesowner, operations, marketing

Calculation

Calculated automatically from your Parcelforce Worldwide 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 UK multi-channel home-and-garden merchant: Shopify DTC (primary), Amazon UK marketplace (secondary), eBay storefront, B2B reseller portal (custom-built), and an in-store-collect option fulfilled via Parcelforce as the carrier. Reading taken at 09:00 GMT on 25 Mar 26 for the trailing 30 days (23 Feb 26 to 24 Mar 26).
ChannelConsignmentsDelivered on timeOTD%Notes
Shopify DTC3,2003,07296.0%Express24 cohort, end-of-next-working-day promise.
Amazon UK marketplace1,4001,30293.0%Amazon labels Express24 as 1-day; tighter customer expectation.
eBay storefront48043290.0%At alert threshold. eBay buyers tend to be lower-tolerance for lateness.
B2B reseller portal72070698.1%Express10 dominant; corporate addresses, on-contract.
Click-and-collect (Parcelforce-fulfilled)806885.0%Tripped, well below threshold.
Aggregate5,8805,58094.9%(matches par_otd_rate)
The card flags click-and-collect at 85.0% as below the 90% alert. Five things to notice:
  1. The aggregate looks healthy at 94.9%; one channel is failing. A merchant looking at par_otd_rate only would not see the click-and-collect crisis. The cross-channel split is exactly the diagnostic this card exists for.
  2. Click-and-collect customers are most disappointed when delivery fails. The customer chose a more-controlled fulfilment path (collect from a preferred location); a delivery delay subverts that choice and is more visceral than a regular DTC late delivery. Drop to 85% means roughly 12 customers per period had this experience.
  3. Amazon UK at 93% is below customer-expectation but not below alert. Amazon-marketplace customers often book Express24 with a tighter 1-day-from-purchase mental model; 93% on Express24 to Amazon customers translates to higher-than-average return-and-refund pressure. Watch closely; consider promoting Amazon orders to Saturday-uplift on Friday.
  4. B2B reseller channel at 98.1% is in spec. No contract-penalty risk this period. The B2B channel’s discipline (corporate addresses, predictable hours) makes it Parcelforce’s easiest cohort.
  5. eBay at 90.0% is on the alert threshold and rising-late. eBay sellers face Defect Rate scrutiny; 90% OTD on eBay-channel orders is borderline for seller-rating tier. Check par_open_claims for filing rate on eBay-cohort consignments specifically; recover what is recoverable, and consider promoting an eBay-only Express24-Saturday cohort.

Sibling cards merchants should reference together

Cross-channel OTD is the diagnostic-by-sales-surface view. Pair with these for the full triage:
CardWhy pair it with Cross-Channel OTDWhat the combination tells you
On-Time Delivery RateThe aggregate. Cross-channel split tells you which channel drives moves in the aggregate.Aggregate dip + one-channel concentration = single-cohort fix. Aggregate dip + spread = network issue.
Express24 Service Day PromiseExpress24 is the dominant service in DTC channels (Shopify, Amazon, eBay).Channel splits where Express24 is the entry-vehicle should be read alongside Express24 SLA.
OTD by RouteThe geographic split. Combined with channel split, you can identify “Amazon-channel orders to North-East routes are the misses”.Two-dimensional triage: what cohort, where?
Open ClaimsChannels with high miss rate should drive higher claim filing. If a single channel has high miss + low filing rate, ops is missing the recovery.Per-channel filing rate is a workflow-discipline metric.
Cross-connector: shopify.refund_rateDirect downstream impact for the Shopify-channel slice.Shopify-channel OTD dip predicts Shopify refund rate rise.
Cross-connector: bigcommerce.refund_rateSame for BigCommerce-channel slice.Same caveat.
Cross-connector: amazon.amazon_otdrAmazon’s own seller-side OTD metric (calculated against Amazon’s promised date).If Parcelforce-Amazon-channel OTD is 93% but Amazon’s seller-side OTDR is 91%, Amazon is computing slightly tighter (using the customer-promise from purchase, not the Parcelforce-collection). Both numbers are real; Amazon’s is the seller-account-health-relevant one.
Cross-connector: ebay.ebay_defect_rateeBay’s seller-rating metric incorporates late-delivery as a defect.An eBay-channel OTD dip predicts eBay-defect-rate rise within 14 to 21 days; can affect seller standing.
Cross-connector: shopify.fulfillment_lead_timeChannel-specific dispatch-cutoff alignment. Shopify orders booked late evening cannot make Parcelforce’s same-day collection cutoff.If one channel’s OTD lags but channel-specific lead time is healthy, the carrier-network is the issue (route or service tier); if lead time also lags for that channel, the issue is upstream at dispatch.

Reconciling against the vendor’s own dashboard

Where to look in Parcelforce’s own dashboard: Parcelforce ParcelManager does not natively split by sales channel; the channel attribute lives in the commerce platform, not the carrier. The closest like-for-like in Parcelforce is Reports → Service Performance filtered by service code (Express24 dominates DTC channels; Express10 dominates B2B). For the channel split, look in your commerce platform’s order-management view (Shopify Admin → Orders → filter by source-name; Amazon Seller Central → Orders → filter by fulfilment-by-merchant) and cross-reference Parcelforce consignment numbers from there. Why our number may legitimately differ from a manual cross-reference:
ReasonDirectionWhy
Channel attribution at order-creationEitherVortex IQ joins Parcelforce shipments to the commerce-sibling order on order_ref. If the merchant’s order_ref is non-unique across channels (rare), join misalignment is possible.
Multi-channel ordersEitherAn order placed on Shopify and shipped via a separate Amazon FBA-direct workflow is not in this card; the card requires Parcelforce to be the carrier. Pure-Parcelforce orders only.
Attribution lagOurs <2 hoursCommerce-platform webhook lag (Shopify pushes order → 5 to 60 second propagation; Amazon order-feed has hourly batches). The card refreshes; same-day reads can show order without channel attribution if the commerce-side webhook has not arrived.
B2B portal channelsEitherCustom-built B2B reseller portals require explicit channel-tagging in the order metadata. If the merchant has not configured channel-tagging on the B2B side, those orders may show as “Unknown” or default to the shop’s primary channel.
Cross-connector reconciliation:
CardExpected relationshipWhat causes legitimate divergence
shopify.fulfillment_lead_timeChannel-specific dispatch readiness.App-install events, manual-override workflows.
amazon.amazon_otdrAmazon-channel slice should track Amazon’s seller-side OTDR closely (slight tightening on Amazon’s promise-from-purchase).Different promise-clock-start.
ebay.ebay_defect_rateeBay-channel slice predicts defect-rate movement.Defect rate covers more than late delivery (returns, INRs); lateness is one component.

Known limitations / merchant FAQs

The card is empty; why? The card requires has_commerce_sibling. If no commerce connector (Shopify, BigCommerce, Adobe Commerce, Amazon, etc.) is connected, there is no channel attribute to group by. Connect the relevant commerce platform and the card populates within 1 to 2 days as the order-shipment join builds up history. Why is the click-and-collect channel often the worst? Click-and-collect Parcelforce-fulfilled orders frequently route to non-residential pickup-points (Post Office branches, lockers) where access hours are restricted. If Parcelforce attempts delivery outside opening hours, the parcel goes back to depot for a re-attempt the next day; that day-2 delivery scores as late on Express24’s promise. Switch to a non-Express service tier for click-and-collect or align Parcelforce’s collection windows to pickup-point opening hours. Amazon-channel OTD looks lower than Shopify-channel OTD; is Amazon making us deliver faster? Sort of. Amazon’s customer-promise clock starts at order-purchase, not at carrier-collection. So a Shopify order placed at 18:00 with Express24 promise of “delivery by Wednesday” is technically the same physical promise, but Amazon would communicate it to the customer as “1-day shipping arriving Tuesday”. The mental model the customer uses is tighter on Amazon, leading to higher complaint volume even at identical Parcelforce performance. The card scores the actual physical delivery against Parcelforce’s promise; the customer-perception delta lives in the channel-specific complaint volume. B2B reseller channel always runs higher OTD; is that selection bias? Mostly yes. B2B addresses are predictable (corporate reception, named-recipient), B2B hours align with Parcelforce’s working-day calendar (no Saturday issues), B2B addresses cluster in well-served urban routes. The selection bias is real and structural; do not benchmark consumer DTC against B2B reseller numbers. Use the gap to negotiate a favourable B2B-cohort rate. An eBay-channel OTD dip preceded an eBay seller-rating downgrade; is that causation or coincidence? Causation, with a 14 to 21 day lag. eBay’s Seller Performance metrics include late-delivery as a defect; defect rate above 2% triggers seller-rating tier downgrade. A sustained 10+ percentage-point eBay-channel OTD drop on volumes above ~50 weekly orders typically registers as a defect-rate spike within three weeks. The card is leading-indicator for eBay seller account health. Multi-channel order: same SKU sold on Shopify and Amazon; how is it counted? The card joins on the Parcelforce consignment, not the SKU. Each consignment has one channel attribute (the originating commerce-platform order). Multi-channel SKUs do not double-count; the consignment counts once against the channel of its parent order. Why does the B2B portal show “Unknown” channel sometimes? Custom-built B2B reseller portals require explicit channel-tagging in the order metadata (a channel field on the order or a source_name equivalent). If the portal does not tag, the order reaches Parcelforce without a channel attribute and joins as Unknown. Fix: tag the order at creation with a stable channel name (e.g. b2b_reseller_portal); the card will use that name on next refresh. A new sales channel was launched mid-period; how is it weighted? The channel appears with whatever consignments shipped through it. Volume comparison week-by-week accounts for the ramp; the OTD% is an honest read on the consignments that did ship. Do not weight by historical-volume share if the new channel is genuinely new; track it separately as it scales. During Q4 peak, every channel’s OTD dips; which one matters most? Track which channel’s customers are highest-LTV and highest-NPS-sensitive. For most merchants that is the DTC consumer channel (Shopify / BigCommerce direct), where a single bad-experience customer churns and shapes review-site sentiment. B2B reseller misses are recoverable through credit-notes; consumer DTC misses are recoverable through extraordinary customer-service work or not at all. Prioritise consumer-channel recovery during peak. Can we filter the card to a single channel pair? Today, no built-in filter; the card shows all channels with at least one Parcelforce consignment in the period. Most merchants screenshot the card and discuss top-3 channels in their weekly ops review. If a per-channel deep-dive is needed, drill from this card into par_otd_rate filtered by manual cohort.

Tracked live in Vortex IQ Nerve Centre

Parcelforce OTD by Sales Channel is one of hundreds of KPI pulses Vortex IQ tracks across Parcelforce Worldwide 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.