Sign in

Blog · Data quality and reconciliation · Supply chain

Supply chain visibility metrics: coverage and exceptions

Supply chain visibility metrics measure milestone completeness and status freshness in operational records. Work through shipment coverage, missing events and stale status checks by supplier and lane.

The short answerSupply chain visibility metrics measure whether shipment records contain the milestones and timely status information needed for an operating decision. Core measures include shipment milestone coverage, expected milestone completeness and current-status coverage. Calculate them against a defined shipment population and cutoff, then identify missing or stale records by supplier, lane and accountable owner.

Supply chain visibility metrics measure whether operational shipment records are complete and current enough to support a decision. Start with the shipments you expected to monitor, then test the events and status information available at a fixed cutoff. A record with a reassuring status label can still have missing evidence underneath it.

Separate information coverage from operating performance

An on-time delivery measure asks whether the shipment met its commitment. A visibility measure asks whether the records let you establish where the shipment stands and what has happened. A late shipment can be well documented; a shipment that arrived on time can have missing records.

GS1 US describes visibility event information in terms of what happened, when, where and why. Those questions are useful checks on a business export: a milestone name without a shipment identifier, event time or location may not support the intended decision.

Use the supply chain KPI guide for service and inventory measures. Use SCOR metrics to organize the wider performance framework. Keep information quality visible beside those results so missing evidence does not disappear inside a favorable average.

Define the population, milestone rules and cutoff

Begin with the shipment register, rather than a file containing only events received. Otherwise, shipments with no events disappear from the denominator.

For each shipment, retain its identifier, supplier, lane, site, stage and whether it is active at the cutoff. Add expected milestone times, actual milestone times and the latest confirmed operational status time. Preserve the reporting cutoff as a separate field so rerunning the same file does not change its meaning.

Agree these rules with transportation:

  • Which movements belong in the review, including exclusions and canceled shipments.
  • Which milestones are due at each stage, allowing for approved timing tolerances.
  • What counts as a valid event and a confirmed status update.
  • How long a status can remain unchanged before an active record becomes stale.

The GS1 explanation of EPCIS events distinguishes the event's time, location and business context. Apply the same discipline to the exported fields without assuming your file uses that standard. A file modification time does not establish when a physical event occurred.

For this review, freshness means that an active shipment has a confirmed status no more than 24 hours old. That threshold is an example of an owner-approved operating rule, not an industry benchmark.

A worked example from an inbound shipment register

An illustrative Wisconsin distributor reviews active inbound shipments at noon UTC on October 23, 2026. Pickup, terminal departure and destination arrival are all due for every shipment below. Shipments with recorded arrival remain active while the receiving team completes final acceptance.

The milestone flags are 1 when a valid actual event is present and 0 when it is missing. Status age measures time since the latest confirmed operational update, which can be different from the last physical milestone time.

Shipment Supplier/lane Pickup Departure Arrival Latest status confirmation (UTC) Age (hours)
WI-101 Supplier A / North 1 1 1 October 23, 08:00 4
WI-102 Supplier A / North 1 1 1 October 23, 06:00 6
WI-103 Supplier A / North 1 0 0 October 22, 06:00 30
WI-104 Supplier A / North 1 1 1 October 23, 07:00 5
WI-105 Supplier B / South 1 1 1 October 23, 10:00 2
WI-106 Supplier B / South 0 1 1 October 22, 08:00 28
WI-107 Supplier B / South 1 1 1 October 22, 04:00 32
WI-108 Supplier B / South 1 1 0 October 23, 11:00 1

All dates in this table are in 2026. For example, the interval from October 22 at 06:00 UTC to the cutoff is 30 hours. Use full timestamps with a consistent time basis in the working file, not text labels that omit the year or zone.

Calculate coverage in distinct ways

Shipment milestone coverage = Shipments with all due milestones / Eligible shipments × 100

Milestone completeness = Valid recorded due milestones / Expected due milestones × 100

Current-status coverage = Active shipments within the freshness threshold / Eligible active shipments × 100

