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

At a glance

Share of PostNord shipments that threw a tracking exception (held at delivery office, address invalid, weather delay, customs clearance issue, attempted-no-answer, recipient refused, damage detected, etc) at any point during their transit. The leading indicator for Late Shipments and OTD Rate drops, exceptions today predict late deliveries 24 to 72 hours from now.
What it countsCOUNT(shipments WHERE any tracking event has eventType IN exception_codes) / COUNT(shipments) over the trailing 30 days. The exception_codes list covers PostNord’s full taxonomy: WEATHER_DELAY, ADDRESS_INVALID, RECIPIENT_NOT_HOME, RECIPIENT_REFUSED, CUSTOMS_HELD, DAMAGED, RETURN_TO_SENDER, LOST_IN_TRANSIT, MISSORT, plus the partner-carrier codes for cross-border.
What’s counted vs notA consignment with multiple exception events counts once (not once per event). A delivered consignment that threw an exception en route still counts in the denominator (it shipped) and in the numerator (it had an exception).
Exception event sourcesGET /shipments/v1/parcels/{id}/events returns the full event stream; the engine filters for exception event types and aggregates per-shipment. Cross-border consignments include the destination-carrier’s exception events when PostNord propagates them, which it does for ~80 percent of partner carriers.
Climate sensitivityThe exception rate is the single most weather-sensitive metric on the PostNord connector. A single major snowstorm in southern Sweden and Denmark can push the 30-day exception rate from 1.5 percent to 4 percent overnight, all driven by WEATHER_DELAY codes. The rate stays elevated for the duration of the storm plus a 3 to 5 day recovery tail.
Why it leads OTDAn exception event happens during transit (parcel held, address re-attempt scheduled, customs clearance pending); the late-vs-on-time verdict only lands when the parcel finally delivers, 24 to 72 hours later. Exception rate climbing today predicts OTD dropping in the days ahead.
Returns / RTOIncludes the RETURN_TO_SENDER event type (counts as exception); excludes intentional returns dispatched via separate return labels (those have a different shipment record).
Refresh cadenceHourly. Exception status flips to “exception” the moment the first qualifying event ingests.
Time window30D vsP (rolling 30 days, period-over-period). Daily reading is available but volatile.
Alert trigger>3%. The 3 percent threshold is calibrated against typical Nordic weather-noise baseline (which sits at 1 to 2 percent).
Sentiment key{'type': 'gauge', 'thresholds': {'good': 1, 'warn': 3}}.
Rolesowner, operations

Calculation

Calculated automatically from your PostNord 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 Stockholm outdoor-apparel brand. Reading taken at 09:00 CET on 14 Mar 26 for the trailing 30 days.
Exception typeCount (30d)Share of exceptionsWhat it means
WEATHER_DELAY (snow / ice / wind)14251%Climate-driven, recovers as conditions clear
RECIPIENT_NOT_HOME (home delivery only)6423%Driver attempted, no answer, redelivery scheduled
ADDRESS_INVALID2810%Wrong address at checkout or PostNord couldn’t decode
CUSTOMS_HELD (cross-border NO/FI only)186%Norwegian / Finnish customs clearance delay
MISSORT (parcel routed to wrong hub)145%Operational error, recoverable
DAMAGED83%In-transit damage; triggers claim
LOST_IN_TRANSIT41%Permanent loss; triggers claim
Total exceptions278100%
Total shipments (30d)10,080
Exception rate (this card)2.76%Below 3% warn
What this tells the merchant:
  1. 2.76 percent exception rate, alert at >3% just clear. The card sits in WARN-near territory; weather-driven exceptions push the rate close to threshold during winter, which is normal seasonal variation.
  2. Weather is half the exceptions. 142 of 278 (51 percent) are WEATHER_DELAY. The card does not auto-exclude weather-affected days; the 2.76 percent rate is the actual experienced rate including weather. If you reset thresholds for winter (Dec to Feb) to 4 percent, the alert framing matches reality. Open Settings → Alerts → PostNord Exception Rate to apply seasonal thresholds.
  3. The address-invalid 10 percent share is the actionable trim. 28 exceptions caused by wrong addresses at checkout. Each costs roughly 2 days of redelivery cycle plus a customer-service ticket. The fix is upstream: enable PostNord’s address-verification widget at checkout (or use Klarna’s Nordic-aware address autocomplete). A typical implementation reduces address-invalid by 60 to 80 percent within 4 weeks.
  4. The recipient-not-home 23 percent share is partially preventable. Either ship more volume via MyPack Collect (pickup-point) where this exception cannot happen, or invest in a more aggressive delivery scheduling tool (e.g. PostNord’s “Choose your delivery time” feature when offered for the route). Recipient-not-home is structurally lower in dense urban areas and structurally higher in rural Sweden / Norway.
  5. The 18 customs-held cases are the cross-border specific issue. Norway (not in the EU customs union) requires a customs declaration on cross-border parcels; ensure your fulfilment integration is sending complete CN23 data. Missing or incomplete customs data is the primary cause of CUSTOMS_HELD, fixable upstream of PostNord.
  6. The leading-indicator behaviour. This brand’s reading 14 days ago was 1.92 percent. The rise to 2.76 percent over 14 days is the early-warning shape that predicted the late-shipments spike on 14 Feb (peer card showed 13.1 percent late on that week). Watch this card daily during winter; act on a 0.5pp daily rise before it cascades.

