Per-channel ShippyPro OTD.
At a glance
ShippyPro On-Time Delivery rate split by the sales channel that originated the order: Shopify, BigCommerce, Adobe Commerce, Amazon, eBay, B2B portal, etc. The cross-platform cut answers a marketing question (which sales channel are we under-serving?) using shipping data, not the other way around. A 30D window with a per-channel <90% alert.
Calculation
Calculated automatically from your ShippyPro 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 multi-channel Italian fashion brand: Shopify DTC store, Amazon IT marketplace, eBay IT, and a B2B wholesale portal. Reading taken at 09:00 CET on 12 Mar 26 for the trailing 30 days.
The aggregate reads 94.6% OTD, comfortably above 90%. The cross-platform cut surfaces that Amazon IT alone is at 88.0%, alert FIRING. Five things to notice:
- The aggregate hides the channel-level problem entirely. Amazon at 88% is being absorbed by Shopify at 97% on three times the volume. Without the cross-platform cut, the operator sees “shipping is fine” while the Amazon Buyer-Promise scorecard at Amazon’s end is dropping. This is exactly the cross-platform pattern this card exists to surface.
- Why Amazon-channel specifically? Almost always: the rate-shop ruleset routes Amazon orders to the cheapest-qualifying carrier (often Poste Italiane economy) because Amazon’s marketplace margin is thin. The cost saving is small per parcel; the OTD penalty triggers Amazon’s algorithmic punishment (Buy Box loss, listing demotion). Shifting Amazon orders to BRT recovers OTD at ~10 percent higher per-label cost.
- Read this card with the channel’s revenue-at-risk weight. Amazon at 28% of volume but maybe 35% of revenue (higher AOV) is more reputationally exposed than the volume share suggests. Marketing and ops should jointly decide whether to absorb the cost increase to recover Amazon-channel OTD.
- eBay at 98% is the comparator. eBay orders use the same rate-shop rules but average smaller parcels going to nearer customers; the same ruleset produces different outcomes given the order mix. Channel-OTD is a function of (rate-shop rule x order mix x destination geography), not a clean apples-to-apples.
- B2B at 97.9% on 480 shipments is the inverse pattern. B2B orders typically use premium carriers (DHL Express) regardless of rate-shop because customers expect it; OTD is structurally high. If B2B drops below 95%, something has gone wrong in the wholesale fulfilment workflow itself.
Sibling cards merchants should reference together
Cross-platform OTD answers “which channel is being under-served?” Pair with these to make the answer actionable:Reconciling against the vendor’s own dashboard
Where to look in ShippyPro’s own dashboard: ShippyPro Dashboard → Analytics → Tracking Performance with the Source/Channel filter. The portal exposes the same per-channel breakdown when shipments carry the source metadata correctly. The closest like-for-like view is Last 30 Days, Group By: Source, All Carriers. Why our number may legitimately differ from ShippyPro’s portal:
Cross-connector reconciliation:
Known limitations / merchant FAQs
Why is Amazon-channel OTD lower than the rest? Almost always: rate-shop ruleset routes Amazon orders to the cheapest qualifying carrier (low-margin marketplace), and that carrier (often Poste Italiane economy) runs structurally lower OTD than the carriers used for DTC orders. The fix is a per-channel rate-shop rule: Amazon orders should not auto-route to lowest-cost without an OTD floor. Why is eBay similar volume to Amazon but better OTD? eBay order mix differs. Amazon Italian volume tends to be higher value with stricter delivery promises (Prime-eligible listings); eBay volume is more long-tail with looser delivery windows. The same carrier mix produces different OTD against different promise tightness. My B2B portal channel is at 99%, should I just route everything that way? No, the trade-off is cost. B2B uses DHL Express for everything because the wholesale buyer expects it; the cost-per-parcel is 3 to 5x DTC carriers. Routing all DTC orders to DHL Express would lift channel OTD to >98% across the board but multiply shipping spend. The marketplace channels are the operational sweet spot, small cost increase to recover OTD enough to clear marketplace algorithm thresholds. Untagged / direct-API channel is showing up, what is it? Orders rate-shopped directly via API without asource tag, typically internal tooling, B2B re-orders, manual create-order flows from customer service. Set a default source: direct in the connector and re-tag historical for cleaner view.
Why per-channel and not per-store?
Some merchants run multiple Shopify stores (e.g. one per country: shopify-it, shopify-fr, shopify-de). The card cut by source shows them as separate channels if they tag separately; otherwise they pool into “shopify”. Edit the source-tag mapping in connector settings to split.
How does this card help the marketing team?
Direct: it identifies whether shipping is a brake on channel performance. Marketing wants to scale Amazon spend; if Amazon-channel OTD is dropping below marketplace thresholds, increased ad spend will be wasted on demand the operations cannot serve. The card is the input to a pause-or-fix decision.
What about Black Friday / Q4, does the per-channel cut matter more or less?
More. Q4 carrier saturation drops aggregate OTD by 3 to 8 points uniformly, but channel-specific cuts widen because cheap carriers (used for marketplace channels) suffer more than premium carriers (used for B2B). Amazon-channel OTD can fall 10 to 15 points during BFCM; B2B holds. The card surfaces the channel where the margin pressure first becomes operationally visible.
Shopify direct vs Shopify marketplace orders, is the card cutting them right?
Depends on tagging. Shopify orders carry a single source: shopify by default. If you sell on Shopify Marketplace as well, those orders need their own tag (source: shopify_marketplace) configured in the Shopify connector. Without that, both pool. Cross-check the Shopify order admin to confirm the tag mapping.
Can I set per-channel alert thresholds?
Yes, in the workspace settings. Default is <90% for any channel; you can set tighter for Amazon (which has its own algorithmic thresholds at ~92 to 94%) and looser for B2B (where 88% may be acceptable given the carrier-mix economics).