Backlog of paid orders aged past the 48h fulfilment SLA. Surfaces 3PL/warehouse breakage in real time.
At a glance
A live count of paid orders that have been sitting indisplayFulfillmentStatus IN ('OPEN','UNFULFILLED','IN_PROGRESS')for more than 48 hours sincecreatedAt. The brand-promise alarm: at >20 such orders, customers are about to start emailing.
Calculation
Calculated automatically from your Shopify 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 skincare DTC brand on Shopify Plus, 3PL in Northampton, normal SLA 24-36h. On Tuesday 14 Apr 26 morning, the alert fires: 47 paid orders unfulfilled >48h. Drill-down shows:
Trigger reasons:
- Weekend backlog overflow. Mon mornings always show some carry-over from weekend. 18 Fri orders unpicked is double the normal 8-10. This means picking didn’t catch up Friday afternoon either, the fire started before the weekend.
- 3PL staffing shortfall. Tuesday 14 Apr is post-Easter. Many 3PLs run skeleton crew over UK Easter Monday. The Saturday and Sunday counts (which would be zero on a normal weekend) confirm this. Staffing returns Tue.
- Email customers proactively. Customer-service queries about “where is my order?” peak at 72-96h. The brand has 24-48h to email shipping-update apologies before the inbox floods.
- Stockout overlay. Cross-reference Products with Zero/Negative Stock. If 5+ of the 47 backlog orders contain a stockout SKU, that subset cannot be fulfilled at all and needs partial-ship or refund-and-replace decisions.
- The clock matters. Each hour these orders sit unfulfilled, customer-trust degrades. Shopify’s fulfilment status doesn’t fire customer-facing notifications about delay; the brand has to. Pair with email automation to catch >48h orders proactively.
Sibling cards merchants should reference together
The fulfilment-delay alert is the trigger. The diagnostic cards:Reconciling against the vendor’s own dashboard
Where to look in Shopify Admin:Shopify Admin → Orders → Filter byThis filter combination matches the alert population. Save it as a custom view for quick access during incidents. Other Shopify Admin views:Fulfillment status: UnfulfilledANDDate: more than 2 days ago
- Home → “Orders to fulfill” widget: real-time backlog count (all-time, not age-filtered). Shows everything, including <48h fresh orders.
- Settings → Shipping & delivery → Performance (Shopify Plus only): on-time-delivery analytics; uses promised delivery date, stricter than this alert.
- Apps like ShipStation / ShipBob / Shippo: their dashboards show pick-and-pack queues, slightly downstream of this alert.
Cross-connector reconciliation:
Known limitations / merchant FAQs
Why is the threshold 48h? 48h is the implicit Shopify ecommerce SLA: customers expect their order to ship within two business days. Beyond 48h, customer-service queries spike sharply. The 48h cutoff is configurable per workspace; brands with explicit longer SLAs (made-to-order furniture, monogrammed gifts) should raise this to 5-7 days. Why is the count threshold 20? A heuristic floor for “actionable backlog”. Below 20, normal day-to-day ops absorbs the queue; above 20, manual intervention is needed. The threshold should scale with order volume:- <200 orders/day: alert at 10-15.
- 200-1,000 orders/day: alert at 20-50.
- >1,000 orders/day: alert at 100+.
- Open the order list filtered to >48h unfulfilled. Sort by age desc.
- Identify the cause subsets: stockouts, 3PL backlog, manual-hold orders, large-volume B2B, etc.
- For stockout subset: decide ship-partial, hold-and-wait, or refund-and-relist. Each affects the customer differently.
- For 3PL backlog subset: escalate to 3PL ops manager. Request dedicated picker for top-priority orders (often paid express or VIP customers).
- For all >48h orders: trigger proactive customer email apologising for delay with realistic shipping ETA. This single action prevents 30-50% of the customer-service tickets that would otherwise come.
- Monitor the count hourly during the incident. The count should fall once corrective action is in place.
- All weekend orders aged exactly to 47h when alert was checked: not yet over threshold. Vortex IQ runs the check every 5 min, so this gap is rare.
- Threshold misconfigured high (e.g. 100): low-volume brands never trip it.
- Status-mapping edge cases: orders stuck in
SCHEDULED(B2B) orON_HOLDmay not register as unfulfilled depending on the indexer config.
- Audit your SLA promise vs your actual capacity. If you promise 48h but consistently deliver 72h, change the promise.
- Investigate fulfilment workflow steps for bottleneck (label-print, pick, pack, manifest, dispatch). One stage is usually the bottleneck.
- Consider 3PL alternative or expand to multi-3PL routing.
- Negotiate weekend coverage if weekend orders are >20% of total.
- Build an ops dashboard combining this card, Fulfillment Rate, and warehouse capacity metrics for proactive management.