Sibling cards merchants should reference together

CardWhy pair it with Exception RateWhat the combination tells you
OTD RateDownstream lagging indicator.Exception rate up today predicts OTD down 24 to 72 hours later.
Late ShipmentsDownstream count.Exception count predicts late count at 1.5 to 2.5× ratio with 2 to 3 day lag.
Failed DeliveriesHard-failure subset of exceptions.Failed = exception that never recovered; ratio between exception rate and failed-delivery rate is the recovery rate.
Returned to SenderOne specific exception type.RTS rising while overall exception rate stable means address quality is degrading specifically.
Open ClaimsMoney-impact subset.DAMAGED and LOST_IN_TRANSIT exceptions feed claims; exception rate up does not always mean claim volume up.
First-Attempt Delivery RateRecipient-side exceptions.First-attempt down equals RECIPIENT_NOT_HOME up; consistent narrative.
OTD by RouteCountry / route breakdown.Cross-border routes have higher exception rates from CUSTOMS_HELD; per-route breakdown helps target fix.
Cross-connector: shopify.support_ticket_volume, bigcommerce.bc_support_ticket_volumeCS workload predictor.Exception count predicts WISMO volume at ~0.6× to 1.0× ratio over the next 5 days.
Cross-connector: bring.bri_exception_rateAdjacent Nordic carrier peer.Compare carrier-mix exception shapes during Nordic winter.

Reconciling against the vendor’s own dashboard

Where to look in PostNord’s own portal: PostNord Business PortalReports → Tracking Events, filter on event-type categories matching the exception taxonomy. PostNord doesn’t publish a single “exception rate” dial; the merchant must aggregate event-types per shipment manually. This card automates that aggregation. For service-status during weather events: postnord.se/driftinformation (Swedish), postnord.dk/driftinformation (Danish), and equivalents on .no and .fi. Why our number may legitimately differ from a manual aggregation:
ReasonDirectionWhy
Exception taxonomy mappingEitherPostNord uses ~40 distinct event codes; the card maps them to ~10 exception categories. Different mapping choices change the count slightly.
Cross-border partner-carrier eventsOurs lower if propagation incompleteCross-border consignments use destination-carrier scans; PostNord propagates ~80 percent of partner exception codes. Missing 20 percent show as “no exception” on the card but might appear in destination-carrier portals.
Time zoneBoundary days offPortal uses local TZ; card uses UTC.
Multi-event consolidationOurs lowerCard counts each shipment with at least one exception once; portal often shows event-count rather than shipment-count, inflating the apparent number.
Recovered-without-lateSameAn exception that resolves before the aim date passes still counts here; the card is about whether an exception occurred, not its outcome.
Currency / tax irrelevantn/aThis card is non-monetary; the typical FX / tax reconciliation reasons don’t apply.
Cross-connector reconciliation:
CardExpected relationshipCauses of legitimate divergence
bring.bri_exception_rateSame metric, adjacent Nordic carrier.Different exception taxonomies; absolute values differ by carrier methodology.
PostNord Late ShipmentsException today predicts late count in 24 to 72 hours.Lag varies by exception type (RECIPIENT_NOT_HOME has shortest lag; CUSTOMS_HELD has longest).
shopify.refund_rate, bigcommerce.bc_refund_rateException spikes drive refund-rate uptick at 14 to 21 day lag.Many drivers; this is one input.
shopify.support_ticket_volumeException count drives WISMO ticket volume at 0.6 to 1.0× ratio over 5 days.Ticket rate per exception varies by exception type (DAMAGED → high ticket rate; WEATHER_DELAY → low if comms is proactive).

Known limitations / merchant FAQs

