Skip to main content
Card class: HeroCategory: Shipping & Courier

At a glance

Share of FedEx parcels that hit a non-delivery exception scan during transit (weather hold, address correction, customer not home, customs delay, etc.). The lead indicator for late-shipment count and the early-warning signal that something is degrading in the network 12 to 48 hours before headline OTD drops.
What it countsCOUNT(shipments WHERE any_scan_event_in('exception_scan_codes')) / COUNT(shipments_in_period). Each shipment is counted once even if it hits multiple exceptions.
Exception scan codes pooledCode 07 (EX, network exception), 09 (NF, address not found / undeliverable), 12 (HD, weather/natural disaster delay), 17 (BC, business closed), 67 (CD, customs delay), 70 (RTS, return to sender intent), 80 (DY, delay), 83 (CA, shipment cancelled), 84 (DR, dropoff request). The card pools all exceptions; the FedEx Tracking API exposes per-code detail for triage.
Resolution-state semanticsException scans are “transient”, a parcel can clear the exception (e.g. address corrected, weather embargo lifts) and still deliver on time. The card counts any shipment that hit an exception, regardless of final delivery outcome.
Service level scopeAll FedEx services pooled. Ground typically runs 1.5% to 3.5% exception rate at steady state; Express runs 0.5% to 1.5%; SmartPost runs 3% to 6% (USPS final-mile inflates).
Lead indicator behaviourException rate spikes 12 to 48 hours before Late Shipments climbs and 24 to 72 hours before On-Time Delivery Rate drops. Operations teams watching this card can pre-arm CS messaging before the customer impact hits.
Customer-fault vs network-fault splitCode 09 (NF), 17 (BC), 67 (CD when due to merchant docs error), 80 (DY when customer-requested) are merchant or customer-correctable. Code 07 (EX), 12 (HD), 67 (CD network-side) are FedEx-side. The card pools both. Roughly 60% to 70% of exceptions are operational (correctable); 30% to 40% are FedEx-side (weather, network).
Peak-period seasonalityQ4 routinely lifts exception rate from baseline 2% to 8% to 14%, driven by weather, network capacity strain, and customer address-correction requests during gift-shipping. The 30D vsP comparison flags the climb mid-November.
Time window30D vsP (rolling 30 days, period-over-period comparison)
Alert trigger>3%, sentiment thresholds at good=1, warn=3
Rolesowner, operations

Calculation

Calculated automatically from your FedEx 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 DTC consumer-electronics brand shipping out of Salt Lake City, UT using FedEx as primary carrier. Reading taken at 09:00 MT on 12 Mar 26 for the trailing 30 days vs prior 30 days.
Exception CodeDescriptionCountShare of exceptionsCustomer-correctable?
09 (NF)Address not found / undeliverable8431.7%Yes
12 (HD)Weather / natural disaster7628.7%No
07 (EX)Network exception (truck breakdown, mis-sort)5119.2%No
17 (BC)Business closed2810.6%Partly
67 (CD)Customs delay (international)145.3%Partly
80 (DY)Customer-requested delay / hold124.5%Yes
Total exceptions265
Total shipments (30D)15,830
Exception rate (this card)1.67%
The card reads 1.67% vs 1.41% prior 30D, sentiment is green (under good=1 threshold not met but warn=3 is well clear). Five things to notice:
  1. Address-not-found (Code 09) is the largest single bucket at 31.7%. Address-correction failures are merchant-correctable. Action: enable address-validation at checkout (Shopify Shop Pay, Adobe Commerce address verification, Google Address API), reject undeliverable addresses before they reach FedEx. Each prevented Code 09 saves 14to14 to 22 in re-shipment cost and an unhappy customer interaction.
  2. Weather (Code 12) at 28.7% reflects a cold-snap event in the Midwest 17 Feb 26 to 19 Feb 26. This is FedEx-side and uncontrollable. The exception rate spiked from baseline 1.4% to 4.8% on 18 Feb 26, recovered over 5 days. The card shows the residual; the 30D average smooths but the trend chart shows the spike.
  3. The +0.26 percentage-point climb over the prior period is mostly the weather event, plus a small Code 09 climb. Weather is non-recurring; Code 09 may be structural if checkout address-validation has degraded. Audit the Shopify checkout flow.
  4. Network exceptions (Code 07) at 19.2% are FedEx-side. They reflect truck breakdowns, hub mis-sorts, or routing errors. The merchant cannot prevent them, but high Code 07 share (>20%) on a sustained basis is grounds for an account-team conversation about route reliability on the merchant’s lanes.
  5. Customs delays (Code 67) at 5.3% suggest international Priority shipments are running into commercial-invoice or HS-code issues. Each customs delay adds 2 to 5 days of transit time. Audit the international-shipping playbook: HS codes accurate? Commercial invoice attached? Country-specific paperwork (CN22 / CN23) included? See International Customs-Hold Rate by Lane for lane-level detail.

Sibling cards merchants should reference together

CardWhy pair it with Exception RateWhat the combination tells you
On-Time Delivery RateLagging confirmation.Exception rate climbing 24-72 hours before on-time drops is the early-warning signal. Act on the exception, not the on-time number.
Late ShipmentsLagging count.50-65% of exceptions become late deliveries; the rest resolve on next-attempt.
Returned to SenderWorst-case outcome.Address-quality exceptions (Code 09 NF) that fail correction roll forward into RTS within 5-15 days.
Failed Delivery CountSevere end of exception spectrum.Confirmed-cannot-deliver disposition.
International Customs-Hold Rate by LaneInternational subset.Customs-hold scans (Code 67/68 CD) are exception events for international Priority.
OTD by RouteGeographic split.Weather-driven exceptions concentrate in specific zones; pair to identify regional exposure.
Cross-connector: shopify.refund_rateCustomer-impact lag.Address-exception rate predicts refund-rate climb at 10-20 day lag.
Cross-connector: address-validation tools (Shopify Shop Pay, Google Address Validation)Upstream root cause.High Code 09 share suggests checkout-side validation isn’t firing.

