The tracking workflow problem
Tracking is the most surface-area-rich solution: every shipment generates events from booking confirmation through gate-out at destination, and customer-facing visibility depends on those events being timely, accurate, and translated into operator-grade narrative. DCSA Track & Trace v2.2 standardisation is six-of-seven complete across the Tier 1 roster, with one carrier still requiring third-party aggregator dependency. Webhook subscription callbacks (push instead of polling) reduce API quota waste mid-voyage but require TMS-side webhook ingestion, which most mid-market TMSs lack.
Alliance operating-carrier complications mean tracking events for a single booking can flow through two or three different carrier systems before reaching the forwarder. A booking on one carrier may sail on a partner carrier's vessel with that partner's milestone naming, latency, and event granularity. Hub-and-spoke service designs (Gemini Cooperation specifically) generate higher milestone counts at hub ports than direct services on the same trade lane, which need consolidation into a single customer-facing on-transit status rather than a confusing sequence of hub events.
Reliability baselines vary across the four major groupings by 30 percentage points or more in a single Sea-Intelligence release, which means a single delay threshold across the fleet over-alerts on weak lanes and misses real exceptions on strong lanes. Exception detection has to be calibrated per alliance, not per carrier, and customer-facing pre-alerts have to absorb the routing reality without exposing the alliance plumbing to the consignee.
How it varies by carrier
Tracking varies on DCSA conformance state, alliance operating-carrier event attribution, hub-and-spoke milestone density, and reliability baseline. These are the top-line differences; each carrier's tracking page has the full architecture.
Maersk
Maersk exposes tracking through the Track & Trace Plus API on developer.maersk.com with DCSA T&T v2.2 subscription callbacks (push) where the forwarder's TMS supports webhook ingestion, and a legacy XML API with PII masking on consignee fields for non-bill-to requesters. The distinctive ops pattern is ETA calibration anchored to the Gemini Cooperation reliability tier rather than a generic industry-average delay threshold, which means a small variance on a high-reliability mainliner surfaces as a meaningful exception while the same variance on a lower-reliability lane stays within normal variance. Standard DCSA milestone count is 10 events for a typical transhipment shipment with ACT, EST, and PLN qualifiers, and the Track & Trace Plus subscription model removes the polling-quota tradeoff that constrains TMSs without webhook capability.
MSC
MSC's standalone independent network since 1 February 2025 produces fewer transhipment events per shipment on direct services than the hub-and-spoke alliances, so a Shanghai-Rotterdam shipment on MSC may reach destination with fewer milestones than the same route on a Gemini service: fewer events does not mean missing data, it means the ship sailed direct. MSC Track & Trace API onboarding requires submission of the Direct Integration Request Form via the Developer Portal at developerportal.msc.com (not self-serve), and MSC's published reliability tier sits between Gemini and the lower-reliability alliances per Sea-Intelligence figures. For 9 Asia-Europe services where MSC bookings sail on Premier Alliance partner tonnage (ONE, HMM, Yang Ming) under slot exchange, MSC's native tracking feed may have different coverage than the operating carrier's, and reconciliation across both feeds is needed where the operating carrier's API is available.
CMA CGM
CMA CGM bookings under the Ocean Alliance Day 10 Product (April 2026, approximately 394 vessels across 41 weekly services) may physically sail on COSCO, OOCL, Evergreen, or ONE tonnage, and milestone events on partner-operated legs originate in the operating carrier's system before consolidating into CMA CGM's visibility platform with a possible reporting lag. The DCSA T&T v2.2 API at api-portal.cma-cgm.com supports subscription callbacks for push-based notifications and a behalf_of parameter for third-party intermediaries to query tracking on behalf of the bill-to party without requiring direct credentials. Most Asia-Europe and Asia-Mediterranean services route via the Cape of Good Hope adding approximately 10 to 14 days versus Suez transit, with INDAMEX still potentially on Suez routing, so per-service routing checks beat carrier-level assumptions on transit time.
Hapag-Lloyd
Hapag-Lloyd's distinctive tracking pattern is the Gemini Cooperation hub-and-spoke design that generates a shuttle-mainliner-shuttle event chain through Tangier, Salalah, Algeciras, SCCT at Port Said, and the new Damietta hub (DACT, HGT-operated, in the SE3 rotation from April 2026). Each hub transit adds a transhipment discharge and an onward-load event on top of the standard milestone set, and customer-facing tracking should consolidate the chain into a single on-transit status rather than surfacing every hub stop. The DCSA T&T v2.2 API at api-portal.hlag.com offers self-serve OAuth registration (lower-friction onboarding than carriers requiring a Direct Integration Request Form), and the DCSA Commercial Schedules API live since June 2025 enables combined schedule and tracking integration in the same layer.
ONE
ONE bookings sail across four operating-carrier scenarios with materially different tracking characteristics: ONE-operated services emit a direct DCSA T&T feed with the full event set; HMM-operated and Yang Ming-operated services consolidate milestones through ONE's platform but the source infrastructure is the partner's, so latency and granularity differ from ONE-operated services; MSC slot-exchange tonnage on 9 Asia-Europe services consolidates from MSC tracking with MSC milestone naming conventions rather than ONE's standard event codes. ONE has the broadest published DCSA portfolio among Tier 1 carriers (T&T 2.2, OVS 3.0, BOL 3.0 ISS, Commercial Schedule 1.0, Booking 2.0 Beta) at developers.one-line.com, though documentation is gated behind registration. Premier Alliance reliability of 54.2% (Sea-Intelligence GLP #177, March/April 2026) means nearly half of arrivals are delayed, so exception management is a larger share of the tracking workload than for higher-reliability groupings.
COSCO
COSCO is the only Tier 1 carrier where DCSA T&T v2.2 production conformance is not confirmed in public sources, a material standards gap versus Maersk, MSC, CMA CGM, Hapag-Lloyd, ONE, and Evergreen, which all have v2.2 live. The third-party aggregator landscape exists specifically to compensate for the gap: TrackCargo refreshes every 90 minutes, TRADLINX 12 times daily, JSONCargo provides an on-demand pay-per-query API, and GoComet runs near-real-time. Until conformance is verified, programmatic tracking should route through SynCon Hub at synconhub.coscoshipping.com, the COP portal, third-party aggregators, and EDI IFTSTA via INTTRA rather than DCSA v2.2 endpoints, with channel-native polling cadence per source rather than a forced uniform interval.
Evergreen
Evergreen's DCSA Track & Trace v2.2 is live on the ShipmentLink API Developer Portal (carrier self-attested), alongside additional DCSA APIs in beta (OVS 3.0, Booking 2.0 Beta, BL 3.0 Beta, Commercial Schedules 1.0, JIT Port Call 1.2 Beta 1), which should be treated as Beta until Evergreen announces GA. The operational consequence of COSCO's DCSA conformance gap shows up directly here: Ocean Alliance shipments where the operating carrier is COSCO require cross-polling SynCon Hub and the COP portal alongside ShipmentLink because the COSCO leg does not emit DCSA-conforming events. Ocean Alliance reliability of 67.6% (Sea-Intelligence GLP #177, April 2026, ALL arrivals) is the working baseline for ETA calibration, with no Evergreen-specific carrier-level figure separately published.
How it varies by TMS
Across the seven Tier 1 carriers, TMSs handle the forwarder side of tracking through three integration patterns: direct DCSA T&T API integration, carrier-portal scraping or browser automation, and multi-carrier aggregator subscriptions. CargoWise users connect via eAdaptor for shipment state and consume milestone events through either each carrier's Track & Trace API (developer.maersk.com, developerportal.msc.com, api-portal.cma-cgm.com, api-portal.hlag.com, developers.one-line.com, ShipmentLink Developer Portal for Evergreen) or IFTSTA EDI via INTTRA, Infor Nexus, or CargoSmart. GoFreight uses REST APIs against carrier endpoints where they exist and falls back to portal automation against SynCon Hub or COP for COSCO. Magaya routes through Open API or Magaya Connect with carrier-API mappings. Logi-Sys handles high-volume EDI flows via INTTRA. Descartes provides carrier integrations across the major trade lanes.
Webhook subscription support is the uneven layer. DCSA T&T v2.2 subscription callbacks are a push-based pattern where the carrier notifies the TMS as events occur rather than the TMS polling on a fixed cadence, but the pattern requires TMS-side webhook ingestion that most mid-market TMSs lack. Where webhook ingestion is unavailable, the TMS stays on polling, which wastes API quota mid-voyage when shipments are stable and may miss near-real-time events when they matter. The mature integration pattern is to use callbacks where supported, polling with lifecycle-aware intervals where not, and EDI IFTSTA as the universal fallback for legacy TMS deployments.
Multi-carrier aggregators (project44, FourKites, GoComet, TrackCargo) provide an alternative integration path for forwarders without direct carrier API integrations across the full Tier 1 set. The aggregator stack is most useful where carrier-side conformance is uneven; COSCO's DCSA gap is the clearest example, where TrackCargo, TRADLINX, JSONCargo, and GoComet are commonly used to close the refresh-cadence gap that SynCon Hub's unpublished native cadence creates. Where the TMS does not cover a given carrier's tracking integration, agents drive the carrier's portal directly and write milestones back to the TMS so the shipment record stays in sync.
How Expedion handles tracking
Seven capabilities cover the full tracking workflow across every Tier 1 carrier. Each one maps to friction patterns documented on the per-carrier tracking pages.
Consume milestone data via each carrier's DCSA T&T v2.2 API where live (Maersk Track & Trace Plus, MSC Track & Trace, CMA CGM api-portal.cma-cgm.com, Hapag-Lloyd api-portal.hlag.com, ONE developers.one-line.com, Evergreen ShipmentLink Developer Portal) using subscription callbacks (push) where the forwarder's TMS supports webhook ingestion. Polling fallback runs where webhook ingestion is unavailable, with lifecycle-aware cadence: tighter near cut-off and port arrival (every 30 to 60 minutes), looser in mid-transit (every 4 to 6 hours). For COSCO, where DCSA T&T v2.2 production conformance is not publicly confirmed, route through SynCon Hub, the COP portal, third-party aggregators (TrackCargo 90 minutes, TRADLINX 12 times daily, JSONCargo on-demand, GoComet near-real-time), and EDI IFTSTA via INTTRA at channel-native cadence.
Identify the operating carrier per booking from the booking confirmation and vessel schedule. For Gemini Cooperation, recognise Maersk and Hapag-Lloyd as joint operators of the East-West mainliner and shuttle network. For Ocean Alliance Day 10 Product, route partner-vessel queries to the operating carrier's tracking feed: a CMA CGM booking on COSCO, OOCL, or Evergreen tonnage polls the operating carrier in parallel with CMA CGM. For Premier Alliance, distinguish the four ONE booking scenarios (ONE-operated direct, HMM-operated consolidated, Yang Ming-operated consolidated, MSC slot-exchange consolidated with MSC milestone naming) and reconcile event taxonomies before surfacing to the consignee. Customer-facing updates show the shipment status without exposing the alliance plumbing or partner-carrier identifiers.
Collapse the shuttle-mainliner-shuttle event chain through Gemini hubs (Tangier, Salalah, Algeciras, SCCT, Damietta from April 2026) into a single customer-facing on-transit status rather than the raw sequence of arrival, discharge, onward load, and departure events at each hub. The narrative is generated per hub and per destination pair: a customer sees 'in transhipment at Tangier, on schedule for onward connection to Rotterdam on [date]' instead of four hub events that look like a stuck shipment. Individual hub events surface only when an exception (late shuttle, missed mainliner connection, hub congestion) needs explanation. The same pattern applies to Premier Alliance's April 2026 Busan and Shanghai hub-and-spoke restructure on Asia-Europe lanes.
Compare actual-versus-planned timestamps against the alliance reliability baseline rather than a generic delay threshold. Per Sea-Intelligence GLP #177 (April 2026, ALL arrivals): Gemini 85.0%, MSC standalone 73.4%, Ocean Alliance 67.6%, Premier Alliance 54.2%. A 24-hour variance on a Gemini mainliner is a meaningful exception worth surfacing because the baseline is tight; the same variance on a Premier Alliance service is within normal variance and would generate alert fatigue if surfaced. Exception thresholds are configurable per alliance, per trade lane, and per service string. Continuous ETA recalibration uses AIS vessel positions where carrier feed events are silent or delayed.
Auto-map carrier-specific container prefixes to the canonical SCAC for API resolution. Maersk SEAU and MSKU prefixes route under MAEU. Hapag-Lloyd UACU prefixes from the UASC-era fleet route under HLCU. ONE legacy NYKU, MOLU, and KKLU prefixes route under ONEY. COSCO China Shipping merger heritage prefixes (CCLU, CSLU, CBHU, COCU) and leased equipment prefix CICU route under COSU. Evergreen container prefixes (EMCU, EGHU, EGSU, EITU, plus HMCU, UGMU) route under EGLV. OOCL-owned containers (OOLU) route under OOCL's tracking system, not COSCO's, even when the booking is on COSCO. IMT U-class LTIU and IMTU prefixes carry IMT party identifiers through from booking confirmation rather than defaulting to EGLV without operator confirmation.
Parse inbound customer tracking queries arriving by email, match to the correct shipment via container, BL, or booking number, and respond with current status, last milestone, predicted ETA, and any scheduled delay. Response time target: under 5 minutes, 24/7. Industry baseline is 2 to 4 hours during business hours only. Responses are sent from the forwarder's email domain in the forwarder's voice. For shipments slipping against the alliance reliability baseline, agents notify the consignee proactively rather than waiting for the customer to ask, with the slipped milestone, the updated ETA, the reason where known (hub congestion, vessel schedule change, routing transition), and the recommended next action.
Validate carrier milestone data against AIS vessel position data for ETA sanity-checking. When the carrier feed is silent on a transhipment leg (common on Ocean Alliance partner-operated legs and on COSCO's third-party aggregator path), generate synthetic transhipment events from AIS vessel arrival, berthing, and departure signals so the consignee-facing timeline does not show a multi-day gap. The synthetic events are clearly labelled as AIS-derived rather than carrier-confirmed, and replaced with the carrier event when it eventually arrives in the feed.
Related pages
Tracking by carrier: Maersk · MSC · CMA CGM · Hapag-Lloyd · ONE · COSCO · Evergreen
Hubs: Carriers hub · Solutions hub
Other solutions: Shipping instructions · Booking · Bill of lading · Documentation
Frequently asked questions
Why does COSCO require third-party aggregators when other Tier 1 carriers have DCSA T&T v2.2 live?
COSCO is the only Tier 1 carrier in the Expedion roster where DCSA T&T v2.2 production conformance is not confirmed in public sources, a material gap versus Maersk, MSC, CMA CGM, Hapag-Lloyd, ONE, and Evergreen. The third-party aggregator stack exists specifically to compensate for that gap: TrackCargo refreshes every 90 minutes, TRADLINX runs 12 times daily, JSONCargo provides an on-demand pay-per-query API, and GoComet runs near-real-time. SynCon Hub at synconhub.coscoshipping.com is the primary customer-facing platform but its native refresh cadence for container milestones is not published, which is why aggregators are commonly used to close the cadence gap. Expedion treats COSCO as non-DCSA-confirmed and routes programmatic tracking through SynCon Hub, the COP portal open API, third-party aggregators at channel-native cadence, and EDI IFTSTA via INTTRA until conformance is verified.
How does Expedion handle tracking for shipments on alliance partner vessels?
Three alliance scenarios with materially different tracking characteristics. Gemini Cooperation (Maersk and Hapag-Lloyd) operates a hub-and-spoke East-West network where shipments transit through Tangier, Salalah, Algeciras, SCCT, and Damietta with shuttle-mainliner-shuttle event chains that need consolidation into a single on-transit status. Ocean Alliance Day 10 Product (CMA CGM, COSCO, OOCL, Evergreen, with ONE on Transatlantic via separate cooperation) routes a single booking on partner tonnage where milestone events flow through the operating carrier's system before consolidating: a CMA CGM booking on a COSCO vessel polls COSCO in parallel, an Evergreen booking on a COSCO leg cross-polls SynCon Hub and COP because COSCO's DCSA conformance is not confirmed. Premier Alliance (ONE, HMM, Yang Ming, plus MSC slot-exchange on 9 Asia-Europe services) splits ONE bookings across four operating-carrier scenarios with different feed sources and different milestone naming conventions. Agents identify the operating carrier per booking, poll the partner feed in parallel, and consolidate milestones into a single customer-facing view without exposing alliance identifiers to the consignee.
What's the difference between hub-and-spoke milestone events and direct-service tracking?
Gemini Cooperation's hub-and-spoke design generates extra milestone events at each hub transit (Tangier, Salalah, Algeciras, SCCT at Port Said, Damietta from April 2026), with each hub adding a transhipment discharge event and an onward-load event on top of the standard origin-to-destination milestone set. MSC's standalone independent network since 1 February 2025 has more direct services on the same trades, so a Shanghai-Rotterdam shipment on MSC may reach destination with fewer milestones than the same route on a Gemini service. The implication for forwarders: more events does not mean better data, and fewer events does not mean data is missing; it means the ship sailed direct. Customer-facing narrative needs to translate either pattern into a single on-transit status rather than surfacing every hub stop, with individual hub events surfaced only when an exception (late shuttle, missed mainliner connection, hub congestion) needs explanation.
How do reliability numbers across alliances actually compare?
Sea-Intelligence GLP #177 (April 2026, ALL arrivals) is the canonical anchor across the Tier 1 carrier pages: Gemini Cooperation 85.0%, MSC standalone 73.4%, Ocean Alliance 67.6%, Premier Alliance 54.2%. The 30-percentage-point spread between top and bottom means exception detection thresholds must calibrate to the alliance reliability tier rather than a single fleet-wide threshold. A 24-hour delay on a Gemini service is a meaningful exception worth surfacing because the baseline is tight; the same delay on a Premier Alliance service is within normal variance and would generate alert fatigue if surfaced. Other Sea-Intelligence releases use different methodologies (21-day pre-arrival vs ALL arrivals) and different time windows, so a published number on one carrier page may not be directly comparable to a different methodology cited elsewhere. Per-carrier reliability percentages are not consistently published separate from the alliance aggregate, so the alliance-level number is the working reference for ETA calibration.
What does April 2026 service restructuring mean for tracking ETA baselines?
Three concurrent restructures change expected milestone sequences and transit-time baselines. Premier Alliance hub-and-spoke restructure uses Busan and Shanghai as primary Asian hubs with more shuttle-to-mainliner transhipment events on Asia-Europe lanes, with the explicit aim of improving the 54.2% reliability baseline through fewer port calls per rotation. Gemini Cooperation service changes include NE2 adding Antwerp, NE3 adding a Baltic rotation via Aarhus and Gothenburg with Yantian replacing Ningbo and Southampton as final outbound European call, NE4 reverting to its pre-Baltic rotation, and SE3 upgrading to 20,000 TEU vessels with the new Damietta hub call. Ocean Alliance Day 10 Product launches with approximately 394 vessels across 41 weekly services and 520+ direct port pairs. Tracking dashboards anchored to pre-April 2026 routings will see false-positive delay alerts until baselines update; service waypoint configuration and ETA calibration models need to refresh from the effective date rather than running on the old rotations.