At a glance
Share of Sendle parcels that recorded any non-progress tracking event during transit: address invalid, attempted-no-answer, held at depot, redirected, damaged, lost. The early-warning signal that predicts a falling OTD Rate at 24 to 72 hours.
| What it counts | COUNT(parcels WHERE EXISTS(tracking_event WHERE event_type IN exception_set)) / COUNT(parcels) over the trailing 30 days. Each parcel scores once even if it threw multiple exceptions in transit. |
| Delivery success criterion | Not directly applicable. Exceptions surface during transit, not at terminal status. A parcel can throw an exception (e.g. attempted-no-answer Day 3) and still deliver on time (Day 4); it still counts as an exception here. |
| On-time threshold | Not applicable. The OTD card answers “did it arrive on time”; this card answers “did anything go wrong on the way”. |
| Returns / RTO | Outbound only by default. RTS exceptions on the return leg are tracked separately in Returned to Sender. Returns from customer back to merchant via Sendle (less common; most AU/US Sendle merchants use AusPost or USPS for returns) carry their own exception count which can be filtered in. |
| Service level scope | All Sendle services pooled (Standard, Pro, Saver). Exception types are normalised across the contracted couriers (Couriers Please metro and regional, Aramex partners, USPS partnered routes); the tracking webhook surfaces a single Sendle event-code regardless of underlying courier. |
| Exception-event categories | (1) Address (invalid postcode, incomplete address line, business closed) ~32 percent of typical exceptions. (2) Recipient (attempted-no-answer, refused at door, requested redirect) ~28 percent. (3) Depot/network (held at depot for capacity, missed cutoff, weather hold) ~24 percent. (4) Damage / lost (parcel damaged in handling, lost-in-transit) ~10 percent. (5) Customs / border (US international only) ~6 percent. The mix moves slowly. |
| Currency | Not applicable, this is a rate. |
| Time window | 30D vsP (rolling 30 days vs prior 30 days). Daily readings exist but are noisy below 200 parcels per day. |
| Alert trigger | >3% critical, >1% warn, driven by sentiment_key: exception_rate. AU/US Sendle benchmark is 0.8 to 1.5 percent; above 2 percent typically signals upstream label-data quality issue, above 3 percent typically signals a courier-network event. |
| Roles | owner, operations |
Calculation
Calculated automatically from your Sendle data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
The same Australian DTC home-goods brand using Sendle Standard for nationwide delivery. Reading taken at 09:00 AEDT on 12 Mar 26 for the trailing 30 days (10 Feb 26 to 11 Mar 26).| Exception category | Parcels affected | % of total |
|---|---|---|
| Address (invalid postcode, missing unit number, business closed) | 78 | 0.77% |
| Recipient (attempted-no-answer, refused, redirect requested) | 64 | 0.63% |
| Depot / network (held at Couriers Please depot, missed cutoff, weather hold) | 41 | 0.40% |
| Damage / lost (handling damage, lost-in-transit, parcel-not-found) | 14 | 0.14% |
| All exceptions (this card) | 197 | 1.94% |
>3% is not tripped but the rate is above the 1 percent green floor so the dial is amber. Five things to notice that are specific to Sendle and the AU/US flat-rate model:
- Address exceptions dominate, and the fix is at checkout, not Sendle. 78 of 197 exceptions are address-quality issues; almost all are caused upstream of Sendle by missing unit numbers, mistyped postcodes, or business addresses delivered after-hours. Install an address validator at checkout (Loqate, AddressFinder for AU, SmartyStreets for US); typical lift after install is 50 to 70 percent reduction in address exceptions within 30 days.
- Recipient-attempted-no-answer is unavoidable but usually recoverable. 64 cases is roughly the natural rate for a daytime-delivery network on home addresses; Couriers Please will leave a card and re-attempt, or redirect to a Parcel Locker. Most resolve within 48 hours. Track via Failed Deliveries and First-Attempt Delivery.
- The 14 damage / lost cases are claim-eligible. Each one is an Open Claim opportunity if filed within Sendle’s window. Default cover is AUD 100 / USD 100; extended cover up to AUD 1,500 / USD 1,500 if purchased at booking. The financial exposure is in Claim Value, not here.
- Depot-held exceptions cluster at the start of the working week. Friday-afternoon bookings that miss the courier collection window sit in the merchant’s outbox until Monday; Sendle records this as a
depot_holdevent. The fix is shifting the merchant’s despatch cutoff to 13:00 Friday, which gives Couriers Please the Friday afternoon collection window. Most accounts that do this see 30 to 50 percent reduction in depot-hold exceptions. - Sendle’s exception coverage is single-vendor, so the data is cleaner than multi-carrier connectors. Unlike ShippyPro or ShipTheory where exception coverage depends on which carrier handled the parcel and how completely it implemented Sendle’s normalised event model, Sendle controls the entire pipeline. Every parcel reports against the same event taxonomy. Read this card as authoritative; do not “calibrate” against carrier-portal counts.
Sibling cards merchants should reference together
Exception rate is the leading indicator. Pair with these to predict, prevent, and quantify downstream OTD damage:| Card | Why pair it with Exception Rate | What the combination tells you |
|---|---|---|
| On-Time Delivery Rate | The downstream outcome. | Exception rate leads OTD by 24 to 72 hours. A 1-point exception rise predicts a 2 to 4 point OTD dip 2 to 3 days later. |
| Late Shipments | The volumetric workload that follows exceptions. | Use the exception count to forecast next week’s customer-service ticket load. |
| Failed Deliveries | The subset of exceptions that ended in non-delivery. | High exception rate + low failed-delivery rate = most exceptions self-resolve; high failed-delivery rate = exceptions are escalating into terminal failures. |
| Open Claims | Damage and lost-in-transit exceptions feed the claims pipeline. | Damage / lost exception count + 7 to 14 days of lag = future open-claim count. |
| First-Attempt Delivery | Recipient-availability exceptions show up here as second-attempt deliveries. | Falling first-attempt rate with rising exception rate = recipient/availability mix shift. |
| OTD by Route | Where the exceptions are concentrated geographically. | Remote zones generate more depot-hold and address exceptions; metro generates more recipient exceptions. |
Cross-connector: shopify.unfulfilled_orders | Upstream label-data origin. | Shopify-captured addresses that fail Sendle validation produce the address-exception cluster. Install a Shopify checkout address validator. |
Cross-connector: bigcommerce.unfulfilled_orders | Same upstream relationship for BC merchants. | Same fix path. |
Cross-connector: shopify.refund_rate | Downstream financial impact. | Sustained exception spikes typically precede refund-rate climbs at 7 to 14 days. |
Reconciling against the vendor’s own dashboard
Where to look in Sendle’s own dashboard: Sendle Dashboard → Reports → Tracking Events. The page lists all parcels with at least one non-progress tracking event over the chosen window, with category, event timestamp, and resolution status. Closest like-for-like view: Last 30 Days, All Services, All Exception Categories. Sendle also exposes a CSV export of every exception event withevent_code, event_timestamp, tracking_id, useful for spot-audits.
Why our number may legitimately differ from Sendle’s portal:
| Reason | Direction | Why |
|---|---|---|
| Event taxonomy normalisation | Tiny | Sendle’s portal sometimes shows raw courier event codes (Couriers Please native codes for AU, USPS native codes for US partnered routes); the card normalises to Sendle’s unified event taxonomy. ~95 percent of events map cleanly; the residual 5 percent can shift the count by 0.1 to 0.3 points. |
| Auto-resolved exceptions | Either | A held_at_depot event that resolves within 4 hours when the courier truck arrives may not appear in the portal’s default view (Sendle hides “transient” exceptions there); the card includes them by default because they still represent operational signal. Toggle Include transient to match. |
| Sync timing on most recent 1 to 6h | Ours lower briefly | Tracking webhooks land in real time but the card aggregates on a 4-hour cycle; the portal recomputes overnight. Same-day readings can drift by up to 0.2 points; resolved by 06:00 next day. |
| Time zone | Boundary days | Sendle uses workspace timezone for daily aggregation; we use UTC for cross-connector arithmetic. The 30-day window absorbs this. |
| Cancelled bookings | Tiny | Cancelled-before-collection bookings that nonetheless threw an event (e.g. label printed and then cancelled) are excluded by us, included by some portal views. Drift typically <0.1 points. |
| Returns leg | Either | Returns-via-Sendle exception events are excluded by default here; the portal includes them in the unfiltered view. Filter “Outbound only” in the portal to match. |
sen.otd_rate(t) ≈ baseline_otd - 1.8 × Δ(sen.exception_rate(t-2d))
That is, a 1-point exception-rate rise typically translates to roughly 1.8 points of OTD drop two days later. The relationship is monitor-grade not contractual; use it as a forecast input, not as a hard equation.
Cross-connector reconciliation. Australia Post / USPS / StarTrack vs Sendle:
Other carrier connectors expose their own exception rates with different event taxonomies. Do not average them; each carrier defines exceptions differently:
- AusPost categorises “delivered to neighbour” as
delivered_alternate, not an exception. Sendle treats it asrecipient_redirectand counts it. - USPS categorises depot-overflow holds as
delayed_in_transitexceptions. Sendle’s US partnered routes inherit this. - Cross-carrier comparisons should normalise the taxonomy first, or compare each carrier to its own historical baseline.
Known limitations / merchant FAQs
Why is my Sendle exception rate spiking? Three usual causes, in order of likelihood:- Address-quality regression at checkout. A recent storefront change (new theme, new checkout app, removed address validator) often produces a step-change in address exceptions within 7 to 14 days. Open the address-category breakdown; if address exceptions jumped while other categories held, the cause is upstream.
- Seasonal courier capacity stress. AU Q4 (mid-November to mid-December) and US holiday peak (Black Friday through New Year) routinely lift depot-hold exceptions by 2 to 4x. Couriers Please regional and Aramex partners hit capacity and start holding parcels at depots.
- A specific lane event. Industrial action at a single depot, a regional weather event (cyclone in QLD/NT, ice storm in US Midwest), or a courier-fleet outage will spike exceptions on a specific lane. The aggregate jumps; the per-lane breakdown identifies the source.
- Install address validation at checkout. Loqate, AddressFinder for AU, SmartyStreets for US. Typical lift: 50 to 70 percent reduction in address-category exceptions within 30 days. Single highest-leverage change for most Sendle accounts.
- Shift Friday despatch cutoffs to 13:00. Catches the Friday courier collection window; reduces depot-hold exceptions over the weekend by 30 to 50 percent.
- Add unit-number prompts to your address form. Apartment-block deliveries fail at 3 to 5x the rate of house deliveries when unit numbers are missing. A simple “Apt/Unit/Suite” required field on apartment postcodes fixes most.
- Use Parcel Locker / PUDO redirect on attempted-no-answer. Sendle’s Couriers Please integration supports automatic Parcel Locker redirect for AU, USPS PO Box for US. Adds 1 to 2 days but eliminates re-attempt cycles.
- Audit your top-10 problem lanes monthly. A handful of postcode pairs typically generate 30 to 40 percent of all exceptions. Either widen ETA on those at checkout, surcharge them, or move them to AusPost / USPS Express.
recipient_redirect AusPost codes as delivered, even though the original recipient was not the one who took the parcel). The exception-rate gap usually closes when you normalise definitions. Compare each carrier to its own historical baseline; do not cross-compare exception rates as-is.
Does the exception rate predict refund-rate spikes?
Yes, with 7 to 14 day lag for sustained spikes. Transient exception spikes (one-off batch events) usually do not propagate; sustained spikes (>1.5 percent for 7+ days) typically lift Shopify or BC refund rate by 0.3 to 0.8 points. The card is a useful early-warning input for finance forecasting.
My US Sendle account shows higher exceptions than my AU. Is that expected?
Yes, marginally. US Sendle’s USPS-partnered routes inherit USPS’s exception model, which tags depot-overflow holds as delayed_in_transit more aggressively than Couriers Please does in AU. Typical US Sendle baseline is 1.2 to 1.8 percent vs AU 0.8 to 1.5 percent. The gap is structural, not a quality issue.
When does my exception rate read most accurately?
After the daily 06:00 UTC re-aggregation. Same-day readings before 06:00 may drift by up to 0.2 percentage points because tracking webhooks for the previous day are still settling. Use 24-hour-old readings for board-grade decisions; same-day readings for triage only.