Reconciling against the vendor’s own dashboard

Where to look in FedEx’s own dashboard: FedEx Reporting OnlineReports → Tracking → Exception Detail. Filter to All Services, Last 30 Days. The portal shows per-shipment exception scans with code, date, and resolution status. The card aggregates across all shipments; the portal supports row-level triage. Why our number may legitimately differ from FedEx’s portal:
ReasonDirectionWhy
Code-set scopeEitherThe card includes any non-routine scan (Code 07, 09, 12, 17, 67, 80). Some FedEx reports default to “delivery exceptions” only, excluding network exceptions (Code 07). To match like-for-like, set both to the same exception-type filter.
Resolution countingEitherSome merchants want only “still-active” exceptions counted; the card counts any exception event in the period regardless of subsequent resolution.
Multi-piece shipmentsEitherA multi-piece shipment with one piece exceptioned and others delivered cleanly may count as one exception (master-tracking-level) or one exception per piece (piece-level). The card uses master-tracking-level by default.
Time zone<1 day offUTC vs billing-time-zone boundary.
Tracking-scan lagOurs lower for “today”FedEx Tracking API scan events flow with 30-minute to 4-hour lag during normal volumes.
Cross-connector reconciliation:
CardExpected relationshipWhat causes legitimate divergence
usps.usp_exception_ratePeer carrier. Independent populations.USPS typically runs higher exception rate (rural-route address quality); FedEx lower (better address-validation at booking).
easypost.eas_exception_rateIf EasyPost is the booking layer for FedEx, EasyPost’s FedEx-subset agrees with this card.Filter EasyPost by carrier=FedEx for like-for-like.
Customer NPS or chargeback rateDownstream sentiment.Exception rate climbing predicts higher refund-and-chargeback at 7-14 day lag.

Known limitations / merchant FAQs

My exception rate jumped overnight, where do I look? Three diagnostic steps. (1) Check the per-code breakdown; weather-driven (Code 12) spikes are exogenous and recover within 5-7 days. (2) Check whether one ZIP region or destination state is responsible (a winter storm, a regional FedEx facility outage). (3) Check whether a recent checkout-flow change (Shopify theme update, Adobe Commerce extension, third-party widget) introduced address-quality regressions, driving Code 09 NF up. How do I cut Code 09 (address-not-found) exceptions? Implement address-validation at checkout. Most ecommerce platforms have plugins: Shopify (Address Validator+, ShipperHQ), Adobe Commerce (Magento Address Validation), BigCommerce (Address Hero). Validates against USPS Address Information System (AIS) and rejects undeliverable addresses pre-order. Reduces Code 09 by 50-70%. A shipment showed an exception but delivered on time. Why does it count? Exceptions are events; delivery is the outcome. The card counts events because they’re predictive of customer-experience risk. Many exceptions resolve on next-attempt and deliver within service-standard window. Why is Code 12 (weather) so high in winter? FedEx Memphis SuperHub is the bottleneck for most of the FedEx network. Severe weather affecting Memphis (winter storms, ice, fog) creates network-wide exceptions even for shipments not passing through Memphis. December-February exception rates run 1.5-2x normal for this reason. Should I auto-email the customer when my parcel hits an exception? Often yes. Industry rule: send proactive “your parcel is running late” email when an exception scan posts and the parcel is 24+ hours past the expected scan progression. Reduces inbound CS contacts by 30-50% and improves NPS. What’s Code 17 (BC) “Business closed”? B2B delivery attempted on a day the receiving business was closed (weekend, holiday, business hours end early). FedEx attempts again next business day. Exception count is recorded but resolution is automatic. Rarely actionable; just monitor for unusual patterns (e.g. a B2B customer that’s chronically closed). Do customs-hold exceptions (Code 67) on international shipments count here? Yes. International Priority and International Economy customs delays show as Code 67 exceptions. The aggregate card surfaces them; for lane-level detail, see International Customs-Hold Rate by Lane. During Q4, what exception types climb most? “Code 12 weather” climbs most due to Memphis hub bottleneck and Northeast/Mountain West winter storms. “Code 17 business closed” climbs as B2B customers close more days for holidays. “Code 09 NF” climbs slightly as gift-shipping volume introduces hand-keyed address-quality issues. All exception types are higher; prepare for 1.3x to 2x the normal rate. Can I reduce exception rate by switching to UPS? Slightly. UPS’s address-validation at booking is similar to FedEx’s. Expected drop: 0.2-0.5 ppt. The cost increase typically outweighs the marginal benefit unless the merchant’s exception rate is consistently above 4%. Why is my “today” reading lower than yesterday’s? Tracking-scan lag. FedEx Tracking API scan events flow into the card within 30 minutes to 4 hours; rural routes can lag up to 12 hours. Today’s reading often understates by 0.2-0.5 ppt and reconciles within 24-48 hours. Use the rolling 30-day not the daily figure.

Tracked live in Vortex IQ Nerve Centre

Exception Rate is one of hundreds of KPI pulses Vortex IQ tracks across FedEx 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.