My exception rate just spiked from 1.5 percent to 4 percent overnight. What’s happening? Almost certainly weather (Nov to Mar window) or industrial action. Check postnord.se/driftinformation for service alerts; if a major snowstorm or strike is announced, the spike is climate / labour driven and recovers as conditions normalise. Outside winter, sudden 2pp+ spikes usually trace to: (1) sortation incident at a major hub (Hallsberg in Sweden, Brøndby in Denmark) creating MISSORT spikes; (2) a fulfilment-side address-data issue (e.g. Shopify webhook failure caused a batch of orders to ship with corrupt addresses); or (3) a customs-rule change (Norway VAT changes have caused CUSTOMS_HELD spikes historically). Why is exception rate the leading indicator and OTD the lagging? An exception event is a signal during transit (parcel held, redelivery scheduled, customs queued); the late-vs-on-time judgment can only be made when delivery completes. Exceptions happen Day 2-3, late status determines Day 3-5. Acting on the leading signal is cheaper than acting on the lagging one, you can reroute or pre-emptively message customers based on exception status before the parcel is officially late. How should I tune the threshold for Nordic winter? Default 3 percent is calibrated for year-round average. For Dec to Feb consider raising to 4 percent (still alerts on operational issues but suppresses weather-driven false positives). Tune in Settings → Alerts → PostNord Exception Rate → Seasonal Override. Reset to 3 percent in March. A “weather delay” exception persisted for 4 days. Did the parcel get lost? Probably not, but it’s worth investigating. Most weather delays clear within 48 to 72 hours of the storm passing. If the exception persists past 4 days post-storm, the parcel may be: (1) still queued at a regional hub waiting for the recovery backlog to drain (typical for Norrland after major snowstorms); (2) genuinely misplaced during chaotic sortation; (3) blocked at a customs checkpoint awaiting documentation. Contact PostNord business support with the consignment ID; persistent post-event exceptions usually resolve via human escalation. The address-invalid share is growing. What’s the fix? Upstream of PostNord. Three options: (1) Address verification widget at checkout (PostNord publishes one for Sweden / Denmark; Klarna’s Nordic-aware checkout includes it). (2) Per-country address validation in your checkout JS (Norway and Finland have different postal-code formats; some merchants accept any string and PostNord’s intake fails). (3) Manual address-correction workflow for the address-invalid bucket; CS team reaches out to customers within 24 hours to confirm correct address before parcel is returned. How does cross-border CUSTOMS_HELD work? Norway and Iceland are not in the EU customs union; cross-border consignments require a CN23 customs declaration. PostNord’s intake validates basic fields; if the declaration is incomplete (missing HS code, missing recipient ID, value mismatch), the parcel is held at the destination’s customs checkpoint until the merchant or recipient provides the missing data. Most merchants automate CN23 generation via their fulfilment integration; gaps in the integration produce customs-held spikes. RECIPIENT_NOT_HOME on MyPack Home is part of the model. Why does it count as exception? Because it triggers redelivery, customer communication, and potential re-routing to a pickup point. From a merchant-impact perspective it’s an exception, even if PostNord’s contractual SLA tolerates a single retry. If your checkout copy promises home delivery on Day X and the customer experiences a Day X+2 redelivery, the perception is “late” even if the contract says “on-time after retry”. Pair with First-Attempt Delivery Rate to size this specifically. Multi-account aggregation (separate marketer accounts per Nordic country), how does this card aggregate? The card sums exceptions across all configured PostNord accounts, displayed as a single rate against total shipments. Per-account breakdown via the dashboard’s drill-down. Different country-accounts often have different exception shapes, Norway’s CUSTOMS_HELD share is structurally higher than Denmark’s, since DK is in the EU customs union. Is there a per-exception-type alert? Not from this card directly; the card is the aggregate. Per-type alerts (e.g. “alert when WEATHER_DELAY share exceeds 60 percent”) are configurable in Settings → Alerts → PostNord Exception Type Breakdown, and they fire on the Exception Rate by Type detail card (when present in the merchant’s dashboard). Does an exception that resolves before delivery still count? Yes. The card measures whether an exception occurred, not its outcome. A parcel that was held at a delivery office for an extra day but still arrived on the aim date still throws an exception event; the card counts it. This is correct behaviour: exceptions are signals about transit health regardless of final outcome. My exception rate is 0.8 percent year-round. Is that suspiciously low? Possibly. Either you’re operating in a structurally low-exception lane (urban Stockholm-only, all MyPack Collect, no cross-border) or PostNord’s exception-event ingestion is incomplete for your account (some legacy contracts have reduced event detail). Verify by spot-checking 10 random recent shipments against PostNord’s portal event-stream; if events match, the rate is genuinely low and the operation is well-tuned.

Tracked live in Vortex IQ Nerve Centre

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