Result Calculation from the shipment rows Value
Shipments with all due milestones WI-101, WI-102, WI-104, WI-105, WI-107: 5 / 8 × 100 62.5%
Milestone completeness 20 recorded / (8 shipments × 3 due milestones) × 100 83.3%
Current-status coverage WI-101, WI-102, WI-104, WI-105, WI-108: 5 / 8 × 100 62.5%
Shipments missing at least one milestone WI-103, WI-106, WI-108: 3 / 8 × 100 37.5%
Stale active shipments WI-103, WI-106, WI-107: 3 / 8 × 100 37.5%

Round percentages to one decimal after calculating from the counts. The first check is 5 complete + 3 incomplete = 8 shipments. The milestone check is 20 present + 4 missing = 24 expected milestones. Current and stale counts also reconcile: 5 + 3 = 8.

The two exception lists overlap at WI-103 and WI-106. There are 3 + 3 - 2 = 4 distinct shipments needing either kind of follow-up. Do not add the missing and stale percentages and call that the overall exception rate.

If the latest confirmation timestamp is in G2 and the cutoff is in L1, status age in hours is:

=IF(G2="","",($L$1-G2)*24)

Keep a blank confirmation time as missing evidence. Flag negative ages for review because they imply an update after the cutoff or an inconsistent time basis. Neither should become a valid current record without investigation.

Turn the exception list into an operating decision

North has 3 / 4 × 100 = 75.0% shipment milestone coverage; South has 2 / 4 × 100 = 50.0%. The overall result still comes from the complete and eligible counts. If lane sizes change, averaging lane percentages will no longer give the correct company figure.

The missing pickup on WI-106, despite later events, calls for an evidence check with the source owner. WI-108 has a fresh status but lacks an arrival milestone, so the transportation owner must distinguish an actual arrival delay from an unrecorded event. WI-107 has complete milestones but needs a current confirmation while acceptance remains open.

Transportation owns the milestone rules. Supplier or carrier relationship owners follow up the missing records, and receiving confirms arrival and acceptance evidence. A reporting owner checks the population and duplicate identifiers. Put those responsibilities beside the exception list before choosing a supply chain dashboard layout.

Where it goes wrong

  • Counting only received events. Start from the expected shipment population so silent shipments remain visible.
  • Demanding future milestones. A milestone that is not due must not count as missing. Apply stage and expected-time rules first.
  • Refreshing status without confirming it. Copying yesterday's status into a new file does not establish a new operational confirmation.
  • Mixing time zones or cutoffs. Normalize timestamps and preserve the snapshot time before calculating age.
  • Treating missing events as confirmed service failures. Separate information gaps from physical exceptions and retain both owners' findings.

Check your own shipment records in Covirage

Bring your shipment register, exported milestones and agreed cutoff and freshness rules to Covirage. Covirage maps the columns; its tools compute and check coverage and exception counts, and the external AI model explains the results with every figure traced to its rows. Create a free Covirage account, set up your business and bring a sample of your own data.

See Covirage for supply chain teams for the supporting operating context.

Questions people ask

What is a supply chain visibility metric?

It measures how well operational records describe the shipments or orders being monitored. Examples include the share with all due milestones recorded and the share with a recent confirmed status. These measures assess information coverage rather than delivery performance itself.

How do you calculate shipment visibility coverage?

Define the shipments in scope and which milestones should exist by the cutoff. Divide shipments with every required milestone recorded by all eligible shipments. Keep shipments with no records in the denominator, and show which milestones are missing.

How often should shipment status be updated?

The appropriate interval depends on the lane, shipment stage and operating decision. Agree the freshness threshold with the transportation owner rather than assuming a universal target. Closed shipments and movements awaiting a future milestone may need different treatment from active exceptions.

Does missing tracking information mean a shipment is late?

Missing information means the record cannot establish the expected event. The physical shipment may have moved without the event being recorded, or the event may not have happened. Confirm the situation with the responsible owner before labeling it a service failure.