{
 "generated_from_data_through": "2026-09-13",
 "mode": "live",
 "licence": "CC BY 4.0 for World Freight Monitor records; upstream data keeps its own terms (see /sources/)",
 "caveat": "This is a measured change in public data during the event window, compared with a baseline before it. It shows timing, not cause. We describe an event as causing a change only when an official source says so.",
 "events": [
  {
   "id": "typhoon-saudel-ningbo-shanghai-2026",
   "url_year": 2026,
   "title": "Typhoon Saudel closes Ningbo and Shanghai container terminals",
   "event_type": "weather-stoppage",
   "status": "ended",
   "start_date": "2026-08-26",
   "start_precision": "day",
   "end_date": "2026-08-28",
   "end_precision": "day",
   "first_reported": "2026-08-27",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 3,
   "severity_basis": "Measured effects at two ports; the portwatch-port-calls series records 0 to 3 calls at Ningbo on 2026-08-26 and 2026-08-27 and 1 call at Shanghai on 2026-08-27, against daily means of about 49 and 88 in the preceding weeks.",
   "scope": "regional",
   "entities": {
    "ports": [
     "ningbo",
     "shanghai-cn",
     "shanghai-yangshan"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "cn"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Ningbo-Zhoushan Port",
    "Shanghai International Port Group"
   ],
   "summary": "Typhoon Saudel stopped container handling at Ningbo-Zhoushan and Shanghai in late August 2026, about two weeks after Typhoon Dolphin. Ningbo suspended empty container work from 16:00 on 2026-08-26 (26 August 2026) and all terminal operations that evening, with roughly 800 vessels reported moved to safe anchorages. Yangshan halted on 2026-08-27 (27 August 2026) and Waigaoqiao suspended empty container work the same day. Saudel came ashore in southern Zhejiang around midday on 2026-08-28 (28 August 2026), and terminals at Waigaoqiao, Yangshan and Ningbo reopened between midday and 15:00 that day. Forwarders warned that bunched arrivals would add to congestion already present across North Asia.",
   "timeline": [
    {
     "date": "2026-08-26",
     "date_precision": "day",
     "text": "Ningbo suspends empty container operations at 16:00 and all container terminal operations by the evening, at its highest typhoon response level.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2026-08-27",
     "date_precision": "day",
     "text": "Shanghai's Yangshan halts operations at 06:00 and Waigaoqiao suspends empty container work; Ningbo yards and warehouses also close.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-08-28",
     "date_precision": "day",
     "text": "Saudel makes landfall in southern Zhejiang around midday; Waigaoqiao reopens at 12:00, Yangshan at 14:00 and Ningbo terminals at 15:00.",
     "source_ids": [
      "s1"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Port operators suspended terminal work under typhoon emergency responses activated by local authorities as the storm approached the Zhejiang and Fujian coast.",
    "attributed_by": "Ningbo and Shanghai port authorities and terminal operators, as reported by logistics firms",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2026-08-28",
    "text": "Terminals in Shanghai and Ningbo reopened between 12:00 and 15:00 on 2026-08-28 as the storm weakened, though berthing delays continued.",
    "source_ids": [
     "s1"
    ]
   },
   "related_events": [
    "typhoon-dolphin-shanghai-ningbo-2026"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ningbo"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-cn"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-yangshan"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ningbo"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://mykn.kuehne-nagel.com/news/article/typhoon-saudel-bears-down-on-east-china",
     "publisher": "Kuehne+Nagel",
     "title": "Typhoon Saudel makes landfall; East China ports reopen as storm weakens",
     "published_date": "2026-08-28",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171524/https://mykn.kuehne-nagel.com/news/article/typhoon-saudel-bears-down-on-east-china",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://vantage-logistics.com/typhoon-saudel-approaches-east-china-ningbo-port-suspends-operations-what-shippers-need-to-know",
     "publisher": "Vantage Logistics",
     "title": "Typhoon Saudel approaches East China, Ningbo port suspends operations",
     "published_date": "2026-08-28",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171600/https://vantage-logistics.com/typhoon-saudel-approaches-east-china-ningbo-port-suspends-operations-what-shippers-need-to-know",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.apllogistics.com/insights/typhoon-saudel-disrupting-ningbo-port-operations-amid-severe-north-asia-congestion",
     "publisher": "APL Logistics",
     "title": "Customer Advisory, Typhoon Saudel Disrupting Ningbo Port Operations Amid Severe North Asia Congestion",
     "published_date": "2026-08-27",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171652/https://www.apllogistics.com/insights/typhoon-saudel-disrupting-ningbo-port-operations-amid-severe-north-asia-congestion",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Closure and reopening times come from a carrier advisory and forwarder notices that agree with each other and with our port call series, but no statement from a port authority was retrieved."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/typhoon-saudel-ningbo-shanghai-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 29.166666666666668,
     "observed_value": 11.333333333333334,
     "abs_change": -17.833333333333336,
     "delta_pct": -61.142857142857146,
     "z_score": -3.202961219477486,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:47b79bae394d",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-yangshan",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 11,
     "observed_value": 8,
     "abs_change": -3,
     "delta_pct": -27.272727272727273,
     "z_score": -0.904534033733291,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:351fce2f7fb8",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-cn",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 92.33333333333333,
     "observed_value": 44,
     "abs_change": -48.33333333333333,
     "delta_pct": -52.34657039711191,
     "z_score": -4.985202690250834,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "2:e785e1c552e0",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 49.666666666666664,
     "observed_value": 12.333333333333334,
     "abs_change": -37.33333333333333,
     "delta_pct": -75.16778523489933,
     "z_score": -5.128127720751057,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:9f060b5c777a",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-cn",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 92.83333333333333,
     "observed_value": 45,
     "abs_change": -47.83333333333333,
     "delta_pct": -51.526032315978455,
     "z_score": -4.933631627937895,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "3:dad91b1cf2d3",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-yangshan",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 11,
     "observed_value": 8,
     "abs_change": -3,
     "delta_pct": -27.272727272727273,
     "z_score": -0.904534033733291,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:39dab429bf36",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 29.166666666666668,
     "observed_value": 11.333333333333334,
     "abs_change": -17.833333333333336,
     "delta_pct": -61.142857142857146,
     "z_score": -3.202961219477486,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:de88e495877d",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-26",
     "window_end": "2026-08-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2026-06-24",
     "baseline_end": "2026-08-18",
     "baseline_days": 51,
     "baseline_value": 49.666666666666664,
     "observed_value": 12.333333333333334,
     "abs_change": -37.33333333333333,
     "delta_pct": -75.16778523489933,
     "z_score": -5.128127720751057,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:e3465267195c",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2026-08-07",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-08",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-09",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-10",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      },
      {
       "date": "2026-08-11",
       "reason": "other_event:typhoon-dolphin-shanghai-ningbo-2026"
      }
     ]
    }
   ]
  },
  {
   "id": "german-seaport-warning-strikes-2026",
   "url_year": 2026,
   "title": "Ver.di warning strikes halt container handling at German seaports",
   "event_type": "labour-action",
   "status": "ongoing",
   "start_date": "2026-08-17",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-08-18",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 2,
   "severity_basis": "Two warning strikes, 24 hours from the night shift of 2026-08-17 and 48 hours from the late shift of 2026-09-02, largely stopped container handling at Hamburg, a port-wide stoppage of 24 hours to 7 days.",
   "scope": "regional",
   "entities": {
    "ports": [
     "hamburg",
     "bremerhaven",
     "wilhelmshaven"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "de"
    ],
    "terminals": [
     "HHLA Altenwerder",
     "HHLA Burchardkai",
     "HHLA Tollerort",
     "Eurogate Container Terminal Hamburg"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "ver.di",
    "Central Association of German Seaport Operators (ZDS)",
    "HHLA",
    "Eurogate"
   ],
   "summary": "Workers at six German seaports, Hamburg, Bremerhaven, Wilhelmshaven, Bremen, Emden and Brake, held a 24-hour warning strike from the night shift of 2026-08-17 (17 August 2026), the first in a wage dispute between the ver.di union and the ZDS employers' association covering about 11,000 workers. Eurogate said no cargo could be handled at its Hamburg terminal for the period, and HHLA reported delays at its Hamburg terminals. A second warning strike, lasting 48 hours in Hamburg, began with the late shift on 2026-09-02 (2 September 2026) after members rejected an employer offer. Employers then tabled a 12-month proposal, put to a union consultation running to 2026-09-14, with indefinite action possible if it was rejected. The outcome of that vote was not found at the time of drafting.",
   "timeline": [
    {
     "date": "2026-08-17",
     "date_precision": "day",
     "text": "Ver.di begins a 24-hour warning strike at six German seaports,, with night shifts at Hamburg, Bremerhaven and Wilhelmshaven stopping work.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-08-18",
     "date_precision": "day",
     "text": "Operations at Hamburg's main container terminals are reported largely halted, and inland rail and truck services warn of delays and possible cancellations.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-09-02",
     "date_precision": "day",
     "text": "A second, 48-hour warning strike starts with the late shift at Hamburg, Bremerhaven, Bremen, Wilhelmshaven, Emden and Brake after workers rejected an employer offer of 5.1 percent over 18 months.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2026-09-09",
     "date_precision": "day",
     "text": "After a fourth negotiating round, employers offer a 12-month agreement with a 3.4 percent retroactive increase, which ver.di puts to its members in a consultation running until 2026-09-14.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "The union called warning strikes after wage talks with the seaport employers' association stalled. Ver.di sought an 8.2 percent hourly rise on a 12-month term, and employers had offered 5.1 percent over 18 months.",
    "attributed_by": "ver.di and ZDS, as reported by trade press",
    "source_ids": [
     "s2",
     "s3",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "hamburg"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "bremerhaven"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "hamburg"
    }
   ],
   "sources": [
    {
     "id": "s2",
     "url": "https://www.worldcargonews.com/news/2026/08/german-port-workers-begin-24-hour-warning-strike-at-six-ports/",
     "publisher": "WorldCargo News",
     "title": "German port workers begin 24-hour warning strike at six ports",
     "published_date": "2026-08-18",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171744/https://www.worldcargonews.com/news/2026/08/german-port-workers-begin-24-hour-warning-strike-at-six-ports/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.worldcargonews.com/news/2026/09/german-ports-disrupted-by-strikes-as-dutch-dockworkers-prepare-to-walk-out/",
     "publisher": "WorldCargo News",
     "title": "German ports disrupted by strikes as Dutch dockworkers prepare to walk out",
     "published_date": "2026-09-03",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260908232047/https://www.worldcargonews.com/news/2026/09/german-ports-disrupted-by-strikes-as-dutch-dockworkers-prepare-to-walk-out/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://container-news.com/german-port-workers-weigh-new-wage-offer-as-indefinite-strikes-loom/",
     "publisher": "Container News",
     "title": "German port workers weigh new wage offer as indefinite strikes loom",
     "published_date": "2026-09-10",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920172100/https://container-news.com/german-port-workers-weigh-new-wage-offer-as-indefinite-strikes-loom/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Dates and scope are consistent across three trade outlets that quote Eurogate and HHLA advisories, but no ver.di or ZDS statement could be retrieved directly, and the result of the consultation ending 2026-09-14 was not found, so the status is unresolved."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/german-seaport-warning-strikes-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "hamburg",
     "comparison": "year_ago",
     "window_start": "2025-08-18",
     "window_end": "2025-09-19",
     "window_days": 33,
     "provisional": true,
     "baseline_start": "2025-06-16",
     "baseline_end": "2025-08-10",
     "baseline_days": 56,
     "baseline_value": 9.878787878787879,
     "observed_value": 9.666666666666666,
     "abs_change": -0.21212121212121282,
     "delta_pct": -2.147239263803688,
     "z_score": -0.0670786170338747,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:6be9a054a07f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "bremerhaven",
     "comparison": "year_ago",
     "window_start": "2025-08-18",
     "window_end": "2025-09-19",
     "window_days": 33,
     "provisional": true,
     "baseline_start": "2025-06-16",
     "baseline_end": "2025-08-10",
     "baseline_days": 56,
     "baseline_value": 12.924242424242424,
     "observed_value": 12.787878787878787,
     "abs_change": -0.1363636363636367,
     "delta_pct": -1.0550996483001198,
     "z_score": -0.03782046792444743,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:25368abe6f1a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "hamburg",
     "comparison": "year_ago",
     "window_start": "2025-08-18",
     "window_end": "2025-09-19",
     "window_days": 33,
     "provisional": true,
     "baseline_start": "2025-06-16",
     "baseline_end": "2025-08-10",
     "baseline_days": 56,
     "baseline_value": 17.257575757575758,
     "observed_value": 16.939393939393938,
     "abs_change": -0.3181818181818201,
     "delta_pct": -1.8437225636523378,
     "z_score": -0.07606000241218869,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:9cc3b66b9b35",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "hamburg",
     "comparison": "primary",
     "window_start": "2026-08-17",
     "window_end": "2026-09-11",
     "window_days": 26,
     "provisional": true,
     "baseline_start": "2026-06-15",
     "baseline_end": "2026-08-09",
     "baseline_days": 56,
     "baseline_value": 9.807692307692308,
     "observed_value": 9.346153846153847,
     "abs_change": -0.4615384615384617,
     "delta_pct": -4.7058823529411775,
     "z_score": -0.14595127662315596,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:04dacdf04a33",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "bremerhaven",
     "comparison": "primary",
     "window_start": "2026-08-17",
     "window_end": "2026-09-11",
     "window_days": 26,
     "provisional": true,
     "baseline_start": "2026-06-15",
     "baseline_end": "2026-08-09",
     "baseline_days": 56,
     "baseline_value": 12.826923076923077,
     "observed_value": 12.153846153846153,
     "abs_change": -0.6730769230769234,
     "delta_pct": -5.24737631184408,
     "z_score": -0.18667795065272136,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:ca833e80ae0f",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "hamburg",
     "comparison": "primary",
     "window_start": "2026-08-17",
     "window_end": "2026-09-11",
     "window_days": 26,
     "provisional": true,
     "baseline_start": "2026-06-15",
     "baseline_end": "2026-08-09",
     "baseline_days": 56,
     "baseline_value": 16.307692307692307,
     "observed_value": 16.46153846153846,
     "abs_change": 0.1538461538461533,
     "delta_pct": 0.943396226415091,
     "z_score": 0.03787430491671776,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:7b2dc6885c3f",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "hamburg",
     "comparison": "primary",
     "window_start": "2026-08-17",
     "window_end": "2026-09-18",
     "window_days": 33,
     "provisional": true,
     "baseline_start": "2026-06-15",
     "baseline_end": "2026-08-09",
     "baseline_days": 56,
     "baseline_value": 9.803030303030303,
     "observed_value": 9.030303030303031,
     "abs_change": -0.7727272727272716,
     "delta_pct": -7.882534775888707,
     "z_score": -0.2443578191948293,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:16ba884f4f0d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "bremerhaven",
     "comparison": "primary",
     "window_start": "2026-08-17",
     "window_end": "2026-09-18",
     "window_days": 33,
     "provisional": true,
     "baseline_start": "2026-06-15",
     "baseline_end": "2026-08-09",
     "baseline_days": 56,
     "baseline_value": 12.787878787878787,
     "observed_value": 12.121212121212121,
     "abs_change": -0.6666666666666661,
     "delta_pct": -5.2132701421800896,
     "z_score": -0.18490006540840973,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:ef02c2b95568",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "hamburg",
     "comparison": "primary",
     "window_start": "2026-08-17",
     "window_end": "2026-09-18",
     "window_days": 33,
     "provisional": true,
     "baseline_start": "2026-06-15",
     "baseline_end": "2026-08-09",
     "baseline_days": 56,
     "baseline_value": 16.28787878787879,
     "observed_value": 16.454545454545453,
     "abs_change": 0.1666666666666643,
     "delta_pct": 1.0232558139534738,
     "z_score": 0.041030496993110906,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:657942582b11",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "durban-gateway-terminal-navis-backlog-2026",
   "url_year": 2026,
   "title": "Durban Gateway Terminal backlog follows terminal operating system cutover",
   "event_type": "congestion-episode",
   "status": "ongoing",
   "start_date": "2026-08-15",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-08-11",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 2,
   "severity_basis": "Terminal disruption lasting over 72 hours at a major container terminal; portwatch-port-calls for Durban averaged about 5 calls a week from 2026-08-17 against about 6.7 in June and July.",
   "scope": "terminal",
   "entities": {
    "ports": [
     "durban"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "za"
    ],
    "terminals": [
     "Durban Gateway Terminal"
    ]
   },
   "commodities": [
    "containers",
    "perishables"
   ],
   "organisations": [
    "Durban Gateway Terminal",
    "Transnet",
    "International Container Terminal Services",
    "Southern African Association of Freight Forwarders"
   ],
   "summary": "Durban Gateway Terminal, a container terminal at Durban, South Africa, began working through a growing backlog after it switched to the Navis N4 terminal operating system on 2026-08-15 (15 August 2026). The operator had told users that vessel and landside work would pause for about twelve hours during the cutover and that some delays would follow. Reports from the following two weeks describe queues of trucks waiting up to about 30 hours, ships waiting longer at anchorage, refrigerated export containers spoiling in queues, and a temporary pause on accepting reefer boxes. The operator said the system was stable by 2026-08-27 but that equipment constraints and yard congestion meant a return to normal would take time.",
   "timeline": [
    {
     "date": "2026-08-11",
     "date_precision": "day",
     "text": "A freight forwarders association relays the terminal's notice of a cutover to the new operating system, starting 18:00 on 15 August, with no vessel or landside operations for about twelve hours.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2026-08-15",
     "date_precision": "day",
     "text": "The terminal goes live on Navis N4; users must register afresh for access.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2026-08-27",
     "date_precision": "day",
     "text": "Reports describe truck queues of up to about 30 hours, longer vessel stays and spoiled refrigerated cargo. The terminal pauses acceptance of reefer boxes, says the system is stable, and says equipment limits and the backlog mean normal flow will take time.",
     "source_ids": [
      "s1",
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "The backlog followed a planned migration to a new terminal operating system, with equipment limits and yard congestion cited as further factors.",
    "attributed_by": "Durban Gateway Terminal, as reported",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "durban"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.worldcargonews.com/news/2026/08/navis-n4-rollout-leaves-durban-gateway-fighting-operational-backlog/",
     "publisher": "WorldCargo News",
     "title": "NAVIS N4 rollout leaves Durban Gateway fighting operational backlog",
     "published_date": "2026-08-27",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171701/https://www.worldcargonews.com/news/2026/08/navis-n4-rollout-leaves-durban-gateway-fighting-operational-backlog/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://agrinews.co.za/system-migration-triggers-major-backlog/",
     "publisher": "Agri News",
     "title": "System Migration Triggers Major Backlog at Durban Gateway Terminal",
     "published_date": "2026-08-27",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171732/https://agrinews.co.za/system-migration-triggers-major-backlog/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://saaff.org.za/dgt-navis-n4-go-live-update/",
     "publisher": "Southern African Association of Freight Forwarders",
     "title": "DGT Navis N4 Go-Live Update",
     "published_date": "2026-08-11",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171808/https://saaff.org.za/dgt-navis-n4-go-live-update/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The cutover date and the terminal's own notice are relayed by an industry association, and the throughput and waiting figures come from trade press without a direct terminal statement; the effect in port call counts is small and the backlog is still open."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/durban-gateway-terminal-navis-backlog-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban",
     "comparison": "year_ago",
     "window_start": "2025-08-16",
     "window_end": "2025-09-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-06-14",
     "baseline_end": "2025-08-08",
     "baseline_days": 56,
     "baseline_value": 1.7857142857142858,
     "observed_value": 2.0357142857142856,
     "abs_change": 0.24999999999999978,
     "delta_pct": null,
     "z_score": 0.17677669529663687,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:423360432d76",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "durban",
     "comparison": "year_ago",
     "window_start": "2025-08-16",
     "window_end": "2025-09-19",
     "window_days": 35,
     "provisional": true,
     "baseline_start": "2025-06-14",
     "baseline_end": "2025-08-08",
     "baseline_days": 56,
     "baseline_value": 7.5,
     "observed_value": 7.8,
     "abs_change": 0.2999999999999998,
     "delta_pct": 3.999999999999998,
     "z_score": 0.11338934190276816,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:ce5558042f18",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban",
     "comparison": "year_ago",
     "window_start": "2025-08-16",
     "window_end": "2025-09-19",
     "window_days": 35,
     "provisional": true,
     "baseline_start": "2025-06-14",
     "baseline_end": "2025-08-08",
     "baseline_days": 56,
     "baseline_value": 1.7857142857142858,
     "observed_value": 2.142857142857143,
     "abs_change": 0.357142857142857,
     "delta_pct": null,
     "z_score": 0.25253813613805265,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:25a7e3cda9e5",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "durban",
     "comparison": "year_ago",
     "window_start": "2025-08-16",
     "window_end": "2025-09-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-06-14",
     "baseline_end": "2025-08-08",
     "baseline_days": 56,
     "baseline_value": 7.5,
     "observed_value": 7.821428571428571,
     "abs_change": 0.3214285714285712,
     "delta_pct": 4.285714285714282,
     "z_score": 0.12148858061010874,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:5b6ddb8fe173",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban",
     "comparison": "primary",
     "window_start": "2026-08-15",
     "window_end": "2026-09-18",
     "window_days": 35,
     "provisional": true,
     "baseline_start": "2026-06-13",
     "baseline_end": "2026-08-07",
     "baseline_days": 56,
     "baseline_value": 1.7857142857142858,
     "observed_value": 1.4,
     "abs_change": -0.3857142857142859,
     "delta_pct": null,
     "z_score": -0.260160721512401,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:6e66e4a0309a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban",
     "comparison": "primary",
     "window_start": "2026-08-15",
     "window_end": "2026-09-11",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2026-06-13",
     "baseline_end": "2026-08-07",
     "baseline_days": 56,
     "baseline_value": 1.7142857142857142,
     "observed_value": 1.3928571428571428,
     "abs_change": -0.3214285714285714,
     "delta_pct": null,
     "z_score": -0.22728432252424738,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:65be50743a35",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "durban",
     "comparison": "primary",
     "window_start": "2026-08-15",
     "window_end": "2026-09-11",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2026-06-13",
     "baseline_end": "2026-08-07",
     "baseline_days": 56,
     "baseline_value": 6.714285714285714,
     "observed_value": 5.75,
     "abs_change": -0.9642857142857144,
     "delta_pct": -14.361702127659576,
     "z_score": -0.3644657418303262,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:4f624d3b25ab",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "durban",
     "comparison": "primary",
     "window_start": "2026-08-15",
     "window_end": "2026-09-18",
     "window_days": 35,
     "provisional": true,
     "baseline_start": "2026-06-13",
     "baseline_end": "2026-08-07",
     "baseline_days": 56,
     "baseline_value": 6.714285714285714,
     "observed_value": 5.514285714285714,
     "abs_change": -1.2000000000000002,
     "delta_pct": -17.872340425531917,
     "z_score": -0.4535573676110726,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:1fc9960d2ad9",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "buenaventura-earthquake-terminal-suspension-2026",
   "url_year": 2026,
   "title": "Earthquake suspends container terminals at Colombia's Buenaventura port",
   "event_type": "terminal-closure",
   "status": "ongoing",
   "start_date": "2026-08-10",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-08-11",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 2,
   "severity_basis": "Terminal operations were suspended from 2026-08-10 and restarted only in phases from 2026-08-12, with the main inland corridor still impaired on 2026-08-14; this is an editor judgment because no port series covers Buenaventura.",
   "scope": "port",
   "entities": {
    "ports": [
     "buenaventura"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "co"
    ],
    "terminals": [
     "TCBuen (APM Terminals)",
     "SPRBUN",
     "Aguadulce"
    ]
   },
   "commodities": [
    "containers",
    "perishables",
    "breakbulk"
   ],
   "organisations": [
    "APM Terminals Buenaventura",
    "Sociedad Portuaria Regional de Buenaventura (SPRBUN)",
    "Maersk",
    "CMA CGM",
    "DIMAR"
   ],
   "summary": "A magnitude 7.4 earthquake struck western Colombia at about 07:34 local time on 2026-08-10 (10 August 2026), with its epicentre near San Jose del Palmar in Choco. Container operations at Buenaventura, Colombia's main Pacific gateway, were suspended while terminals inspected damage, and road closures cut the port off from the interior. Maersk skipped one call and left a vessel part worked. Some operators restarted in stages from 2026-08-12, but by 2026-08-14 yard space was very tight, staff were short and the Cali to Buenaventura corridor was not fully restored. Colombia's Atlantic coast ports were reported unaffected. No recovery date had been reported by the last source retrieved.",
   "timeline": [
    {
     "date": "2026-08-10",
     "date_precision": "day",
     "text": "The earthquake strikes, APM Terminals Buenaventura activates its emergency protocols and evacuates precautionarily, and container terminal operations are suspended.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2026-08-11",
     "date_precision": "day",
     "text": "Maersk reports terminal operations suspended pending assessments, a vessel unable to finish cargo work and a skipped call, while road closures disrupt cargo to and from the interior.",
     "source_ids": [
      "s1",
      "s3",
      "s4"
     ]
    },
    {
     "date": "2026-08-12",
     "date_precision": "day",
     "text": "Terminal operators begin phased restarts, with the SPRBUN terminal handling container ships and ro-ro vessels after engineering inspections and APM Terminals reactivating selected activities.",
     "source_ids": [
      "s3",
      "s2"
     ]
    },
    {
     "date": "2026-08-14",
     "date_precision": "day",
     "text": "CMA CGM reports operations partly resumed under constraints, with high yard occupancy, staff shortages and the Cali to Buenaventura corridor not fully restored.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "A magnitude 7.4 earthquake damaged infrastructure and closed roads to the port, as reported by carriers and trade press.",
    "attributed_by": "Maersk, APM Terminals and CMA CGM, as reported",
    "source_ids": [
     "s1",
     "s3",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "no_effect_reason": "entity_not_covered",
   "no_effect_note": "Buenaventura has no exported PortWatch series in our data.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.worldcargonews.com/news/2026/08/earthquake-disrupts-buenaventura-port-operations/",
     "publisher": "WorldCargo News",
     "title": "Earthquake disrupts Buenaventura port operations",
     "published_date": "2026-08-12",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260819033417/https://www.worldcargonews.com/news/2026/08/earthquake-disrupts-buenaventura-port-operations/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://container-news.com/colombia-earthquake-disrupts-operations-at-buenaventura/",
     "publisher": "Container News",
     "title": "Colombia earthquake disrupts operations at Buenaventura",
     "published_date": "2026-08-14",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920173245/https://container-news.com/colombia-earthquake-disrupts-operations-at-buenaventura/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://en.portnews.ru/news/395394/",
     "publisher": "PortNews",
     "title": "Buenaventura port remains open after 7.4-magnitude Colombia earthquake",
     "published_date": "2026-08-12",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920173422/https://en.portnews.ru/news/395394/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.maersk.com/news/articles/2026/08/11/colombia-earthquake-operational-update-maersk",
     "publisher": "Maersk",
     "title": "Operational Update following Earthquake in Colombia",
     "published_date": "2026-08-11",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920173549/https://www.maersk.com/news/articles/2026/08/11/colombia-earthquake-operational-update-maersk",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Four consistent press and carrier sources, but no Colombian official or port authority statement was retrieved, the last source is dated 2026-08-14, and the recovery status since then is unknown."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/buenaventura-earthquake-terminal-suspension-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": []
  },
  {
   "id": "typhoon-dolphin-shanghai-ningbo-2026",
   "url_year": 2026,
   "title": "Typhoon Dolphin halts container terminals at Ningbo and Shanghai",
   "event_type": "weather-stoppage",
   "status": "ended",
   "start_date": "2026-08-07",
   "start_precision": "day",
   "end_date": "2026-08-11",
   "end_precision": "day",
   "first_reported": "2026-08-06",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 3,
   "severity_basis": "Measured effects at two ports; the portwatch-port-calls series records zero or near zero calls at Ningbo and Shanghai between 2026-08-07 and 2026-08-10, against daily means of about 49 and 88 in the preceding weeks.",
   "scope": "regional",
   "entities": {
    "ports": [
     "ningbo",
     "shanghai-cn",
     "shanghai-yangshan"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "cn"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Ningbo-Zhoushan Port",
    "Shanghai International Port Group",
    "China National Meteorological Center"
   ],
   "summary": "Typhoon Dolphin shut container handling at Ningbo-Zhoushan and Shanghai in early August 2026. Terminals at Ningbo suspended empty and laden container gate operations from 2026-08-07 (7 August 2026), and the Yangshan and Waigaoqiao terminals at Shanghai followed on 2026-08-08 (8 August 2026), ahead of a landfall in Zhejiang province on 2026-08-09 (9 August 2026). Ningbo terminals restarted on the afternoon of 2026-08-10 and Shanghai early on 2026-08-11. Ships had sheltered outside the anchorages and returned together, so waiting times of several days and carrier port omissions followed for weeks, and one carrier-side estimate put stranded capacity above 2.4 million TEU. Our port call series show Ningbo and Shanghai logging zero or near zero calls on the closure days.",
   "timeline": [
    {
     "date": "2026-08-07",
     "date_precision": "day",
     "text": "Ningbo-Zhoushan terminals, including Beilun, Daxie and Meishan, suspend empty container gate operations at midday and laden container gate operations in the evening as the typhoon approaches.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-08-08",
     "date_precision": "day",
     "text": "Shanghai's Yangshan and Waigaoqiao terminals suspend empty and laden container gate-in and pickup, so both major East China hubs are stopped.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2026-08-09",
     "date_precision": "day",
     "text": "Dolphin comes ashore on the Zhejiang coast; vessels bound for the two ports wait outside the anchorage areas.",
     "source_ids": [
      "s2",
      "s3"
     ]
    },
    {
     "date": "2026-08-10",
     "date_precision": "day",
     "text": "Terminal activity at Ningbo restarts on the afternoon of Monday 10 August.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-08-11",
     "date_precision": "day",
     "text": "Shanghai resumes operations early on Tuesday 11 August.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-08-12",
     "date_precision": "day",
     "text": "Vessel data show 117 ships back in the Shanghai anchorage and 60 in the Ningbo area, with congestion spreading to Southern China.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Terminal operators suspended gate and berth operations ahead of the typhoon after China's National Meteorological Center and flood control authorities issued warnings and emergency responses for Zhejiang and Fujian.",
    "attributed_by": "Terminal operators and Chinese weather authorities, as reported by logistics firms",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2026-08-11",
    "text": "Ningbo terminals resumed on the afternoon of 2026-08-10 and Shanghai early on 2026-08-11. A backlog of vessels and cargo persisted for weeks afterwards.",
    "source_ids": [
     "s2"
    ]
   },
   "related_events": [
    "typhoon-saudel-ningbo-shanghai-2026"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ningbo"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-cn"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-yangshan"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ningbo"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-cn"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://worldwidelogisticsltd.com/2026/08/06/typhoon-dolphin-prompts-ningbo-zhoushan-terminal-suspensions-shanghai-under-watch/",
     "publisher": "Worldwide Logistics Group",
     "title": "Typhoon Dolphin Prompts Ningbo-Zhoushan Terminal Suspensions; Shanghai Under Watch",
     "published_date": "2026-08-06",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171244/https://worldwidelogisticsltd.com/2026/08/06/typhoon-dolphin-prompts-ningbo-zhoushan-terminal-suspensions-shanghai-under-watch/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://mykn.kuehne-nagel.com/news/article/typhoon-dolphin-in-china-leaves-more-than-24m",
     "publisher": "Kuehne+Nagel",
     "title": "Typhoon Dolphin in China leaves more than 2.4m TEU stranded",
     "published_date": "2026-08-13",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171313/https://mykn.kuehne-nagel.com/news/article/typhoon-dolphin-in-china-leaves-more-than-24m",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.valexander.com/2026/08/11/update-on-typhoon-dolphin-may-impact-ocean-freight-from-shanghai-ningbo/",
     "publisher": "V. Alexander and Co.",
     "title": "Update on Typhoon Dolphin, May Impact Ocean Freight from Shanghai and Ningbo",
     "published_date": "2026-08-11",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171500/https://www.valexander.com/2026/08/11/update-on-typhoon-dolphin-may-impact-ocean-freight-from-shanghai-ningbo/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Dates rest on freight forwarder and carrier advisories that agree with each other and with our port call series, but no statement from Ningbo-Zhoushan Port or Shanghai International Port Group was retrieved. The stranded capacity figure is a third-party estimate quoted by one source."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/typhoon-dolphin-shanghai-ningbo-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 54.4,
     "observed_value": 14.6,
     "abs_change": -39.8,
     "delta_pct": -73.16176470588235,
     "z_score": -4.8808604049397255,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:7180ac8488bf",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-cn",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 91.9,
     "observed_value": 19.8,
     "abs_change": -72.10000000000001,
     "delta_pct": -78.45484221980414,
     "z_score": -7.476421719006367,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "3:19b166d14739",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 33.5,
     "observed_value": 10.6,
     "abs_change": -22.9,
     "delta_pct": -68.35820895522389,
     "z_score": -4.048186322292985,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:708a7e73a57c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-cn",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 33.7,
     "observed_value": 9.6,
     "abs_change": -24.1,
     "delta_pct": -71.513353115727,
     "z_score": -4.1952715085323184,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "2:af3c6aae3365",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 33.5,
     "observed_value": 10.6,
     "abs_change": -22.9,
     "delta_pct": -68.35820895522389,
     "z_score": -4.048186322292985,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:7508a3bd37b4",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-yangshan",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 12.9,
     "observed_value": 3.6,
     "abs_change": -9.3,
     "delta_pct": -72.09302325581396,
     "z_score": -2.5793559124473155,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:337048d92958",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-cn",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 91.8,
     "observed_value": 19.8,
     "abs_change": -72,
     "delta_pct": -78.43137254901961,
     "z_score": -7.466052202059062,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "2:a17779db9c52",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ningbo",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 54.4,
     "observed_value": 14.6,
     "abs_change": -39.8,
     "delta_pct": -73.16176470588235,
     "z_score": -4.8808604049397255,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:55932a20309e",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "shanghai-yangshan",
     "comparison": "primary",
     "window_start": "2026-08-07",
     "window_end": "2026-08-11",
     "window_days": 5,
     "provisional": false,
     "baseline_start": "2026-06-05",
     "baseline_end": "2026-07-30",
     "baseline_days": 56,
     "baseline_value": 12.9,
     "observed_value": 3.6,
     "abs_change": -9.3,
     "delta_pct": -72.09302325581396,
     "z_score": -2.5793559124473155,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:af23abb55a91",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "rhine-low-water-kaub-2026",
   "url_year": 2026,
   "title": "Record low water at Kaub restricts Rhine barge shipping",
   "event_type": "drought-restriction",
   "status": "ongoing",
   "start_date": "2026-08-01",
   "start_precision": "month",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-08-11",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 3,
   "severity_basis": "Barge passage at the Rhine's shallowest point, Kaub, was reported effectively blocked in mid-August 2026, a restriction on the main inland route to Rotterdam; no measured port series covers inland barge traffic, so this is an editor judgment.",
   "scope": "regional",
   "entities": {
    "ports": [
     "rotterdam"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "de",
     "nl"
    ]
   },
   "commodities": [
    "chemicals",
    "refined-products",
    "coal",
    "containers",
    "grain"
   ],
   "organisations": [
    "Maersk",
    "Bundesverband der Deutschen Binnenschifffahrt (BDB)"
   ],
   "summary": "Low water on the Rhine fell to the lowest level since records began in 1880 at the Kaub gauge, the river's shallowest point, in August 2026, according to trade reporting on 2026-08-11 (11 August 2026). A shipping broker said the river was effectively impassable at Kaub in both directions, barges that did sail carried much lighter loads, and chemical, steel and energy companies moved freight to rail and road. Forecasters said sustained rain would be needed and the problem could last into October. On 2026-08-12 Maersk told customers that barge transport might become operationally infeasible and published low water surcharges. We found no source giving the state of the river after mid-August, so the end date is open.",
   "timeline": [
    {
     "date": "2026-08-11",
     "date_precision": "day",
     "text": "Levels at Kaub are reported at the lowest since records began in 1880, with a shipping broker saying barges cannot pass in either direction and companies shifting cargo to rail and road, and forecasters saying the problem could last into October.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-08-12",
     "date_precision": "day",
     "text": "Maersk warns that barge transport on the Rhine may become operationally unfeasible and publishes low water surcharges and a level below which loading is not guaranteed.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Bloomberg reporting links the low river level to dry weather and a heat wave across Europe, with weeks of sustained rain needed for recovery.",
    "attributed_by": "Bloomberg, as reported by gCaptain",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "no_effect_reason": "entity_not_covered",
   "no_effect_note": "The disruption is to inland barge traffic on the Rhine, which is not measured by the port call and chokepoint series in our data. Rotterdam sea port calls are not a measure of barge movements.",
   "sources": [
    {
     "id": "s1",
     "url": "https://gcaptain.com/rhine-river-hits-record-low-deepening-shipping-crisis/",
     "publisher": "gCaptain (Bloomberg)",
     "title": "Rhine River Hits Record Low, Deepening Shipping Crisis",
     "published_date": "2026-08-11",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260917162806/https://gcaptain.com/rhine-river-hits-record-low-deepening-shipping-crisis/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.maersk.com/news/articles/2026/08/12/rhine-river-low-water-surcharge-benelux",
     "publisher": "Maersk",
     "title": "Rhine River - Low Water Surcharge and Benelux update on Low Water Conditions",
     "published_date": "2026-08-12",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920172907/https://www.maersk.com/news/articles/2026/08/12/rhine-river-low-water-surcharge-benelux",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The record low and the mid-August stoppage rest on one Bloomberg report (syndicated) and a carrier notice; no WSV publication was retrieved and a second archived news source on the low point and later recovery could not be obtained. The start date is approximate and the end is open."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/rhine-low-water-kaub-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": []
  },
  {
   "id": "houthi-embargo-bab-el-mandeb-2026",
   "url_year": 2026,
   "title": "Houthi embargo on Saudi shipping and attacks at Bab el-Mandeb",
   "event_type": "security-incident",
   "status": "ongoing",
   "start_date": "2026-07-20",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-07-20",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 3,
   "severity_basis": "A restriction at a chokepoint. Measured on top of the Red Sea diversion (wfm-effect-1.1): PortWatch tanker transits at Bab el-Mandeb 8.5 a day from 2026-07-20 to 2026-09-13 against 13.7 expected, down 38 percent; total transits down 23 percent, below the 25 percent needed for level 4.",
   "scope": "chokepoint",
   "entities": {
    "ports": [],
    "chokepoints": [
     "bab-el-mandeb-strait"
    ],
    "lanes": [],
    "countries": [
     "ye",
     "sa"
    ]
   },
   "commodities": [
    "crude-oil",
    "refined-products"
   ],
   "organisations": [
    "Ansar Allah (Houthis)",
    "Joint Maritime Information Center",
    "EUNAVFOR Aspides"
   ],
   "summary": "On 2026-07-20 (20 July 2026) Yemen's Houthis declared a maritime embargo on Saudi Arabia, prohibiting vessels loading or discharging at Saudi ports, days after an attack on Sanaa airport. Two days later a US Navy-led maritime information centre warned that the group had positioned missiles and drones near the Bab el-Mandeb Strait, and ship trackers saw four tankers with Saudi cargo turn back. On 2026-08-11 the Egyptian-owned Tihamah was hit in the strait, in what Al Jazeera described as the first shipping deaths tied to the Houthis since the Iran war began. IMF PortWatch tanker transits fell from about 14 a day to about 9. The sources are press reports only.",
   "timeline": [
    {
     "date": "2026-07-20",
     "date_precision": "day",
     "text": "The Houthis declare a maritime embargo on Saudi Arabia with immediate effect.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-07-22",
     "date_precision": "day",
     "text": "A maritime security centre warns that Houthi missiles and drones are in place near the strait, and tankers with Saudi cargo turn back.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-08-11",
     "date_precision": "day",
     "text": "A cargo ship named Tihamah is struck by missiles in Bab el-Mandeb, and a second missile hits the rescue effort, according to Yemen government statements reported by Al Jazeera.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "The Houthis said the embargo answered what they call a Saudi siege of their ports and airports; the announcement followed an attack on Sanaa airport the week before, and the wider US and Israel war with Iran was ongoing.",
    "attributed_by": "Houthi statement as reported by Al Jazeera",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [
    "strait-of-hormuz-closure-2026"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait"
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "bab-el-mandeb-strait"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.aljazeera.com/news/2026/7/20/yemens-houthis-declare-naval-blockade-of-saudi-arabia-what-to-know",
     "publisher": "Al Jazeera",
     "title": "Yemen's Houthis declare naval blockade of Saudi Arabia: What to know",
     "published_date": "2026-07-20",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920172520/https://www.aljazeera.com/news/2026/7/20/yemens-houthis-declare-naval-blockade-of-saudi-arabia-what-to-know",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.cnbc.com/2026/07/22/houthis-red-sea-bab-el-mandeb-saudi-oil-iran.html",
     "publisher": "CNBC",
     "title": "Houthis ready to attack ships in southern Red Sea, naval group says",
     "published_date": "2026-07-22",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920065531/https://www.cnbc.com/2026/07/22/houthis-red-sea-bab-el-mandeb-saudi-oil-iran.html",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.aljazeera.com/news/2026/8/12/six-killed-in-houthi-attack-on-bab-al-mandeb-ship-yemens-government-says",
     "publisher": "Al Jazeera",
     "title": "Six killed in Houthi attack on Bab al-Mandeb ship, Yemen's government says",
     "published_date": "2026-08-12",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920172632/https://www.aljazeera.com/news/2026/8/12/six-killed-in-houthi-attack-on-bab-al-mandeb-ship-yemens-government-says",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://portwatch.imf.org/",
     "publisher": "IMF PortWatch",
     "title": "Daily chokepoint transit calls, Bab el-Mandeb Strait",
     "published_date": null,
     "accessed_date": "2026-09-20",
     "archive_url": null,
     "type": "data"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Two outlets agree on the embargo and the warnings, but no official maritime authority notice could be retrieved, so all narrative sources are press. The attack on the Tihamah rests on statements by the Yemeni government. Casualties are left out because no official source was read. The transit decline is measured in PortWatch but its cause is not established by the data."
   },
   "corrections": [
    {
     "date": "2026-09-20",
     "what_changed": "Removed the two effect targets and set no_effect_reason to insufficient_baseline. Reworded the severity basis to say it is a plain comparison of PortWatch averages, not a method figure.",
     "why": "The effect engine could not build a baseline because the ongoing Red Sea diversion event covers the same chokepoint for the whole baseline period, so the effect section would have read as pending indefinitely."
    },
    {
     "date": "2026-09-20",
     "what_changed": "Restored the two effect targets and removed no_effect_reason. The severity basis now cites the method figures instead of a plain comparison.",
     "why": "The effect method was amended the same day (wfm-effect-1.1, ambient events), so a baseline can now be built for an event inside the long-running Red Sea diversion. The figures are measured on top of that disruption and the page says so."
    },
    {
     "date": "2026-09-20",
     "what_changed": "Lowered severity from 4 to 3 and reworded the severity basis.",
     "why": "The measured fall in total transits (23 percent) is below the 25 percent the rubric needs for level 4, and the standardised scores are weak, so the record is rated on the level 3 criterion of a restriction at a chokepoint."
    }
   ],
   "url": "https://worldfreightmonitor.com/events/2026/houthi-embargo-bab-el-mandeb-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-21",
     "window_end": "2025-09-14",
     "window_days": 56,
     "provisional": true,
     "baseline_start": "2025-05-19",
     "baseline_end": "2025-07-13",
     "baseline_days": 56,
     "baseline_value": 32,
     "observed_value": 34.142857142857146,
     "abs_change": 2.142857142857146,
     "delta_pct": 6.696428571428581,
     "z_score": 0.34007937452601433,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-20T19:50:30Z",
     "data_revision": "1:12c8fa5e5755",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-21",
     "window_end": "2025-09-21",
     "window_days": 63,
     "provisional": true,
     "baseline_start": "2025-05-19",
     "baseline_end": "2025-07-13",
     "baseline_days": 56,
     "baseline_value": 32,
     "observed_value": 34.15873015873016,
     "abs_change": 2.158730158730158,
     "delta_pct": 6.746031746031744,
     "z_score": 0.3425984810039848,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:f645439f8698",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-21",
     "window_end": "2025-09-21",
     "window_days": 63,
     "provisional": true,
     "baseline_start": "2025-05-19",
     "baseline_end": "2025-07-13",
     "baseline_days": 56,
     "baseline_value": 11.357142857142858,
     "observed_value": 10.920634920634921,
     "abs_change": -0.43650793650793673,
     "delta_pct": -3.843466107617053,
     "z_score": -0.131612094855373,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:381d379fbe8a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-21",
     "window_end": "2025-09-14",
     "window_days": 56,
     "provisional": true,
     "baseline_start": "2025-05-19",
     "baseline_end": "2025-07-13",
     "baseline_days": 56,
     "baseline_value": 11.357142857142858,
     "observed_value": 10.946428571428571,
     "abs_change": -0.4107142857142865,
     "delta_pct": -3.616352201257868,
     "z_score": -0.12383501652301004,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-20T19:50:30Z",
     "data_revision": "1:0a82d319a1ae",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "primary",
     "window_start": "2026-07-20",
     "window_end": "2026-09-13",
     "window_days": 56,
     "provisional": true,
     "baseline_start": "2026-05-18",
     "baseline_end": "2026-07-12",
     "baseline_days": 56,
     "baseline_value": 13.714285714285714,
     "observed_value": 8.482142857142858,
     "abs_change": -5.232142857142856,
     "delta_pct": -38.15104166666666,
     "z_score": -1.4240089179275222,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-20T19:50:30Z",
     "data_revision": "1:9ddb07faffb5",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "primary",
     "window_start": "2026-07-20",
     "window_end": "2026-09-20",
     "window_days": 63,
     "provisional": true,
     "baseline_start": "2026-05-18",
     "baseline_end": "2026-07-12",
     "baseline_days": 56,
     "baseline_value": 13.714285714285714,
     "observed_value": 8.26984126984127,
     "abs_change": -5.444444444444443,
     "delta_pct": -39.69907407407407,
     "z_score": -1.4817900913132804,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:d5d026c34b8d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "primary",
     "window_start": "2026-07-20",
     "window_end": "2026-09-20",
     "window_days": 63,
     "provisional": true,
     "baseline_start": "2026-05-18",
     "baseline_end": "2026-07-12",
     "baseline_days": 56,
     "baseline_value": 36.285714285714285,
     "observed_value": 27.444444444444443,
     "abs_change": -8.841269841269842,
     "delta_pct": -24.36570428696413,
     "z_score": -1.4534958083981588,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:bb8c2268815b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "primary",
     "window_start": "2026-07-20",
     "window_end": "2026-09-13",
     "window_days": 56,
     "provisional": true,
     "baseline_start": "2026-05-18",
     "baseline_end": "2026-07-12",
     "baseline_days": 56,
     "baseline_value": 36.285714285714285,
     "observed_value": 27.785714285714285,
     "abs_change": -8.5,
     "delta_pct": -23.4251968503937,
     "z_score": -1.397391392095537,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-20T19:50:30Z",
     "data_revision": "1:0fb590e0cfd0",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "kerch-strait-closure-2026",
   "url_year": 2026,
   "title": "Russia halts commercial shipping through the Kerch Strait",
   "event_type": "security-incident",
   "status": "ongoing",
   "start_date": "2026-07-10",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-07-10",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 5,
   "severity_basis": "IMF PortWatch transits at the Kerch Strait fell from about 11 a day in June 2026 to a few a day in the days after 2026-07-10 and to under 1 a day on average from 2026-07-15 to 2026-09-13, a reduction above 50% for over 30 days.",
   "scope": "chokepoint",
   "entities": {
    "ports": [
     "kerch"
    ],
    "chokepoints": [
     "kerch-strait"
    ],
    "lanes": [],
    "countries": [
     "ru",
     "ua"
    ]
   },
   "commodities": [
    "grain",
    "crude-oil",
    "refined-products"
   ],
   "organisations": [
    "Border Service of the Federal Security Service of Russia"
   ],
   "summary": "On 2026-07-10 (10 July 2026) at 18:10 local time, Russia's border guards told shipping companies that requests to pass through the Kerch Strait would no longer be accepted, and gave no date for lifting the halt. The Don-Azov Channel, the other route into the Sea of Azov, was closed as well. The notice followed Ukrainian drone strikes on at least 13 vessels in the Sea of Azov, including tankers. The Sea of Azov carries up to a quarter of Russia's wheat exports, and European wheat futures rose about 4% on the news. IMF PortWatch counted about 11 transits a day through the strait in June, 2 to 6 a day in the days after 2026-07-10, and under 1 a day on average from 2026-07-15 to 2026-09-13. No source reviewed reports the halt lifted.",
   "timeline": [
    {
     "date": "2026-07-10",
     "date_precision": "day",
     "text": "Russian border guards tell shipping companies at 18:10 local time that passage requests through the Kerch Strait will not be accepted, with no reopening date, after Ukrainian drone strikes on vessels in the Sea of Azov.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2026-07-10",
     "date_precision": "day",
     "text": "Commercial navigation through the Don-Azov Channel is suspended as well, and European wheat futures rise about 4%.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2026-07-15",
     "date_precision": "day",
     "text": "IMF PortWatch records 1 transit through the strait, against about 11 a day in June, and no more than 3 a day on any day from 2026-07-15 to 2026-09-13.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2026-09-13",
     "date_precision": "day",
     "text": "The latest IMF PortWatch day in this archive shows no transits through the strait.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Russia's border guards suspended passage after Ukrainian drone strikes on Russian vessels in the Sea of Azov, including tankers.",
    "attributed_by": "Russian border guards, as reported by Euromaidan Press and Kyiv Post",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "kerch-strait"
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "kerch-strait"
    },
    {
     "series_id": "portwatch-chokepoint-transits-dry-bulk",
     "entity_id": "kerch-strait"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://euromaidanpress.com/2026/07/11/russia-halts-don-azov-channel-shipping-closes-kerch-strait-after-ukrainian-tanker-strikes/",
     "publisher": "Euromaidan Press",
     "title": "Russia halts Don-Azov Channel shipping, closes Kerch Strait after Ukrainian tanker strikes",
     "published_date": "2026-07-11",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260714134552/https://euromaidanpress.com/2026/07/11/russia-halts-don-azov-channel-shipping-closes-kerch-strait-after-ukrainian-tanker-strikes/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.kyivpost.com/post/80062",
     "publisher": "Kyiv Post",
     "title": "Russia Halts Azov Sea Shipping as Ukrainian Drone Campaign Targets Tanker Fleet",
     "published_date": "2026-07-11",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260712054958/https://www.kyivpost.com/post/80062",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://portwatch.imf.org/",
     "publisher": "IMF PortWatch",
     "title": "Daily chokepoint transit calls, Kerch Strait",
     "published_date": null,
     "accessed_date": "2026-09-20",
     "archive_url": null,
     "type": "data"
    }
   ],
   "confidence": {
    "level": "low",
    "reason": "Only two press reports were retrievable and both are Ukrainian outlets covering a war in which both sides make claims; the halt notice itself and any Russian official statement could not be retrieved. The closure is corroborated by IMF PortWatch transit counts, but the number of vessels struck differs between reports and the current status rests on the data alone."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/kerch-strait-closure-2026/",
   "approved_at": "2026-09-20T06:57:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-dry-bulk",
     "entity_id": "kerch-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-11",
     "window_end": "2025-09-14",
     "window_days": 66,
     "provisional": true,
     "baseline_start": "2025-05-09",
     "baseline_end": "2025-07-03",
     "baseline_days": 56,
     "baseline_value": 1.7727272727272727,
     "observed_value": 3.878787878787879,
     "abs_change": 2.1060606060606064,
     "delta_pct": null,
     "z_score": 1.4205184176855565,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:57:16Z",
     "data_revision": "1:db668e5d8cd9",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "kerch-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-11",
     "window_end": "2025-09-14",
     "window_days": 66,
     "provisional": true,
     "baseline_start": "2025-05-09",
     "baseline_end": "2025-07-03",
     "baseline_days": 56,
     "baseline_value": 4.28030303030303,
     "observed_value": 4.606060606060606,
     "abs_change": 0.32575757575757613,
     "delta_pct": 7.610619469026558,
     "z_score": 0.14648031645198784,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:57:16Z",
     "data_revision": "1:6548174eec91",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "kerch-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-11",
     "window_end": "2025-09-14",
     "window_days": 66,
     "provisional": true,
     "baseline_start": "2025-05-09",
     "baseline_end": "2025-07-03",
     "baseline_days": 56,
     "baseline_value": 12.848484848484848,
     "observed_value": 17.40909090909091,
     "abs_change": 4.560606060606062,
     "delta_pct": 35.49528301886794,
     "z_score": 1.230434658196698,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:57:16Z",
     "data_revision": "1:def4f105ed55",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "kerch-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-11",
     "window_end": "2025-09-21",
     "window_days": 73,
     "provisional": true,
     "baseline_start": "2025-05-09",
     "baseline_end": "2025-07-03",
     "baseline_days": 56,
     "baseline_value": 4.280821917808219,
     "observed_value": 4.712328767123288,
     "abs_change": 0.43150684931506866,
     "delta_pct": 10.080000000000004,
     "z_score": 0.19403158834258216,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:fbb1dc8f127b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "kerch-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-11",
     "window_end": "2025-09-21",
     "window_days": 73,
     "provisional": true,
     "baseline_start": "2025-05-09",
     "baseline_end": "2025-07-03",
     "baseline_days": 56,
     "baseline_value": 12.849315068493151,
     "observed_value": 18.205479452054796,
     "abs_change": 5.356164383561644,
     "delta_pct": 41.68443496801706,
     "z_score": 1.445073353179993,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:cc9c48d22314",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-dry-bulk",
     "entity_id": "kerch-strait",
     "comparison": "year_ago",
     "window_start": "2025-07-11",
     "window_end": "2025-09-21",
     "window_days": 73,
     "provisional": true,
     "baseline_start": "2025-05-09",
     "baseline_end": "2025-07-03",
     "baseline_days": 56,
     "baseline_value": 1.773972602739726,
     "observed_value": 3.958904109589041,
     "abs_change": 2.184931506849315,
     "delta_pct": null,
     "z_score": 1.4737161114591362,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:576c26af3184",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "kerch-strait",
     "comparison": "primary",
     "window_start": "2026-07-10",
     "window_end": "2026-09-20",
     "window_days": 73,
     "provisional": true,
     "baseline_start": "2026-05-08",
     "baseline_end": "2026-07-02",
     "baseline_days": 56,
     "baseline_value": 1.8493150684931507,
     "observed_value": 0.0547945205479452,
     "abs_change": -1.7945205479452055,
     "delta_pct": null,
     "z_score": -1.2103875272799174,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:7c7fd16ecd6b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "kerch-strait",
     "comparison": "primary",
     "window_start": "2026-07-10",
     "window_end": "2026-09-13",
     "window_days": 66,
     "provisional": true,
     "baseline_start": "2026-05-08",
     "baseline_end": "2026-07-02",
     "baseline_days": 56,
     "baseline_value": 10.924242424242424,
     "observed_value": 0.6060606060606061,
     "abs_change": -10.318181818181818,
     "delta_pct": -94.45214979195562,
     "z_score": -2.3198394303210166,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:57:16Z",
     "data_revision": "1:609145e02626",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "kerch-strait",
     "comparison": "primary",
     "window_start": "2026-07-10",
     "window_end": "2026-09-13",
     "window_days": 66,
     "provisional": true,
     "baseline_start": "2026-05-08",
     "baseline_end": "2026-07-02",
     "baseline_days": 56,
     "baseline_value": 1.8484848484848484,
     "observed_value": 0.06060606060606061,
     "abs_change": -1.7878787878787878,
     "delta_pct": null,
     "z_score": -1.2059077214884582,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:57:16Z",
     "data_revision": "1:6e40f9a9d64e",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-dry-bulk",
     "entity_id": "kerch-strait",
     "comparison": "primary",
     "window_start": "2026-07-10",
     "window_end": "2026-09-13",
     "window_days": 66,
     "provisional": true,
     "baseline_start": "2026-05-08",
     "baseline_end": "2026-07-02",
     "baseline_days": 56,
     "baseline_value": 1.5075757575757576,
     "observed_value": 0.16666666666666666,
     "abs_change": -1.3409090909090908,
     "delta_pct": null,
     "z_score": -0.9044307911163436,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:57:16Z",
     "data_revision": "1:dcd0be6320b7",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "kerch-strait",
     "comparison": "primary",
     "window_start": "2026-07-10",
     "window_end": "2026-09-20",
     "window_days": 73,
     "provisional": true,
     "baseline_start": "2026-05-08",
     "baseline_end": "2026-07-02",
     "baseline_days": 56,
     "baseline_value": 10.924657534246576,
     "observed_value": 0.547945205479452,
     "abs_change": -10.376712328767123,
     "delta_pct": -94.98432601880877,
     "z_score": -2.3329988598334284,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:13c14114e345",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-dry-bulk",
     "entity_id": "kerch-strait",
     "comparison": "primary",
     "window_start": "2026-07-10",
     "window_end": "2026-09-20",
     "window_days": 73,
     "provisional": true,
     "baseline_start": "2026-05-08",
     "baseline_end": "2026-07-02",
     "baseline_days": 56,
     "baseline_value": 1.5068493150684932,
     "observed_value": 0.1506849315068493,
     "abs_change": -1.356164383561644,
     "delta_pct": null,
     "z_score": -0.9147203450436018,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:ddf338e03579",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "panama-canal-draft-and-slot-cuts-2026",
   "url_year": 2026,
   "title": "Panama Canal cuts Neopanamax draft and daily transit slots",
   "event_type": "drought-restriction",
   "status": "ongoing",
   "start_date": "2026-07-01",
   "start_precision": "month",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-06-05",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 3,
   "severity_basis": "Any restriction at a chokepoint: the Panama Canal Authority lowered the maximum Neopanamax draft in steps from July 2026 and cut daily lock slots from 2026-09-03.",
   "scope": "chokepoint",
   "entities": {
    "ports": [],
    "chokepoints": [
     "panama-canal"
    ],
    "lanes": [],
    "countries": [
     "pa"
    ]
   },
   "commodities": [
    "containers",
    "lng",
    "lpg",
    "crude-oil"
   ],
   "organisations": [
    "Panama Canal Authority"
   ],
   "summary": "The Panama Canal Authority began cutting the maximum draft allowed in the Neopanamax locks in July 2026, citing low water in Gatun Lake and a developing El Nino. An advisory dated 2026-07-01 (1 July 2026) set 14.94 metres from 2026-07-24, then 14.78 metres from 2026-08-15; a notice of 2026-08-05 added 14.63 metres and 14.48 metres. From 2026-09-03 the canal reduced daily Neopanamax slots to nine and Panamax slots to 25, with 23 from 2026-09-15. On 2026-09-04 it postponed the 14.48 metre step and kept 14.63 metres. IMF PortWatch daily transits averaged 32.3 from May to 2026-07-23 and 29.2 from 2026-07-24 to 2026-09-02.",
   "timeline": [
    {
     "date": "2026-06-05",
     "date_precision": "day",
     "text": "Press reports the canal has announced a precautionary reduction in Neopanamax draft, a step it had said in mid-May it did not expect to need.",
     "source_ids": [
      "s5"
     ]
    },
    {
     "date": "2026-07-01",
     "date_precision": "day",
     "text": "Advisory A-22-2026 sets the maximum Neopanamax draft at 14.94 metres from 2026-07-24 and 14.78 metres from 2026-08-15.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-08-05",
     "date_precision": "day",
     "text": "The canal announces further draft steps to 14.63 metres and 14.48 metres and says they do not change the number of daily transits.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-08-20",
     "date_precision": "day",
     "text": "An advisory cuts daily Neopanamax slots to nine from 2026-09-03 and Panamax slots to 25, then 23 from 2026-09-15.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2026-09-04",
     "date_precision": "day",
     "text": "The canal postpones the 14.48 metre step and keeps the 14.63 metre limit.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The canal authority cited low water in Gatun Lake, below-expected rainfall in the watershed and a developing El Nino.",
    "attributed_by": null,
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal"
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "panama-canal"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://pancanal.com/wp-content/uploads/2026/04/ADV-22-2026-Draft-adjustment-in-the-Neopanamax-Locks.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory to Shipping A-22-2026: Draft adjustment in the Neopanamax Locks",
     "published_date": "2026-07-01",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260724093635/https://pancanal.com/wp-content/uploads/2026/04/ADV-22-2026-Draft-adjustment-in-the-Neopanamax-Locks.pdf",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://pancanal.com/en/panama-canal-announces-new-draft-adjustments-for-neopanamax-locks/",
     "publisher": "Panama Canal Authority",
     "title": "Panama Canal Announces New Draft Adjustments for Neopanamax Locks",
     "published_date": "2026-08-05",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920170948/https://pancanal.com/en/panama-canal-announces-new-draft-adjustments-for-neopanamax-locks/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://pancanal.com/en/panama-canal-adopts-additional-measures-to-address-reduced-precipitation-in-the-canal-watershed/",
     "publisher": "Panama Canal Authority",
     "title": "Panama Canal Adopts Additional Measures to Address Reduced Precipitation in the Canal Watershed",
     "published_date": "2026-08-20",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171040/https://pancanal.com/en/panama-canal-adopts-additional-measures-to-address-reduced-precipitation-in-the-canal-watershed/",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://pancanal.com/en/panama-canal-postpones-neopanamax-draft-adjustment/",
     "publisher": "Panama Canal Authority",
     "title": "Panama Canal Postpones Neopanamax Draft Adjustment",
     "published_date": "2026-09-04",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171130/https://pancanal.com/en/panama-canal-postpones-neopanamax-draft-adjustment/",
     "type": "official"
    },
    {
     "id": "s5",
     "url": "https://maritime-executive.com/article/panama-canal-preemptively-lowers-draft-levels-due-to-el-nino-forecast",
     "publisher": "The Maritime Executive",
     "title": "Panama Canal Preemptively Lowers Draft Levels Due to El Nino Forecast",
     "published_date": "2026-06-05",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920172027/https://maritime-executive.com/article/panama-canal-preemptively-lowers-draft-levels-due-to-el-nino-forecast",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://portwatch.imf.org/",
     "publisher": "IMF PortWatch",
     "title": "Daily chokepoint transit calls, Panama Canal",
     "published_date": null,
     "accessed_date": "2026-09-20",
     "archive_url": null,
     "type": "data"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "Four dated canal authority notices agree on the draft and slot steps. The exact start is uncertain: press put the first cut at 2026-07-01 while the advisory read gives 2026-07-24 for its first step, so the start is recorded to the month. PortWatch transit counts fell only about 10 percent, so the measured effect is small."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/panama-canal-draft-and-slot-cuts-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "year_ago",
     "window_start": "2025-07-02",
     "window_end": "2025-09-21",
     "window_days": 82,
     "provisional": true,
     "baseline_start": "2025-04-30",
     "baseline_end": "2025-06-24",
     "baseline_days": 56,
     "baseline_value": 30.323170731707318,
     "observed_value": 31.414634146341463,
     "abs_change": 1.0914634146341449,
     "delta_pct": 3.5994369595817366,
     "z_score": 0.19603261623654092,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:167873be4671",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "panama-canal",
     "comparison": "year_ago",
     "window_start": "2025-07-02",
     "window_end": "2025-09-21",
     "window_days": 82,
     "provisional": true,
     "baseline_start": "2025-04-30",
     "baseline_end": "2025-06-24",
     "baseline_days": 56,
     "baseline_value": 7.7560975609756095,
     "observed_value": 8.012195121951219,
     "abs_change": 0.25609756097560954,
     "delta_pct": 3.3018867924528275,
     "z_score": 0.0905441610055945,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:b4a732282bcc",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "panama-canal",
     "comparison": "year_ago",
     "window_start": "2025-07-02",
     "window_end": "2025-09-14",
     "window_days": 75,
     "provisional": true,
     "baseline_start": "2025-04-30",
     "baseline_end": "2025-06-24",
     "baseline_days": 56,
     "baseline_value": 7.76,
     "observed_value": 7.973333333333334,
     "abs_change": 0.21333333333333382,
     "delta_pct": 2.7491408934707966,
     "z_score": 0.07542472332656507,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:436dc289658f",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "year_ago",
     "window_start": "2025-07-02",
     "window_end": "2025-09-14",
     "window_days": 75,
     "provisional": true,
     "baseline_start": "2025-04-30",
     "baseline_end": "2025-06-24",
     "baseline_days": 56,
     "baseline_value": 30.326666666666668,
     "observed_value": 31.333333333333332,
     "abs_change": 1.0066666666666642,
     "delta_pct": 3.3194108595295586,
     "z_score": 0.1808026707069534,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:a560ce145ba8",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "panama-canal",
     "comparison": "primary",
     "window_start": "2026-07-01",
     "window_end": "2026-09-20",
     "window_days": 82,
     "provisional": true,
     "baseline_start": "2026-04-29",
     "baseline_end": "2026-06-23",
     "baseline_days": 56,
     "baseline_value": 8.225609756097562,
     "observed_value": 7.878048780487805,
     "abs_change": -0.3475609756097571,
     "delta_pct": -4.225352112676068,
     "z_score": -0.12288136136473539,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:832b40cfcdc0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "primary",
     "window_start": "2026-07-01",
     "window_end": "2026-09-20",
     "window_days": 82,
     "provisional": true,
     "baseline_start": "2026-04-29",
     "baseline_end": "2026-06-23",
     "baseline_days": 56,
     "baseline_value": 33.109756097560975,
     "observed_value": 30.097560975609756,
     "abs_change": -3.012195121951219,
     "delta_pct": -9.097605893186003,
     "z_score": -0.5243558661104557,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:d883fb75a39b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "primary",
     "window_start": "2026-07-01",
     "window_end": "2026-09-13",
     "window_days": 75,
     "provisional": true,
     "baseline_start": "2026-04-29",
     "baseline_end": "2026-06-23",
     "baseline_days": 56,
     "baseline_value": 33.11333333333334,
     "observed_value": 30.466666666666665,
     "abs_change": -2.646666666666672,
     "delta_pct": -7.992752164284291,
     "z_score": -0.46072552942941364,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:8b154fd99529",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "panama-canal",
     "comparison": "primary",
     "window_start": "2026-07-01",
     "window_end": "2026-09-13",
     "window_days": 75,
     "provisional": true,
     "baseline_start": "2026-04-29",
     "baseline_end": "2026-06-23",
     "baseline_days": 56,
     "baseline_value": 8.226666666666667,
     "observed_value": 8.026666666666667,
     "abs_change": -0.1999999999999993,
     "delta_pct": -2.431118314424627,
     "z_score": -0.07071067811865475,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:ad3f63d25cec",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "ust-luga-oil-loading-halt-2026",
   "url_year": 2026,
   "title": "Drone attacks halt oil loadings at Ust-Luga and Primorsk",
   "event_type": "security-incident",
   "status": "ended",
   "start_date": "2026-03-25",
   "start_precision": "day",
   "end_date": "2026-04-04",
   "end_precision": "day",
   "first_reported": "2026-03-25",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 2,
   "severity_basis": "Port-wide stoppage of oil loadings of 24 hours to 7 days at Primorsk, and about 10 days for crude at Ust-Luga (2026-03-25 to 2026-04-04); no closure of other cargo was reported, so the level is set at 2.",
   "scope": "port",
   "entities": {
    "ports": [
     "ust-luga",
     "primorsk"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ru"
    ]
   },
   "commodities": [
    "crude-oil",
    "refined-products"
   ],
   "organisations": [
    "Novatek",
    "Transneft"
   ],
   "summary": "Ukrainian drone attacks on Russia's Baltic oil ports halted loadings on 2026-03-25 (25 March 2026). Bloomberg reported that Ust-Luga paused crude loadings that day after strikes set fire to tanks and loading equipment, and that Primorsk had already stopped for at least 36 hours earlier in the week. Reuters, as carried by The Moscow Times, put the offline share of Russian oil export capacity at about 40 percent, roughly 2 million barrels a day, with at least 50 tankers listing the two ports as destination in the Gulf of Finland. Crude loading at Ust-Luga restarted when the Aframax Jewel began loading on 2026-04-04. IMF PortWatch Ust-Luga port calls do not show a clear fall.",
   "timeline": [
    {
     "date": "2026-03-23",
     "date_precision": "week",
     "text": "Ukraine hits Primorsk, causing at least a 36 hour pause in cargo loadings, according to shipping information seen by Bloomberg.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-03-25",
     "date_precision": "day",
     "text": "Ust-Luga halts crude loadings after strikes ignite storage tanks; Reuters reports about 40 percent of Russian oil export capacity offline.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2026-04-04",
     "date_precision": "day",
     "text": "The tanker Jewel begins loading crude at Ust-Luga, the first restart reported after the halt.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Ukraine's General Staff said drones struck Novatek facilities at Ust-Luga; Russian officials confirmed a fire at the port.",
    "attributed_by": "Ukraine General Staff and the Leningrad governor, as reported by Bloomberg",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2026-04-04",
    "text": "Crude loading restarted at Ust-Luga when the tanker Jewel began loading on 2026-04-04.",
    "source_ids": [
     "s3"
    ]
   },
   "related_events": [],
   "no_effect_reason": "insufficient_baseline",
   "no_effect_note": "The effect engine could not build a baseline for Ust-Luga tanker port calls or export tonnage before 2026-03-25: no run of 56 to 112 days had enough valid days.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.rigzone.com/news/wire/key_russian_port_pauses_oil_loading_after_drone_strike-25-mar-2026-183288-article/",
     "publisher": "Rigzone (Bloomberg)",
     "title": "Key Russian Port Pauses Oil Loading after Drone Strike",
     "published_date": "2026-03-25",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260517022700/https://www.rigzone.com/news/wire/key_russian_port_pauses_oil_loading_after_drone_strike-25-mar-2026-183288-article/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.themoscowtimes.com/2026/03/25/ukrainian-drone-strikes-halt-at-least-40-of-russias-oil-export-capacity-reuters-a92339",
     "publisher": "The Moscow Times (Reuters)",
     "title": "Ukrainian Drone Strikes Halt at Least 40% of Russia's Oil Export Capacity",
     "published_date": "2026-03-25",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920172005/https://www.themoscowtimes.com/2026/03/25/ukrainian-drone-strikes-halt-at-least-40-of-russias-oil-export-capacity-reuters-a92339",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://fortune.com/2026/04/05/russia-baltic-port-ust-luga-crude-loading-ukraine-drone-attacks/",
     "publisher": "Fortune (Bloomberg)",
     "title": "Russia's key Baltic port resumes crude loading after attacks",
     "published_date": "2026-04-05",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260406205923/https://fortune.com/2026/04/05/russia-baltic-port-ust-luga-crude-loading-ukraine-drone-attacks/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://portwatch.imf.org/",
     "publisher": "IMF PortWatch",
     "title": "Daily port calls and exports, Ust-Luga",
     "published_date": null,
     "accessed_date": "2026-09-20",
     "archive_url": null,
     "type": "data"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Two Bloomberg pieces and a Reuters piece agree on the dates but all are press and no Russian official statement was read. Primorsk has no PortWatch series, and Ust-Luga port calls show no clear fall, so the stoppage is not measured in our data."
   },
   "corrections": [
    {
     "date": "2026-09-20",
     "what_changed": "Removed the two effect targets and set no_effect_reason to insufficient_baseline.",
     "why": "The effect engine could not build a baseline for either series, so the effect section would have read as pending indefinitely."
    }
   ],
   "url": "https://worldfreightmonitor.com/events/2026/ust-luga-oil-loading-halt-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": []
  },
  {
   "id": "strait-of-hormuz-closure-2026",
   "url_year": 2026,
   "title": "Strait of Hormuz closed to most shipping during the Iran war",
   "event_type": "security-incident",
   "status": "ongoing",
   "start_date": "2026-03-01",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2026-02-28",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 5,
   "severity_basis": "IMF PortWatch daily transits fell to single digits from 2026-03-02 and stayed there for more than six months, a reduction well above 50% at a chokepoint for over 30 days.",
   "scope": "chokepoint",
   "entities": {
    "ports": [
     "jebel-ali",
     "khalifa-port",
     "fujairah"
    ],
    "chokepoints": [
     "strait-of-hormuz"
    ],
    "lanes": [
     "asia-arabian-gulf",
     "arabian-gulf-china-crude",
     "arabian-gulf-japan-crude",
     "arabian-gulf-india-crude",
     "arabian-gulf-europe-crude",
     "qatar-japan-lng"
    ],
    "countries": [
     "ir",
     "om",
     "ae",
     "qa",
     "kw",
     "sa"
    ]
   },
   "commodities": [
    "crude-oil",
    "refined-products",
    "lng",
    "lpg",
    "containers"
   ],
   "organisations": [
    "Islamic Revolutionary Guard Corps",
    "International Maritime Organization",
    "US Central Command"
   ],
   "summary": "Commercial shipping through the Strait of Hormuz collapsed from 2026-03-01 (1 March 2026), after United States and Israeli strikes on Iran began on 2026-02-28. On 2026-03-02 an adviser to the Islamic Revolutionary Guard Corps announced the strait closed and threatened any ship that tried to pass. Reporting put pre-war traffic at about 100 vessels a day, and IMF PortWatch counted single digits a day from 2026-03-02. A United States naval blockade of Iranian ports began in April. A memorandum signed on 2026-06-17 reopened the strait for about three weeks at roughly 28 transits a day, before it broke down in July and the blockade resumed on 2026-07-14. The International Maritime Organization had verified at least 70 attacks on merchant shipping and 19 seafarer deaths by 2026-08-28. The disruption is ongoing.",
   "timeline": [
    {
     "date": "2026-02-28",
     "date_precision": "day",
     "text": "United States and Israeli strikes on Iran begin the war. The International Maritime Organization dates the start of the crisis in the strait to this day.",
     "source_ids": [
      "s4",
      "s5"
     ]
    },
    {
     "date": "2026-03-01",
     "date_precision": "day",
     "text": "IMF PortWatch daily transits through the strait fall to 20, from 57 the day before, and to 4 on 2026-03-02, where they stay in single digits for months.",
     "source_ids": [
      "s7"
     ]
    },
    {
     "date": "2026-03-02",
     "date_precision": "day",
     "text": "Ebrahim Jabari, an adviser to the Revolutionary Guard commander-in-chief, announces the strait closed and says ships that try to pass will be set ablaze.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-04-01",
     "date_precision": "month",
     "text": "A United States naval blockade of Iranian ports begins. Traffic stays near five vessels a day through the April ceasefire and the blockade.",
     "source_ids": [
      "s4",
      "s6"
     ]
    },
    {
     "date": "2026-04-24",
     "date_precision": "day",
     "text": "The International Maritime Organization Secretary-General says there is no safe transit anywhere in the strait, with 29 verified attacks on ships and at least 10 seafarers killed.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-06-17",
     "date_precision": "day",
     "text": "The United States and Iran sign a memorandum and the waterway reopens. From 2026-06-18 to 2026-07-05, 513 ships transit, about 28 a day.",
     "source_ids": [
      "s3",
      "s4"
     ]
    },
    {
     "date": "2026-07-08",
     "date_precision": "day",
     "text": "After attacks on three vessels on 2026-07-06 and 2026-07-07, the United States president declares the truce over and strikes escalate.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2026-07-14",
     "date_precision": "day",
     "text": "The United States resumes its blockade of Iranian ports. From 2026-07-15, traffic falls back to about five vessels a day.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2026-08-28",
     "date_precision": "day",
     "text": "The International Maritime Organization reports at least 70 verified attacks on shipping, 19 seafarers killed and about 6,000 seafarers stranded in the Gulf.",
     "source_ids": [
      "s5"
     ]
    },
    {
     "date": "2026-09-06",
     "date_precision": "day",
     "text": "The blockade continues as the United States and Iran trade strikes on tankers and warships, and Iran warns ships to use only routes it designates.",
     "source_ids": [
      "s6"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Iran declared the strait closed in response to the United States and Israeli strikes on Iran that began on 2026-02-28, and the Revolutionary Guard threatened any ship that tried to pass. A United States blockade of Iranian ports followed, and attacks on merchant ships by both sides of the conflict have kept traffic low.",
    "attributed_by": "Islamic Revolutionary Guard Corps and the United States government, as reported by Al Jazeera",
    "source_ids": [
     "s1",
     "s4",
     "s6"
    ]
   },
   "casualties": {
    "deaths": 19,
    "injuries": null,
    "as_of": "2026-08-28",
    "source_ids": [
     "s5"
    ]
   },
   "resolution": null,
   "related_events": [
    "tanker-seizure-strait-of-hormuz-2019"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz"
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz"
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.aljazeera.com/news/2026/3/2/iran-says-will-attack-any-ship-trying-to-pass-through-strait-of-hormuz",
     "publisher": "Al Jazeera",
     "title": "Iran says will attack any ship trying to pass through Strait of Hormuz",
     "published_date": "2026-03-02",
     "accessed_date": "2026-09-19",
     "archive_url": "https://web.archive.org/web/20260920060139/https://www.aljazeera.com/news/2026/3/2/iran-says-will-attack-any-ship-trying-to-pass-through-strait-of-hormuz",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.imo.org/en/mediacentre/pressbriefings/pages/no-safe-transit-through-hormuz-imo-secretary-general.aspx",
     "publisher": "International Maritime Organization",
     "title": "No safe transit through Strait of Hormuz, IMO Secretary-General",
     "published_date": "2026-04-24",
     "accessed_date": "2026-09-19",
     "archive_url": "https://web.archive.org/web/20260827150034/https://www.imo.org/en/mediacentre/pressbriefings/pages/no-safe-transit-through-hormuz-imo-secretary-general.aspx",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.aljazeera.com/news/2026/7/9/strait-of-hormuz-what-has-happened-since-the-us-iran-mou-on-june-17",
     "publisher": "Al Jazeera",
     "title": "Strait of Hormuz, what has happened since the US-Iran MoU on June 17",
     "published_date": "2026-07-09",
     "accessed_date": "2026-09-19",
     "archive_url": "https://web.archive.org/web/20260915070108/https://www.aljazeera.com/news/2026/7/9/strait-of-hormuz-what-has-happened-since-the-us-iran-mou-on-june-17",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.aljazeera.com/news/2026/8/27/how-a-95-percent-drop-in-hormuz-traffic-changed-global-shipping",
     "publisher": "Al Jazeera",
     "title": "How a 95 percent drop in Hormuz traffic changed global shipping",
     "published_date": "2026-08-27",
     "accessed_date": "2026-09-19",
     "archive_url": "https://web.archive.org/web/20260915060942/https://www.aljazeera.com/news/2026/8/27/how-a-95-percent-drop-in-hormuz-traffic-changed-global-shipping",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.imo.org/en/mediacentre/pressbriefings/pages/statement-on-the-ongoing-crisis-in-the-strait-of-hormuz.aspx",
     "publisher": "International Maritime Organization",
     "title": "Six months of uncertainty for seafarers in Strait of Hormuz",
     "published_date": "2026-08-28",
     "accessed_date": "2026-09-19",
     "archive_url": "https://web.archive.org/web/20260830041214/https://www.imo.org/en/mediacentre/pressbriefings/pages/statement-on-the-ongoing-crisis-in-the-strait-of-hormuz.aspx",
     "type": "official"
    },
    {
     "id": "s6",
     "url": "https://www.aljazeera.com/news/2026/9/6/us-iran-engaged-in-tanker-war-where-is-the-months-long-conflict-headed",
     "publisher": "Al Jazeera",
     "title": "US, Iran engaged in tanker war, where is the months-long conflict headed",
     "published_date": "2026-09-06",
     "accessed_date": "2026-09-19",
     "archive_url": "https://web.archive.org/web/20260907073842/https://www.aljazeera.com/news/2026/9/6/us-iran-engaged-in-tanker-war-where-is-the-months-long-conflict-headed",
     "type": "press"
    },
    {
     "id": "s7",
     "url": "https://portwatch.imf.org/",
     "publisher": "IMF PortWatch",
     "title": "Daily chokepoint transit calls, Strait of Hormuz",
     "published_date": null,
     "accessed_date": "2026-09-19",
     "archive_url": null,
     "type": "data"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Dates and figures rest on the International Maritime Organization and on consistent press reporting, but each press source was read as a single report, the blockade start is known to the month only, and attribution of individual ship attacks is not settled in the sources used."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/strait-of-hormuz-closure-2026/",
   "approved_at": "2026-09-20T06:16:37Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz",
     "comparison": "year_ago",
     "window_start": "2025-03-02",
     "window_end": "2025-06-29",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2024-12-29",
     "baseline_end": "2025-02-22",
     "baseline_days": 56,
     "baseline_value": 14.475,
     "observed_value": 19.6,
     "abs_change": 5.125000000000002,
     "delta_pct": 35.40587219343698,
     "z_score": 1.3232693099542008,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:9c16c48725f9",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "year_ago",
     "window_start": "2025-03-02",
     "window_end": "2025-06-29",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2024-12-29",
     "baseline_end": "2025-02-22",
     "baseline_days": 56,
     "baseline_value": 39.858333333333334,
     "observed_value": 55.483333333333334,
     "abs_change": 15.625,
     "delta_pct": 39.20133807233953,
     "z_score": 2.341981803738178,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:5a29badacf2f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "year_ago",
     "window_start": "2025-03-02",
     "window_end": "2025-06-29",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2024-12-29",
     "baseline_end": "2025-02-22",
     "baseline_days": 51,
     "baseline_value": 26.575,
     "observed_value": 24.766666666666666,
     "abs_change": -1.8083333333333336,
     "delta_pct": -6.804640953276891,
     "z_score": -0.3480139122615244,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:8ae531b80da6",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2024-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2024-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2024-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "year_ago",
     "window_start": "2025-03-02",
     "window_end": "2025-06-29",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2024-12-29",
     "baseline_end": "2025-02-22",
     "baseline_days": 51,
     "baseline_value": 11.0625,
     "observed_value": 10.325,
     "abs_change": -0.7375000000000007,
     "delta_pct": -6.666666666666673,
     "z_score": -0.23321797743741796,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:ff9d60ac0fdc",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2024-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2024-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2024-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "year_ago",
     "window_start": "2025-03-02",
     "window_end": "2025-06-29",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2024-12-29",
     "baseline_end": "2025-02-22",
     "baseline_days": 51,
     "baseline_value": 9.275,
     "observed_value": 9.666666666666666,
     "abs_change": 0.3916666666666657,
     "delta_pct": 4.222821203953269,
     "z_score": 0.13055555555555556,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:0f4ebb967b8d",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2024-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2024-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2024-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "year_ago",
     "window_start": "2025-03-02",
     "window_end": "2025-06-29",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2024-12-29",
     "baseline_end": "2025-02-22",
     "baseline_days": 56,
     "baseline_value": 70.81666666666666,
     "observed_value": 98.075,
     "abs_change": 27.25833333333334,
     "delta_pct": 38.49140974346906,
     "z_score": 2.8285375310871066,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:f84e5e52e65d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 10.1375,
     "observed_value": 0.6666666666666666,
     "abs_change": -9.470833333333333,
     "delta_pct": -93.42375667899714,
     "z_score": -2.9949404673178024,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:bc75e5fa58e0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 24.9125,
     "observed_value": 2.683333333333333,
     "abs_change": -22.229166666666668,
     "delta_pct": -89.22896805485868,
     "z_score": -4.445833333333334,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:9e21dfb08de7",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 61.31666666666667,
     "observed_value": 6.508333333333334,
     "abs_change": -54.80833333333334,
     "delta_pct": -89.38570263658603,
     "z_score": -5.476698426021687,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:bcd88d8cb0bf",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.345833333333333,
     "observed_value": 1.2666666666666666,
     "abs_change": -9.079166666666666,
     "delta_pct": -87.7567458719291,
     "z_score": -2.801891663061652,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:6cfc9c6b2c14",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.9375,
     "observed_value": 2.9166666666666665,
     "abs_change": -7.020833333333334,
     "delta_pct": -70.64989517819707,
     "z_score": -2.2201824405765493,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:d739aa49f192",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 34.025,
     "observed_value": 2.558333333333333,
     "abs_change": -31.466666666666665,
     "delta_pct": -92.48101885868235,
     "z_score": -4.716439088488192,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:c428daae5bce",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 25.55,
     "observed_value": 2.716666666666667,
     "abs_change": -22.833333333333336,
     "delta_pct": -89.3672537508154,
     "z_score": -4.521673779593479,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:1f6d4235c82c",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.345833333333333,
     "observed_value": 1.2666666666666666,
     "abs_change": -9.079166666666666,
     "delta_pct": -87.7567458719291,
     "z_score": -2.737471749312279,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:b9e294f9f7f6",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "primary",
     "window_start": "2026-03-01",
     "window_end": "2026-06-28",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.9375,
     "observed_value": 2.95,
     "abs_change": -6.9875,
     "delta_pct": -70.31446540880503,
     "z_score": -2.2096415150426547,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:2a5d0ad4403a",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.357142857142858,
     "observed_value": 1.0357142857142858,
     "abs_change": -9.321428571428571,
     "delta_pct": -89.99999999999999,
     "z_score": -2.8766553100075707,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:f28144b49056",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.928571428571429,
     "observed_value": 5.964285714285714,
     "abs_change": -3.9642857142857144,
     "delta_pct": -39.92805755395683,
     "z_score": -1.253617215281036,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:a8e9c2fc045f",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 61.357142857142854,
     "observed_value": 11.75,
     "abs_change": -49.607142857142854,
     "delta_pct": -80.8498253783469,
     "z_score": -4.956971772026406,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:c0a1eda7fe85",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 24.928571428571427,
     "observed_value": 6.214285714285714,
     "abs_change": -18.71428571428571,
     "delta_pct": -75.07163323782234,
     "z_score": -3.742857142857143,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:48ad11099e76",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 10.142857142857142,
     "observed_value": 1.1428571428571428,
     "abs_change": -9,
     "delta_pct": -88.73239436619718,
     "z_score": -2.846049894151541,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:d3106632df65",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.357142857142858,
     "observed_value": 1.0357142857142858,
     "abs_change": -9.321428571428571,
     "delta_pct": -89.99999999999999,
     "z_score": -2.810516461957011,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:2cb2bc2494eb",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.928571428571429,
     "observed_value": 6,
     "abs_change": -3.928571428571429,
     "delta_pct": -39.568345323741006,
     "z_score": -1.2423233664947204,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:0bccf22b5914",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 34.07142857142857,
     "observed_value": 5.714285714285714,
     "abs_change": -28.357142857142854,
     "delta_pct": -83.22851153039832,
     "z_score": -4.250362404955688,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:cabc699b68d1",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "segment",
     "window_start": "2026-06-29",
     "window_end": "2026-07-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 25.571428571428573,
     "observed_value": 6.357142857142857,
     "abs_change": -19.214285714285715,
     "delta_pct": -75.13966480446928,
     "z_score": -3.8049955580103627,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:e834ac3dec69",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 24.928571428571427,
     "observed_value": 4.392857142857143,
     "abs_change": -20.535714285714285,
     "delta_pct": -82.378223495702,
     "z_score": -4.107142857142857,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:7be7f74364a4",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 10.142857142857142,
     "observed_value": 0.32142857142857145,
     "abs_change": -9.821428571428571,
     "delta_pct": -96.83098591549296,
     "z_score": -3.1058084162368007,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:bd2bb44b5388",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.928571428571429,
     "observed_value": 6.392857142857143,
     "abs_change": -3.5357142857142856,
     "delta_pct": -35.611510791366904,
     "z_score": -1.1180910298452484,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:52732a42ea92",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 61.357142857142854,
     "observed_value": 5.071428571428571,
     "abs_change": -56.285714285714285,
     "delta_pct": -91.73457508731083,
     "z_score": -5.624325063148751,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:3d74525c3cd1",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.357142857142858,
     "observed_value": 1.5,
     "abs_change": -8.857142857142858,
     "delta_pct": -85.51724137931035,
     "z_score": -2.7333736278999137,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:aa7afd338ed0",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.928571428571429,
     "observed_value": 6.321428571428571,
     "abs_change": -3.6071428571428577,
     "delta_pct": -36.330935251798564,
     "z_score": -1.1406787274178796,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:905ab4d860e8",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 34.07142857142857,
     "observed_value": 1.8214285714285714,
     "abs_change": -32.25,
     "delta_pct": -94.65408805031447,
     "z_score": -4.833850442915599,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:59cbb74b99cf",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.357142857142858,
     "observed_value": 1.5,
     "abs_change": -8.857142857142858,
     "delta_pct": -85.51724137931035,
     "z_score": -2.6705290519744778,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:1810ee9cd586",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "segment",
     "window_start": "2026-07-27",
     "window_end": "2026-08-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 25.571428571428573,
     "observed_value": 4.428571428571429,
     "abs_change": -21.142857142857146,
     "delta_pct": -82.68156424581007,
     "z_score": -4.186909610301366,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:d26357ba09c3",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-20",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 10.142857142857142,
     "observed_value": 0.2857142857142857,
     "abs_change": -9.857142857142856,
     "delta_pct": -97.18309859154928,
     "z_score": -3.1171022650231164,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:fab45057f628",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-11",
     "window_days": 19,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.894736842105264,
     "observed_value": 6.631578947368421,
     "abs_change": -3.2631578947368425,
     "delta_pct": -32.97872340425533,
     "z_score": -1.0319011312128397,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:3a878ab301d3",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-13",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 10.142857142857142,
     "observed_value": 0.23809523809523808,
     "abs_change": -9.904761904761905,
     "delta_pct": -97.65258215962442,
     "z_score": -3.1321607300715373,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:0656426ba407",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "fujairah",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-18",
     "window_days": 26,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 9.903846153846153,
     "observed_value": 6.576923076923077,
     "abs_change": -3.3269230769230766,
     "delta_pct": -33.592233009708735,
     "z_score": -1.0520654523252493,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:ce2b7cfd11d2",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-20",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 34.07142857142857,
     "observed_value": 1.1785714285714286,
     "abs_change": -32.89285714285714,
     "delta_pct": -96.54088050314465,
     "z_score": -4.9302062656979695,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:3079b760e599",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-11",
     "window_days": 19,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 25,
     "observed_value": 4.421052631578948,
     "abs_change": -20.57894736842105,
     "delta_pct": -82.3157894736842,
     "z_score": -4.11578947368421,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:d08cd9b26d65",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "jebel-ali",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-18",
     "window_days": 26,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 25.653846153846153,
     "observed_value": 4.6923076923076925,
     "abs_change": -20.96153846153846,
     "delta_pct": -81.70914542728636,
     "z_score": -4.1510031609406735,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:635a0241a9bb",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-13",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 61.357142857142854,
     "observed_value": 4.238095238095238,
     "abs_change": -57.11904761904761,
     "delta_pct": -93.09274350019402,
     "z_score": -5.707595527281664,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:14ff9bc30ffa",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-20",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 61.357142857142854,
     "observed_value": 3.9642857142857144,
     "abs_change": -57.39285714285714,
     "delta_pct": -93.53899883585564,
     "z_score": -5.734955822639622,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:3780dbcaecb6",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-13",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 56,
     "baseline_value": 34.07142857142857,
     "observed_value": 1.380952380952381,
     "abs_change": -32.69047619047619,
     "delta_pct": -95.94689028651293,
     "z_score": -4.899872025192408,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:d6b2366b36a8",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-18",
     "window_days": 26,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.365384615384615,
     "observed_value": 2.230769230769231,
     "abs_change": -8.134615384615383,
     "delta_pct": -78.47866419294989,
     "z_score": -2.4526788222383464,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "2:fac10f7d3da3",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "khalifa-port",
     "comparison": "segment",
     "window_start": "2026-08-24",
     "window_end": "2026-09-11",
     "window_days": 19,
     "provisional": true,
     "baseline_start": "2025-12-28",
     "baseline_end": "2026-02-21",
     "baseline_days": 50,
     "baseline_value": 10.368421052631579,
     "observed_value": 2.263157894736842,
     "abs_change": -8.105263157894736,
     "delta_pct": -78.1725888324873,
     "z_score": -2.5013385151749636,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T06:16:59Z",
     "data_revision": "1:4ede0446cee1",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": [
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    }
   ]
  },
  {
   "id": "chittagong-port-strike-new-mooring-terminal-2026",
   "url_year": 2026,
   "title": "Workers strike at Chittagong port over New Mooring Container Terminal lease",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2026-01-31",
   "start_precision": "day",
   "end_date": "2026-02-09",
   "end_precision": "day",
   "first_reported": "2026-02-02",
   "added": "2026-09-20",
   "updated": "2026-09-20",
   "severity": 3,
   "severity_basis": "Port stoppage of seven days or more; port workers stopped cargo handling at Chittagong from 2026-02-02 to 2026-02-09, and the portwatch-port-calls series for Chittagong shows weekly means of 3.0 and 3.9 calls in the weeks from 2026-02-02 and 2026-02-09, against about 6 in preceding weeks.",
   "scope": "port",
   "entities": {
    "ports": [
     "chittagong"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "bd"
    ],
    "terminals": [
     "New Mooring Container Terminal"
    ]
   },
   "commodities": [
    "containers",
    "general-cargo",
    "dry-bulk"
   ],
   "organisations": [
    "Chattogram Port Authority",
    "DP World",
    "Chattogram Bandar Rokkha Sangram Parishad"
   ],
   "summary": "Workers and employees at Chittagong (Chattogram), Bangladesh's main seaport, disrupted cargo handling from 2026-01-31 (31 January 2026) to protest a plan to lease the New Mooring Container Terminal to DP World. The action began with eight-hour stoppages on three days, became an indefinite strike from 2026-02-03 (3 February 2026), paused for two days after talks with the shipping adviser, and resumed on 2026-02-08 (8 February 2026). Operations restarted on 2026-02-09 (9 February 2026) after the government said the agreement would not be signed under the interim administration. Reports cited more than 41,000 TEU piled in terminal yards, thousands of export containers held at inland depots, and vessels waiting.",
   "timeline": [
    {
     "date": "2026-01-31",
     "date_precision": "day",
     "text": "Port workers begin eight-hour work stoppages at Chittagong jetties and terminals, the first of three such days.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2026-02-03",
     "date_precision": "day",
     "text": "The protest council escalates to an indefinite strike and cargo handling at jetties, sheds and terminals halts.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2026-02-08",
     "date_precision": "day",
     "text": "The strike resumes after a two-day pause that followed a meeting with the shipping adviser.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-02-09",
     "date_precision": "day",
     "text": "Workers suspend the strike until 15 February after the government says the terminal lease will not be signed by the current administration, and cargo handling restarts.",
     "source_ids": [
      "s1"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Workers opposed the proposed concession of the New Mooring Container Terminal to DP World and also protested transfers of protesting staff.",
    "attributed_by": "Chattogram Bandar Rokkha Sangram Parishad, as reported",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2026-02-09",
    "text": "The strike was suspended on 2026-02-09 after government officials said the concession agreement would not be signed during the interim government's tenure; cargo handling restarted that morning.",
    "source_ids": [
     "s1"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chittagong"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "chittagong"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.tbsnews.net/bangladesh/ctg-port-workers-lift-strike-until-15-feb-after-govt-says-dp-world-deal-hold-1355606",
     "publisher": "The Business Standard",
     "title": "Ctg Port resumes operations after 7-day disruption as workers suspend strike until 15 Feb",
     "published_date": "2026-02-09",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171838/https://www.tbsnews.net/bangladesh/ctg-port-workers-lift-strike-until-15-feb-after-govt-says-dp-world-deal-hold-1355606",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://en.prothomalo.com/bangladesh/dgql68ynis",
     "publisher": "Prothom Alo",
     "title": "Chattogram port operations stall over NCT deal",
     "published_date": "2026-02-02",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920171908/https://en.prothomalo.com/bangladesh/dgql68ynis",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.maritimegateway.com/chittagong-port-strike-cripples-bangladesh-container-flows-disrupts-india-trade/",
     "publisher": "Maritime Gateway",
     "title": "Chittagong Port Strike Cripples Bangladesh Container Flows, Disrupts India Trade",
     "published_date": "2026-02-05",
     "accessed_date": "2026-09-20",
     "archive_url": "https://web.archive.org/web/20260920173354/https://www.maritimegateway.com/chittagong-port-strike-cripples-bangladesh-container-flows-disrupts-india-trade/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "Dates are consistent across Bangladeshi and trade press, but no official statement from Chattogram Port Authority or the government was retrieved, and the strike was suspended rather than settled, so the end date marks the resumption of work."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2026/chittagong-port-strike-new-mooring-terminal-2026/",
   "approved_at": "2026-09-20T19:02:05Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chittagong",
     "comparison": "primary",
     "window_start": "2026-01-31",
     "window_end": "2026-02-09",
     "window_days": 10,
     "provisional": false,
     "baseline_start": "2025-11-29",
     "baseline_end": "2026-01-23",
     "baseline_days": 46,
     "baseline_value": 6.15,
     "observed_value": 3.9,
     "abs_change": -2.2500000000000004,
     "delta_pct": -36.585365853658544,
     "z_score": -0.9185586535436919,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:5d7a4d19162d",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "chittagong",
     "comparison": "primary",
     "window_start": "2026-01-31",
     "window_end": "2026-02-09",
     "window_days": 10,
     "provisional": false,
     "baseline_start": "2025-11-29",
     "baseline_end": "2026-01-23",
     "baseline_days": 46,
     "baseline_value": 3.65,
     "observed_value": 2.4,
     "abs_change": -1.25,
     "delta_pct": -34.24657534246575,
     "z_score": -0.7216878364870323,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-20T19:02:28Z",
     "data_revision": "1:244146f2b654",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2025-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2025-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2026-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    }
   ]
  },
  {
   "id": "us-china-reciprocal-port-fees-2025",
   "url_year": 2025,
   "title": "United States and China levy port fees on each other's vessels",
   "event_type": "regulatory-or-customs-action",
   "status": "ended",
   "start_date": "2025-10-14",
   "start_precision": "day",
   "end_date": "2025-11-10",
   "end_precision": "day",
   "first_reported": "2025-04-23",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 1,
   "severity_basis": "No stoppage at any terminal, port or chokepoint is documented; the measures added a charge on qualifying vessel arrivals for 27 days before both sides suspended them.",
   "scope": "global",
   "entities": {
    "ports": [],
    "chokepoints": [],
    "lanes": [
     "transpacific-us-west-coast",
     "asia-us-east-coast"
    ],
    "countries": [
     "us",
     "cn"
    ]
   },
   "commodities": [
    "containers",
    "vehicles"
   ],
   "organisations": [
    "Office of the United States Trade Representative",
    "Ministry of Transport of the People's Republic of China"
   ],
   "summary": "From 2025-10-14 (14 October 2025) the Office of the United States Trade Representative applied service fees under Section 301 to arrivals of vessels owned or operated by Chinese entities, of Chinese built vessels and of foreign built vehicle carriers at United States ports. China's Ministry of Transport applied special port fees to vessels linked to the United States from the same day. The United States suspended its action for one year from 00:01 Eastern time on 2025-11-10 (10 November 2025) after the meeting between the two presidents announced on 2025-11-01, and China suspended its fees and a related investigation for one year from 13:01 Beijing time on the same day. Neither measure closed a port or a terminal.",
   "timeline": [
    {
     "date": "2025-04-23",
     "date_precision": "day",
     "text": "The United States Trade Representative publishes its notice of action in the Section 301 investigation into China's targeting of the maritime, logistics and shipbuilding sectors, setting fees to apply from 2025-10-14.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2025-10-14",
     "date_precision": "day",
     "text": "The Section 301 service fees on Chinese owned or operated vessels, Chinese built vessels and foreign built vehicle carriers begin to apply at United States ports. China's special port fees on vessels linked to the United States begin the same day.",
     "source_ids": [
      "s2",
      "s3",
      "s4"
     ]
    },
    {
     "date": "2025-11-10",
     "date_precision": "day",
     "text": "The United States suspends its action for one year from 00:01 Eastern time. China suspends its special port fees and a related industry investigation for one year from 13:01 Beijing time.",
     "source_ids": [
      "s1",
      "s2",
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The United States Trade Representative acted on its Section 301 determination on China's maritime, logistics and shipbuilding sectors. China's Ministry of Transport described its special port fees as a response to that action, and both sides suspended the measures after the trade talks held in Kuala Lumpur.",
    "attributed_by": "Office of the United States Trade Representative and the Ministry of Transport of the People's Republic of China",
    "source_ids": [
     "s1",
     "s2",
     "s3",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2025-11-10",
    "text": "Both sides suspended their fees for one year from 2025-11-10, and the United States notice states that no liability accrues during the suspension.",
    "source_ids": [
     "s1",
     "s2",
     "s4"
    ]
   },
   "related_events": [],
   "no_effect_reason": "not_a_throughput_event",
   "no_effect_note": "The measures added a charge on qualifying vessel arrivals rather than stopping cargo, and they name no port or chokepoint where a dated stoppage could be measured.",
   "sources": [
    {
     "id": "s1",
     "url": "https://ustr.gov/about/policy-offices/press-office/press-releases/2025/november/ustr-suspension-action-section-301-investigation-chinas-targeting-maritime-logistics-and",
     "publisher": "Office of the United States Trade Representative",
     "title": "USTR Suspension of Action in Section 301 Investigation of China's Targeting of the Maritime, Logistics, and Shipbuilding Sectors for Dominance",
     "published_date": "2025-11-09",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260827205559/https://ustr.gov/about/policy-offices/press-office/press-releases/2025/november/ustr-suspension-action-section-301-investigation-chinas-targeting-maritime-logistics-and",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.federalregister.gov/documents/2025/11/13/2025-19873/notice-of-modification-of-section-301-action-chinas-targeting-of-the-maritime-logistics-and",
     "publisher": "Federal Register",
     "title": "Notice of Modification of Section 301 Action: China's Targeting of the Maritime, Logistics, and Shipbuilding Sectors for Dominance",
     "published_date": "2025-11-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251206194033/https://www.federalregister.gov/documents/2025/11/13/2025-19873/notice-of-modification-of-section-301-action-chinas-targeting-of-the-maritime-logistics-and",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.federalregister.gov/documents/2025/04/23/2025-06927/notice-of-action-and-proposed-action-in-section-301-investigation-of-chinas-targeting-the-maritime",
     "publisher": "Federal Register",
     "title": "Notice of Action and Proposed Action in Section 301 Investigation of China's Targeting the Maritime, Logistics, and Shipbuilding Sectors for Dominance, Request for Comments",
     "published_date": "2025-04-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250901231839/https://www.federalregister.gov/documents/2025/04/23/2025-06927/notice-of-action-and-proposed-action-in-section-301-investigation-of-chinas-targeting-the-maritime",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://xxgk.mot.gov.cn/2020/jigou/syj/202511/t20251104_4179268.html",
     "publisher": "Ministry of Transport of the People's Republic of China",
     "title": "交通运输部关于暂停对美船舶收取船舶特别港务费、暂停开展航运业造船业及相关产业链供应链安全和发展利益受影响情况调查的公告",
     "published_date": "2025-11-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260512220635/https://xxgk.mot.gov.cn/2020/jigou/syj/202511/t20251104_4179268.html",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The start date, the suspension date and the hours of effect come from the United States Trade Representative, the Federal Register and the announcement of China's Ministry of Transport."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2025/us-china-reciprocal-port-fees-2025/",
   "approved_at": "2026-09-16T18:21:42Z",
   "measured_effect": []
  },
  {
   "id": "lashing-strike-rotterdam-2025",
   "url_year": 2025,
   "title": "Lashing workers strike halts container handling at the Port of Rotterdam",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2025-10-08",
   "start_precision": "day",
   "end_date": "2025-10-13",
   "end_precision": "day",
   "first_reported": "2025-10-08",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Terminal closure over 72 hours; container handling stopped at the principal Rotterdam container terminals from 2025-10-08 to 2025-10-13.",
   "scope": "port",
   "entities": {
    "ports": [
     "rotterdam"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "nl"
    ],
    "terminals": [
     "APM Terminals Maasvlakte II",
     "Hutchison Ports Delta II",
     "ECT Delta",
     "Rotterdam World Gateway"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "FNV Havens",
    "International Lashing Services",
    "Matrans Marine Services",
    "Port of Rotterdam Authority",
    "International Transport Workers' Federation",
    "Maersk"
   ],
   "summary": "From 2025-10-08 (8 October 2025) lashing workers at the Port of Rotterdam went on strike, stopping container loading and discharge at the main deep sea terminals. About 700 lashers employed by International Lashing Services and Matrans Marine Services walked out at 15:15 local time in a pay dispute led by the union FNV Havens. A planned 48 hour action was extended without an end date on 2025-10-10. A Dutch court suspended the strike from the morning of 2025-10-13 (13 October 2025), when work resumed, and the port authority said the queue of waiting ships would take until the end of October to clear. Negotiators reached an agreement in principle on 2025-10-16 and members voted on 2025-10-17 to call off further action. A separate slowdown by Belgian pilots affected Antwerp at the same time and is not part of this event.",
   "timeline": [
    {
     "date": "2025-10-08",
     "date_precision": "day",
     "text": "Lashers at International Lashing Services and Matrans Marine Services stop work at 15:15 for a planned 48 hours, halting container operations at APM Terminals Maasvlakte II, Hutchison Ports Delta II, ECT Delta and Rotterdam World Gateway.",
     "source_ids": [
      "s1",
      "s4",
      "s5"
     ]
    },
    {
     "date": "2025-10-10",
     "date_precision": "day",
     "text": "With no agreement reached, FNV Havens extends the strike for an open ended period.",
     "source_ids": [
      "s1",
      "s6"
     ]
    },
    {
     "date": "2025-10-11",
     "date_precision": "day",
     "text": "A court orders the strike suspended from 07:00 on 2025-10-13 until 07:00 on 2025-10-17, leaving the union free to resume if no settlement is reached.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2025-10-13",
     "date_precision": "day",
     "text": "Lashers return to work under the court order. The port authority reports 33 vessels at anchor, 15 of them deep sea container ships, and expects the backlog to last until the end of October.",
     "source_ids": [
      "s2",
      "s7"
     ]
    },
    {
     "date": "2025-10-16",
     "date_precision": "day",
     "text": "FNV Havens and the two lashing employers reach an agreement in principle on pay and working conditions.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2025-10-17",
     "date_precision": "day",
     "text": "Union members vote to end the action, with a written ratification vote to follow over three weeks.",
     "source_ids": [
      "s3",
      "s8"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "FNV Havens called the strike over pay for lashing staff, seeking an increase of 7 percent, later lowered to 6.5 percent, on top of inflation compensation, after negotiations with the two lashing employers failed.",
    "attributed_by": "FNV Havens",
    "source_ids": [
     "s2",
     "s5"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2025-10-13",
    "text": "Work resumed on 2025-10-13 under a court ordered suspension of the strike. An agreement in principle followed on 2025-10-16, and members voted on 2025-10-17 not to resume the action.",
    "source_ids": [
     "s2",
     "s3",
     "s7"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "rotterdam"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.maersk.com/news/articles/2025/10/08/strike-action-of-lashing-companies-in-rotterdam",
     "publisher": "Maersk",
     "title": "Customer advisory: Strike action of lashing companies in Rotterdam",
     "published_date": "2025-10-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260612180409/https://www.maersk.com/news/articles/2025/10/08/strike-action-of-lashing-companies-in-rotterdam",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.itfglobal.org/en/news/court-intervenes-in-rotterdams-biggest-ever-lasher-strike",
     "publisher": "International Transport Workers' Federation",
     "title": "Court intervenes in Rotterdam's biggest ever lasher strike",
     "published_date": "2025-10-15",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260414220337/https://www.itfglobal.org/en/news/court-intervenes-in-rotterdams-biggest-ever-lasher-strike",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.itfglobal.org/en/news/rotterdam-lashers-strike-wins-new-agreement",
     "publisher": "International Transport Workers' Federation",
     "title": "Rotterdam lashers' strike wins new agreement",
     "published_date": "2025-10-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260513190019/https://www.itfglobal.org/en/news/rotterdam-lashers-strike-wins-new-agreement",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://gcaptain.com/48-hour-lashing-strike-halts-container-operations-at-port-of-rotterdam/",
     "publisher": "gCaptain",
     "title": "48-Hour Lashing Strike Halts Container Operations at Port of Rotterdam",
     "published_date": "2025-10-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260611132033/https://gcaptain.com/48-hour-lashing-strike-halts-container-operations-at-port-of-rotterdam/",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://maritime-executive.com/article/rotterdam-containerships-brought-to-halt-by-lashers-strike",
     "publisher": "The Maritime Executive",
     "title": "Rotterdam Containerships Brought to Halt by Lashers' Strike",
     "published_date": "2025-10-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260520040427/https://maritime-executive.com/article/rotterdam-containerships-brought-to-halt-by-lashers-strike",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://maritime-executive.com/article/rotterdam-container-ops-remains-at-standstill-as-lashers-extend-strike-2",
     "publisher": "The Maritime Executive",
     "title": "Rotterdam Container Ops Remain at Standstill as Lashers Extend Strike",
     "published_date": "2025-10-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260411083715/https://maritime-executive.com/article/rotterdam-container-ops-remains-at-standstill-as-lashers-extend-strike-2",
     "type": "press"
    },
    {
     "id": "s7",
     "url": "https://maritime-executive.com/article/container-flow-resumes-in-rotterdam-as-court-orders-strikers-back-to-work",
     "publisher": "The Maritime Executive",
     "title": "Container Flow Resumes in Rotterdam as Court Orders Strikers Back to Work",
     "published_date": "2025-10-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260422181934/https://maritime-executive.com/article/container-flow-resumes-in-rotterdam-as-court-orders-strikers-back-to-work",
     "type": "press"
    },
    {
     "id": "s8",
     "url": "https://maritime-executive.com/article/shipping-backlog-eases-with-tentative-settlement-in-rotterdam-strike",
     "publisher": "The Maritime Executive",
     "title": "Shipping Backlog Eases with Tentative Settlement in Rotterdam Strike",
     "published_date": "2025-10-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260417174903/https://maritime-executive.com/article/shipping-backlog-eases-with-tentative-settlement-in-rotterdam-strike",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The start is confirmed by Maersk's customer advisory, and the court ordered return to work and settlement dates by the ITF, the federation of the striking union, with consistent reporting in two trade outlets."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2025/lashing-strike-rotterdam-2025/",
   "approved_at": "2026-09-16T18:21:42Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "rotterdam",
     "comparison": "primary",
     "window_start": "2025-10-08",
     "window_end": "2025-10-13",
     "window_days": 6,
     "provisional": false,
     "baseline_start": "2025-08-06",
     "baseline_end": "2025-09-30",
     "baseline_days": 56,
     "baseline_value": 19.333333333333332,
     "observed_value": 10,
     "abs_change": -9.333333333333332,
     "delta_pct": -48.275862068965516,
     "z_score": -1.9369991041379144,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:bb57c8f0471f",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "power-blackout-spain-portugal-ports-2025",
   "url_year": 2025,
   "title": "Iberian power blackout halts container terminals at Spanish ports",
   "event_type": "infrastructure-failure",
   "status": "ended",
   "start_date": "2025-04-28",
   "start_precision": "day",
   "end_date": "2025-04-29",
   "end_precision": "day",
   "first_reported": "2025-04-28",
   "added": "2026-09-24",
   "updated": "2026-09-24",
   "severity": 1,
   "severity_basis": "Port level stoppage under 24 hours, since container handling stopped at the affected Spanish ports from the early afternoon of 2025-04-28 and had restarted by the morning of 2025-04-29.",
   "scope": "regional",
   "entities": {
    "ports": [
     "algeciras",
     "valencia",
     "barcelona"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "es",
     "pt"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Autoridad Portuaria de la Bahía de Algeciras",
    "Red Eléctrica",
    "ENTSO-E",
    "Government of Spain"
   ],
   "summary": "A power failure across mainland Spain and Portugal on 2025-04-28 (28 April 2025) stopped container handling at Spanish ports for the rest of that day. Supply was lost in the early afternoon. At Algeciras the port authority activated its crisis committee and the first level of its self protection plan, the two container terminals stopped, and lorries could not be processed because the customs system was unavailable, while ferry links to Ceuta and Tánger Med continued on a standby generator. Container terminals at Barcelona also stopped, and Valencia regained power at 21:30. Trade press reported on 2025-04-29 that terminals at Algeciras, Barcelona and Valencia were working again, with traffic backed up but operations described as normal.",
   "timeline": [
    {
     "date": "2025-04-28",
     "date_precision": "day",
     "text": "Electricity supply fails across mainland Spain and Portugal in the early afternoon. Red Eléctrica activates its response protocol and begins restoring the transmission grid.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2025-04-28",
     "date_precision": "day",
     "text": "The Algeciras port authority activates a crisis committee and level one of its self protection plan. Both container terminals stop, the customs system is unavailable so lorries cannot be processed, and ferry links to Ceuta and Tánger Med run on a standby generator.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2025-04-29",
     "date_precision": "day",
     "text": "Red Eléctrica reports that all transmission substations were energised by 04:00 and that 99.95 per cent of peninsular demand was restored by 07:00.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2025-04-29",
     "date_precision": "day",
     "text": "Trade press reports that container terminals at Algeciras restarted in the morning, that Barcelona had resumed after its terminals stopped, and that Valencia regained power at 21:30 the previous evening and was working with accumulated traffic.",
     "source_ids": [
      "s5"
     ]
    },
    {
     "date": "2025-06-17",
     "date_precision": "day",
     "text": "The Spanish government presents the report of its committee on the electricity crisis, which attributes the failure to an overvoltage of multifactorial origin and finds no evidence of a cyber attack.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2026-03-20",
     "date_precision": "day",
     "text": "ENTSO-E publishes the final report of its expert panel, which attributes the blackout to a combination of interacting factors in voltage and reactive power control and to cascading generator disconnections.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The Spanish government's committee reported on 2025-06-17 that the blackout had a multifactorial origin ending in an overvoltage, and found no evidence of a cyber attack. The ENTSO-E expert panel's final report of 2026-03-20 reached a similar conclusion, citing oscillations, gaps in voltage and reactive power control and cascading generator disconnections. Findings are no longer pending.",
    "attributed_by": "Government of Spain and ENTSO-E",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2025-04-29",
    "text": "Supply was restored overnight, with all transmission substations energised by 04:00 on 2025-04-29 and almost all demand served by 07:00. Container terminals at Algeciras, Barcelona and Valencia were reported working again that day, with accumulated traffic to clear.",
    "source_ids": [
     "s3",
     "s5"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "algeciras"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "valencia"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "barcelona"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.lamoncloa.gob.es/consejodeministros/resumenes/paginas/2025/170625-rueda-de-prensa-ministros.aspx",
     "publisher": "Government of Spain",
     "title": "El Gobierno presenta el informe sobre las causas del apagón, que se debió a una sobretensión de origen \"multifactorial\"",
     "published_date": "2025-06-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260913012629/https://www.lamoncloa.gob.es/consejodeministros/resumenes/paginas/2025/170625-rueda-de-prensa-ministros.aspx",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.entsoe.eu/news/2026/03/20/entso-e-publishes-expert-panel-final-report-on-28-april-2025-blackout-in-spain-and-portugal/",
     "publisher": "ENTSO-E",
     "title": "ENTSO-E Publishes Expert Panel Final Report on 28 April 2025 Blackout in Spain and Portugal",
     "published_date": "2026-03-20",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260913085754/https://www.entsoe.eu/news/2026/03/20/entso-e-publishes-expert-panel-final-report-on-28-april-2025-blackout-in-spain-and-portugal/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.ree.es/en/press-office/news/press-release/2025/04/red-electrica-response-to-the-incident-of-28-april",
     "publisher": "Red Eléctrica",
     "title": "Red Eléctrica's response to the incident of 28 April",
     "published_date": "2025-04-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260916012454/https://www.ree.es/en/press-office/news/press-release/2025/04/red-electrica-response-to-the-incident-of-28-april",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://www.elestrechodigital.com/2025/04/28/el-apagon-electrico-en-espana-paraliza-las-terminales-de-contenedores-del-puerto-de-algeciras/",
     "publisher": "El Estrecho Digital",
     "title": "El apagón eléctrico en España paraliza las terminales de contenedores del puerto de Algeciras",
     "published_date": "2025-04-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260107203132/https://www.elestrechodigital.com/2025/04/28/el-apagon-electrico-en-espana-paraliza-las-terminales-de-contenedores-del-puerto-de-algeciras/",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.diariodelpuerto.com/maritimo/los-puertos-retoman-su-actividad-con-relativa-normalidad-EI23810217",
     "publisher": "Diario del Puerto",
     "title": "Los puertos retoman su actividad con relativa normalidad",
     "published_date": "2025-04-29",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260114232446/https://www.diariodelpuerto.com/maritimo/los-puertos-retoman-su-actividad-con-relativa-normalidad-EI23810217",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The blackout, its restoration times and its cause are documented by the grid operator, the Spanish government and ENTSO-E, but the port level detail rests on trade and regional press reporting of what the port authorities said, rather than on port authority statements still online."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2025/power-blackout-spain-portugal-ports-2025/",
   "approved_at": "2026-09-24T00:10:52Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "algeciras",
     "comparison": "primary",
     "window_start": "2025-04-28",
     "window_end": "2025-04-29",
     "window_days": 2,
     "provisional": false,
     "baseline_start": "2025-02-24",
     "baseline_end": "2025-04-20",
     "baseline_days": 56,
     "baseline_value": 17.5,
     "observed_value": 12,
     "abs_change": -5.5,
     "delta_pct": -31.428571428571427,
     "z_score": -1.314751470267833,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:de1af41e3ec3",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "valencia",
     "comparison": "primary",
     "window_start": "2025-04-28",
     "window_end": "2025-04-29",
     "window_days": 2,
     "provisional": false,
     "baseline_start": "2025-02-24",
     "baseline_end": "2025-04-20",
     "baseline_days": 56,
     "baseline_value": 9,
     "observed_value": 8,
     "abs_change": -1,
     "delta_pct": -11.11111111111111,
     "z_score": -0.31622776601683794,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:d98b372d4214",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "barcelona",
     "comparison": "primary",
     "window_start": "2025-04-28",
     "window_end": "2025-04-29",
     "window_days": 2,
     "provisional": false,
     "baseline_start": "2025-02-24",
     "baseline_end": "2025-04-20",
     "baseline_days": 56,
     "baseline_value": 11.25,
     "observed_value": 12,
     "abs_change": 0.75,
     "delta_pct": 6.666666666666667,
     "z_score": 0.2165063509461097,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:be35a5ed9ab3",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "explosion-shahid-rajaee-port-bandar-abbas-2025",
   "url_year": 2025,
   "title": "Explosion and fire at Shahid Rajaee Port near Bandar Abbas",
   "event_type": "fire",
   "status": "ended",
   "start_date": "2025-04-26",
   "start_precision": "day",
   "end_date": "2025-04-28",
   "end_precision": "day",
   "first_reported": "2025-04-27",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "A container storage area inside the port was out of service for more than 72 hours, with officials saying container removal alone could take up to two weeks, while the rest of the port kept working.",
   "scope": "port",
   "entities": {
    "ports": [
     "bandar-shahid-rajaee"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ir"
    ]
   },
   "commodities": [
    "containers",
    "chemicals"
   ],
   "organisations": [
    "Ports and Maritime Organization of Iran",
    "Islamic Republic of Iran Customs Administration",
    "Iranian Ministry of Interior"
   ],
   "summary": "An explosion followed by a fire struck Shahid Rajaee Port near Bandar Abbas in southern Iran on 2025-04-26 (26 April 2025), in a container storage area of the country's largest container port. Iranian officials said the blast involved chemicals held in containers. The Islamic Republic of Iran Customs Administration said clearance for foreign transit, exports and imports restarted at the port on 2025-04-27, and the Ports and Maritime Organization said loading and unloading continued at the remaining terminals and yards, with 26 ships alongside. Fires at the site were reported extinguished on 2025-04-28. Officials said removing damaged containers could take up to two weeks. The Iranian interior ministry attributed the explosion to safety failures, and a government investigation was ordered.",
   "timeline": [
    {
     "date": "2025-04-26",
     "date_precision": "day",
     "text": "An explosion and fire break out in a container storage area at Shahid Rajaee Port near Bandar Abbas.",
     "source_ids": [
      "s1",
      "s3",
      "s4"
     ]
    },
    {
     "date": "2025-04-27",
     "date_precision": "day",
     "text": "The customs administration says clearance for foreign transit, exports and imports has resumed at the port, starting with essential goods and production shipments.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2025-04-28",
     "date_precision": "day",
     "text": "Fires at the port are reported extinguished about two days after the blast. Officials say sporadic fires continued in flammable cargo and that clearing damaged containers could take up to two weeks.",
     "source_ids": [
      "s3",
      "s4"
     ]
    },
    {
     "date": "2025-04-28",
     "date_precision": "day",
     "text": "The Ports and Maritime Organization says loading and unloading are running normally at the unaffected terminals and yards, with 26 ships alongside, and that rebuilding of the damaged area has begun.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "under_investigation",
    "text": "Iranian officials said the explosion involved chemicals stored in containers at the port and pointed to safety failures, and the interior ministry said people at fault had been identified and summoned. A government investigation was ordered and its findings had not been tested in court.",
    "attributed_by": "Iranian Ministry of Interior and the government investigation into the explosion",
    "source_ids": [
     "s3",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2025-04-28",
    "text": "Customs clearance restarted on 2025-04-27 and fires were reported extinguished on 2025-04-28. The port authority said cargo handling at the undamaged terminals and yards was running normally, while clearing the damaged container area continued.",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "bandar-shahid-rajaee"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "bandar-shahid-rajaee"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.tehrantimes.com/news/512316/Cargo-transit-transport-operations-resume-at-Shahid-Rajaee-Port",
     "publisher": "Tehran Times",
     "title": "Cargo transit, transport operations resume at Shahid Rajaee Port",
     "published_date": "2025-04-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260203004440/https://www.tehrantimes.com/news/512316/Cargo-transit-transport-operations-resume-at-Shahid-Rajaee-Port",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://en.irna.ir/news/85817953/Operations-are-back-to-normal-at-blast-hit-Shahid-Rajaee-Port",
     "publisher": "Islamic Republic News Agency",
     "title": "Operations are back to normal at blast-hit Shahid Rajaee Port: Official",
     "published_date": null,
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250713033447/https://en.irna.ir/news/85817953/Operations-are-back-to-normal-at-blast-hit-Shahid-Rajaee-Port",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.aljazeera.com/news/2025/4/28/fires-continue-to-rage-at-key-iran-port-as-death-toll-rises-to-46",
     "publisher": "Al Jazeera",
     "title": "Fires extinguished at key Iran port as explosion death toll rises to 70",
     "published_date": "2025-04-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260208075844/https://www.aljazeera.com/news/2025/4/28/fires-continue-to-rage-at-key-iran-port-as-death-toll-rises-to-46",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://gcaptain.com/fire-at-irans-bandar-abbas-port-contained-as-death-toll-rises/",
     "publisher": "gCaptain",
     "title": "Fire at Iran's Bandar Abbas Port Contained as Death Toll Rises",
     "published_date": "2025-04-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260511152545/https://gcaptain.com/fire-at-irans-bandar-abbas-port-contained-as-death-toll-rises/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The date of the explosion and the restart of customs and cargo handling are reported consistently by Iranian state media and two international outlets, but official Iranian figures for the human toll were revised more than once and no port authority page could be retrieved directly."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2025/explosion-shahid-rajaee-port-bandar-abbas-2025/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "bandar-shahid-rajaee",
     "comparison": "primary",
     "window_start": "2025-04-26",
     "window_end": "2025-04-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2025-02-22",
     "baseline_end": "2025-04-18",
     "baseline_days": 56,
     "baseline_value": 0.3333333333333333,
     "observed_value": 0,
     "abs_change": -0.3333333333333333,
     "delta_pct": null,
     "z_score": -0.3333333333333333,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ee839c5b522e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "bandar-shahid-rajaee",
     "comparison": "primary",
     "window_start": "2025-04-26",
     "window_end": "2025-04-28",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2025-02-22",
     "baseline_end": "2025-04-18",
     "baseline_days": 56,
     "baseline_value": 1.8333333333333333,
     "observed_value": 1,
     "abs_change": -0.8333333333333333,
     "delta_pct": null,
     "z_score": -0.5270462766947299,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:53d84f7416ff",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "longshore-lockout-montreal-2024",
   "url_year": 2024,
   "title": "Lockout of longshore workers closes Port of Montreal terminals",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2024-11-10",
   "start_precision": "day",
   "end_date": "2024-11-16",
   "end_precision": "day",
   "first_reported": "2024-11-10",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Port wide stoppage of 24 hours to seven days; longshore work at the Port of Montreal stopped from 21:00 on 2024-11-10 until terminals restarted at 07:00 on 2024-11-16.",
   "scope": "port",
   "entities": {
    "ports": [
     "montreal"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ca"
    ],
    "terminals": [
     "Termont Viau",
     "Termont Maisonneuve",
     "Montreal Gateway Terminals"
    ]
   },
   "commodities": [
    "containers",
    "general-cargo"
   ],
   "organisations": [
    "Maritime Employers Association",
    "Canadian Union of Public Employees Local 375",
    "Montreal Port Authority",
    "Canada Industrial Relations Board"
   ],
   "summary": "On 2024-11-10 (10 November 2024) the Maritime Employers Association locked out about 1,200 longshore workers at the Port of Montreal from 21:00, after members of Canadian Union of Public Employees Local 375 voted 99.7 percent against what the association called its final offer. Container handling stopped, while the port authority said the Bickerdike, liquid bulk and grain terminals would keep working. The lockout followed an overtime strike from 2024-10-10 and an open ended strike at the two Termont terminals from 2024-10-31. On 2024-11-12 the federal labour minister directed the Canada Industrial Relations Board to order operations to resume and to impose binding arbitration. Work restarted at 07:00 on 2024-11-16 (16 November 2024) under a board order.",
   "timeline": [
    {
     "date": "2024-10-31",
     "date_precision": "day",
     "text": "An open ended strike begins at the two Termont terminals at 11:00, following an overtime strike across the port from 2024-10-10.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2024-11-07",
     "date_precision": "day",
     "text": "The employers' association submits what it calls its final offer and sets a deadline of 20:00 on 2024-11-10 for a reply.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2024-11-10",
     "date_precision": "day",
     "text": "Members vote 99.7 percent to reject the offer and the association locks out longshore workers from 21:00. The port authority says the Bickerdike, liquid bulk and grain terminals stay open.",
     "source_ids": [
      "s3",
      "s5"
     ]
    },
    {
     "date": "2024-11-12",
     "date_precision": "day",
     "text": "The federal labour minister directs the Canada Industrial Relations Board to order that operations resume at the ports and to impose final and binding arbitration.",
     "source_ids": [
      "s6"
     ]
    },
    {
     "date": "2024-11-14",
     "date_precision": "day",
     "text": "The labour board orders operations at the Port of Montreal to resume at 07:00 on 2024-11-16, with work assignments issued the evening before.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2024-11-16",
     "date_precision": "day",
     "text": "Longshore workers return at 07:00 at all terminals. The port authority says clearing the goods waiting at the port and in transit will take weeks.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The employers' association locked out longshore workers after members of Canadian Union of Public Employees Local 375 rejected its final offer, in a dispute over pay and scheduling that had run since the collective agreement expired on 2023-12-31. The union said the association would not negotiate and had sought government intervention instead.",
    "attributed_by": "Maritime Employers Association and Canadian Union of Public Employees Local 375",
    "source_ids": [
     "s1",
     "s3",
     "s5"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2024-11-16",
    "text": "After the federal labour minister directed binding arbitration, the Canada Industrial Relations Board ordered operations to resume and longshore work restarted at 07:00 on 2024-11-16 at all Port of Montreal terminals, with the previous agreement extended.",
    "source_ids": [
     "s1",
     "s4",
     "s6"
    ]
   },
   "related_events": [
    "foremen-lockout-british-columbia-ports-2024"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "montreal"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "montreal"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.mea.ca/en/info-nego/2024-negotiation-updates/",
     "publisher": "Maritime Employers Association",
     "title": "2024 Negotiation updates",
     "published_date": "2024-11-25",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813185853/https://www.mea.ca/en/info-nego/2024-negotiation-updates/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.cbc.ca/news/canada/montreal/port-of-montreal-dockworkers-facing-lockout-sunday-night-1.7379840",
     "publisher": "CBC News",
     "title": "Port of Montreal lockout underway after dockworkers overwhelmingly vote to reject employer offer",
     "published_date": "2024-11-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250929174330/https://www.cbc.ca/news/canada/montreal/port-of-montreal-dockworkers-facing-lockout-sunday-night-1.7379840",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.cbc.ca/news/canada/montreal/operations-resume-port-of-montreal-1.7384521",
     "publisher": "CBC News",
     "title": "Operations to resume at Port of Montreal Saturday after government orders end to lockout",
     "published_date": "2024-11-15",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251109153321/https://www.cbc.ca/news/canada/montreal/operations-resume-port-of-montreal-1.7384521",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://gcaptain.com/montreal-port-locks-out-dockworkers-adding-to-canadas-supply-chain-woes/",
     "publisher": "gCaptain",
     "title": "Montreal Port Locks Out Dockworkers, Adding To Canada's Supply-Chain Woes",
     "published_date": "2024-11-11",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250809023058/https://gcaptain.com/montreal-port-locks-out-dockworkers-adding-to-canadas-supply-chain-woes/",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://www.cbc.ca/news/politics/labour-arbitration-ports-montreal-bc-1.7380960",
     "publisher": "CBC News",
     "title": "Labour minister sends ports dispute to binding arbitration, orders end to lockouts",
     "published_date": "2024-11-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251031190054/https://www.cbc.ca/news/politics/labour-arbitration-ports-montreal-bc-1.7380960",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The lockout, the labour board order and the resumption time come from the employers' association's own dated updates and the union's statement, with consistent reporting by CBC News and a trade outlet."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2024/longshore-lockout-montreal-2024/",
   "approved_at": "2026-09-16T18:21:42Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "montreal",
     "comparison": "primary",
     "window_start": "2024-11-10",
     "window_end": "2024-11-16",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2024-09-08",
     "baseline_end": "2024-11-02",
     "baseline_days": 56,
     "baseline_value": 1.1428571428571428,
     "observed_value": 0.5714285714285714,
     "abs_change": -0.5714285714285714,
     "delta_pct": null,
     "z_score": -0.5714285714285714,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:5ddc44278462",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "montreal",
     "comparison": "primary",
     "window_start": "2024-11-10",
     "window_end": "2024-11-16",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2024-09-08",
     "baseline_end": "2024-11-02",
     "baseline_days": 56,
     "baseline_value": 4,
     "observed_value": 2.857142857142857,
     "abs_change": -1.1428571428571428,
     "delta_pct": -28.57142857142857,
     "z_score": -0.5714285714285714,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:06ff8573d3c2",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "foremen-lockout-british-columbia-ports-2024",
   "url_year": 2024,
   "title": "Lockout of ship and dock foremen stops British Columbia ports",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2024-11-04",
   "start_precision": "day",
   "end_date": "2024-11-14",
   "end_precision": "day",
   "first_reported": "2024-11-04",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port closure of seven days or more; container terminals across British Columbia were shut by the lockout from 2024-11-04 until operations resumed on 2024-11-14.",
   "scope": "regional",
   "entities": {
    "ports": [
     "vancouver-ca",
     "prince-rupert"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ca"
    ]
   },
   "commodities": [
    "containers",
    "general-cargo",
    "breakbulk"
   ],
   "organisations": [
    "British Columbia Maritime Employers Association",
    "International Longshore and Warehouse Union Ship and Dock Foremen Local 514",
    "Canada Industrial Relations Board",
    "Employment and Social Development Canada"
   ],
   "summary": "On 2024-11-04 (4 November 2024) the British Columbia Maritime Employers Association locked out more than 700 ship and dock foremen of International Longshore and Warehouse Union Local 514 at terminals across British Columbia, hours after the union began industry wide strike activity at 08:00. The lockout began on the 16:30 shift and did not apply to grain or cruise operations. Container work at Vancouver and Prince Rupert stopped. Talks broke off on 2024-11-09. On 2024-11-12 (12 November 2024) the federal labour minister directed the Canada Industrial Relations Board to order operations to resume and to impose binding arbitration. The board issued its order on 2024-11-13 and terminals restarted on 2024-11-14, with dispatching on the day shift and operations from 16:30.",
   "timeline": [
    {
     "date": "2024-11-04",
     "date_precision": "day",
     "text": "Local 514 begins industry wide strike activity at about 08:00, and the employers' association locks out foremen and other Local 514 members from the 16:30 shift, excluding grain and cruise work.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2024-11-09",
     "date_precision": "day",
     "text": "Talks break off after the employers' association reports no progress at the bargaining table, leaving terminals shut.",
     "source_ids": [
      "s5"
     ]
    },
    {
     "date": "2024-11-12",
     "date_precision": "day",
     "text": "The federal labour minister directs the Canada Industrial Relations Board to order that operations at the ports resume and to impose final and binding arbitration, and extends the existing collective agreements.",
     "source_ids": [
      "s5",
      "s6"
     ]
    },
    {
     "date": "2024-11-13",
     "date_precision": "day",
     "text": "The labour board orders the employers' association and its members to resume operations on 2024-11-14 and to continue them until it makes a final determination.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2024-11-14",
     "date_precision": "day",
     "text": "Operations restart, with dispatching on the day shift and maintenance and terminal operations from the 16:30 shift. The board schedules a hearing for 2024-11-18 on questions raised about the ministerial direction.",
     "source_ids": [
      "s2",
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The employers' association said it locked out Local 514 members in response to the union's strike notice and strike activity, to allow a safe and orderly wind down of operations after nearly two years of bargaining for a new agreement. The union was pressing its demands on pay and on terminal automation.",
    "attributed_by": "British Columbia Maritime Employers Association",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2024-11-14",
    "text": "The federal labour minister directed the Canada Industrial Relations Board to end the work stoppage and impose binding arbitration. The board ordered operations to resume, and terminals restarted on 2024-11-14 under extended terms of the previous agreement.",
    "source_ids": [
     "s2",
     "s4",
     "s5"
    ]
   },
   "related_events": [
    "longshore-lockout-montreal-2024"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "vancouver-ca"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "vancouver-ca"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "prince-rupert"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.bcmeanegotiations.com/local-514-bargaining-update-24/",
     "publisher": "British Columbia Maritime Employers Association",
     "title": "Local 514 Bargaining Update - ILWU Local 514 Strike Activity Commences",
     "published_date": "2024-11-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813185851/https://www.bcmeanegotiations.com/local-514-bargaining-update-24/",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.bcmeanegotiations.com/local-514-bargaining-update-resumption-of-operations-november-14/",
     "publisher": "British Columbia Maritime Employers Association",
     "title": "Local 514 Bargaining Update - Resumption of Operations - November 14",
     "published_date": "2024-11-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813185850/https://www.bcmeanegotiations.com/local-514-bargaining-update-resumption-of-operations-november-14/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.cbc.ca/news/canada/british-columbia/port-lock-out-no-deal-reached-contract-dispute-foremen-1.7372707",
     "publisher": "CBC News",
     "title": "B.C. port employers launch lockout at terminals over contract dispute with foremen",
     "published_date": "2024-11-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260113085441/https://www.cbc.ca/news/canada/british-columbia/port-lock-out-no-deal-reached-contract-dispute-foremen-1.7372707",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.cbc.ca/news/canada/british-columbia/bc-port-lockout-operations-resume-1.7383369",
     "publisher": "CBC News",
     "title": "B.C. port operations to resume after government orders end to lockout",
     "published_date": "2024-11-14",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260116232709/https://www.cbc.ca/news/canada/british-columbia/bc-port-lockout-operations-resume-1.7383369",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.cbc.ca/news/politics/labour-arbitration-ports-montreal-bc-1.7380960",
     "publisher": "CBC News",
     "title": "Labour minister sends ports dispute to binding arbitration, orders end to lockouts",
     "published_date": "2024-11-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251031190054/https://www.cbc.ca/news/politics/labour-arbitration-ports-montreal-bc-1.7380960",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://maritime-executive.com/article/canada-orders-binding-arbitration-to-reopen-bc-and-montreal-ports",
     "publisher": "The Maritime Executive",
     "title": "Canada Orders Binding Arbitration to Reopen BC and Montreal Ports",
     "published_date": "2024-11-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260615210356/https://maritime-executive.com/article/canada-orders-binding-arbitration-to-reopen-bc-and-montreal-ports",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The lockout start and the resumption of operations are set out in the employers' association's own bargaining updates, and the ministerial direction and labour board order are reported by CBC News and a trade outlet."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2024/foremen-lockout-british-columbia-ports-2024/",
   "approved_at": "2026-09-16T18:21:42Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "vancouver-ca",
     "comparison": "primary",
     "window_start": "2024-11-04",
     "window_end": "2024-11-14",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2024-09-02",
     "baseline_end": "2024-10-27",
     "baseline_days": 56,
     "baseline_value": 6.590909090909091,
     "observed_value": 5.090909090909091,
     "abs_change": -1.5,
     "delta_pct": -22.758620689655174,
     "z_score": -0.5669467095138409,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:ec17ab3b4b9a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "vancouver-ca",
     "comparison": "primary",
     "window_start": "2024-11-04",
     "window_end": "2024-11-14",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2024-09-02",
     "baseline_end": "2024-10-27",
     "baseline_days": 56,
     "baseline_value": 0.9545454545454546,
     "observed_value": 0.09090909090909091,
     "abs_change": -0.8636363636363636,
     "delta_pct": null,
     "z_score": -0.8636363636363636,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:336fbd6490d7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "prince-rupert",
     "comparison": "primary",
     "window_start": "2024-11-04",
     "window_end": "2024-11-14",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2024-09-02",
     "baseline_end": "2024-10-27",
     "baseline_days": 56,
     "baseline_value": 1.2727272727272727,
     "observed_value": 1,
     "abs_change": -0.2727272727272727,
     "delta_pct": null,
     "z_score": -0.2727272727272727,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:d14707f7cf62",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "dockworkers-strike-us-east-gulf-coast-ports-2024",
   "url_year": 2024,
   "title": "Dockworkers strike halts US East and Gulf Coast container ports",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2024-10-01",
   "start_precision": "day",
   "end_date": "2024-10-03",
   "end_precision": "day",
   "first_reported": "2024-10-01",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Port wide stoppage of 24 hours to seven days; container terminals from Maine to Texas stopped work from 2024-10-01 until job actions ceased on the evening of 2024-10-03.",
   "scope": "regional",
   "entities": {
    "ports": [
     "new-york-new-jersey",
     "baltimore",
     "norfolk",
     "wilmington-nc",
     "charleston",
     "savannah",
     "brunswick",
     "houston"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "us"
    ]
   },
   "commodities": [
    "containers",
    "vehicles",
    "general-cargo"
   ],
   "organisations": [
    "International Longshoremen's Association",
    "United States Maritime Alliance",
    "Georgia Ports Authority",
    "Port Houston",
    "North Carolina Ports"
   ],
   "summary": "From 2024-10-01 (1 October 2024) members of the International Longshoremen's Association struck container terminals at ports from Maine to Texas after contract talks with the United States Maritime Alliance failed, the union's first coastwide stoppage on the Atlantic and Gulf coasts in decades. The union said work stopped at 00:01 on 2024-10-01 at all Atlantic and Gulf Coast ports. Terminals at New York and New Jersey, Baltimore, Norfolk, Wilmington, Charleston, Savannah, Brunswick and Houston closed to vessel and gate operations, while automated and non ILA facilities continued. On the evening of 2024-10-03 (3 October 2024) the two sides announced a tentative wage agreement and an extension of the master contract to 2025-01-15, and said all job actions would cease immediately. Ports reopened through 2024-10-04.",
   "timeline": [
    {
     "date": "2024-10-01",
     "date_precision": "day",
     "text": "The strike begins at 00:01 local time after the master contract expires, stopping container work at ports from Maine to Texas, among them the terminals at Newark and Boston reported by the trade press.",
     "source_ids": [
      "s3",
      "s4"
     ]
    },
    {
     "date": "2024-10-03",
     "date_precision": "day",
     "text": "Four northeastern governors call on both sides to settle and say they will watch for price gouging while the stoppage continues.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2024-10-03",
     "date_precision": "day",
     "text": "The union and the employers' alliance announce a tentative agreement on wages and an extension of the master contract to 2025-01-15, stating that \"all current job actions will cease\" immediately.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2024-10-04",
     "date_precision": "day",
     "text": "Terminals reopen through the day. The Georgia Ports Authority resumes truck gates at Garden City Terminal at 06:00 and rail at 07:00, with vessel work at Brunswick that evening.",
     "source_ids": [
      "s1"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The union struck after negotiations with the United States Maritime Alliance over a new master contract broke down on wages and on protections against automation. The dispute ended with a tentative wage settlement and a contract extension, with automation left to further bargaining.",
    "attributed_by": "International Longshoremen's Association and United States Maritime Alliance",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2024-10-03",
    "text": "The union and the employers' alliance reached a tentative agreement on wages on the evening of 2024-10-03, extended the master contract to 2025-01-15 and said all job actions would cease immediately. Terminals resumed work through 2024-10-04.",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "new-york-new-jersey"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "savannah"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "houston"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "norfolk"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://gaports.com/blog/gpa-is-reopening-october-3/",
     "publisher": "Georgia Ports Authority",
     "title": "Reopening plans after October 1 work stoppage",
     "published_date": "2024-10-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260317000351/https://gaports.com/blog/gpa-is-reopening-october-3/",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.governor.ny.gov/news/joint-statement-governor-kathy-hochul-governor-phil-murphy-governor-maura-healey-and-governor",
     "publisher": "Office of the Governor of New York",
     "title": "Joint Statement from Governor Kathy Hochul, Governor Phil Murphy, Governor Maura Healey and Governor Wes Moore",
     "published_date": "2024-10-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260517163341/https://www.governor.ny.gov/news/joint-statement-governor-kathy-hochul-governor-phil-murphy-governor-maura-healey-and-governor",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.supplychaindive.com/news/port-strike-usmx-ila-tentative-agreement/728901/",
     "publisher": "Supply Chain Dive",
     "title": "ILA port strike ends through tentative deal",
     "published_date": "2024-10-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260609215559/https://www.supplychaindive.com/news/port-strike-usmx-ila-tentative-agreement/728901/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.manufacturingdive.com/news/east-coast-port-strike-ila-usmx/728490/",
     "publisher": "Manufacturing Dive",
     "title": "ILA strike begins, disrupting East and Gulf Coast ports",
     "published_date": "2024-10-01",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260612013443/https://www.manufacturingdive.com/news/east-coast-port-strike-ila-usmx/728490/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The start, the settlement and the resumption times are set out by the Georgia Ports Authority, which quotes the joint statement of the union and the employers' alliance, with consistent reporting in two trade outlets."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2024/dockworkers-strike-us-east-gulf-coast-ports-2024/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "houston",
     "comparison": "primary",
     "window_start": "2024-10-01",
     "window_end": "2024-10-03",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2024-07-30",
     "baseline_end": "2024-09-23",
     "baseline_days": 56,
     "baseline_value": 2.1666666666666665,
     "observed_value": 0,
     "abs_change": -2.1666666666666665,
     "delta_pct": null,
     "z_score": -1.461396645532623,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:8c84c41a7bc9",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "savannah",
     "comparison": "primary",
     "window_start": "2024-10-01",
     "window_end": "2024-10-03",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2024-07-30",
     "baseline_end": "2024-09-23",
     "baseline_days": 56,
     "baseline_value": 4.833333333333333,
     "observed_value": 0,
     "abs_change": -4.833333333333333,
     "delta_pct": -100,
     "z_score": -2.1615323782497966,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c8d92735c4f3",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "new-york-new-jersey",
     "comparison": "primary",
     "window_start": "2024-10-01",
     "window_end": "2024-10-03",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2024-07-30",
     "baseline_end": "2024-09-23",
     "baseline_days": 56,
     "baseline_value": 6.333333333333333,
     "observed_value": 0.3333333333333333,
     "abs_change": -6,
     "delta_pct": -94.73684210526316,
     "z_score": -2.4494897427831783,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:7e9ef1d844a0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "norfolk",
     "comparison": "primary",
     "window_start": "2024-10-01",
     "window_end": "2024-10-03",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2024-07-30",
     "baseline_end": "2024-09-23",
     "baseline_days": 56,
     "baseline_value": 1.8333333333333333,
     "observed_value": 0,
     "abs_change": -1.8333333333333333,
     "delta_pct": null,
     "z_score": -1.296362432175337,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:f767159f9b24",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "port-congestion-singapore-2024",
   "url_year": 2024,
   "title": "Container ships wait for berths at the Port of Singapore",
   "event_type": "congestion-episode",
   "status": "ended",
   "start_date": "2024-05-01",
   "start_precision": "month",
   "end_date": "2024-07-01",
   "end_precision": "month",
   "first_reported": "2024-05-30",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Berth waiting of two to three days, and longer in some cases, affected one port for several weeks without a stoppage, which sits at the moderate level for a port level disruption of more than 24 hours.",
   "scope": "port",
   "entities": {
    "ports": [
     "singapore"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "sg"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Maritime and Port Authority of Singapore",
    "PSA Singapore",
    "Ministry of Transport, Singapore"
   ],
   "summary": "Container ships waited longer for berths at the Port of Singapore from May 2024, and the port operator said waiting had fallen back to two days or less by 2024-07-10 (10 July 2024). The Maritime and Port Authority of Singapore said on 2024-05-30 (30 May 2024) that the average wait for a container berth was about two to three days, that about 90 percent of container ships were arriving off schedule against about 77 percent in 2023, and that diversions around the Cape of Good Hope had bunched arrivals. Container volumes in the first four months of 2024 were 13.36 million TEU, 8.8 percent above the same months of 2023. PSA reactivated berths and yard space at Keppel Terminal, opened further berths at Tuas Port and added staff.",
   "timeline": [
    {
     "date": "2024-05-30",
     "date_precision": "day",
     "text": "The Maritime and Port Authority of Singapore says the average wait for a container berth is about two to three days, blames off schedule arrivals and higher volumes, and reports weekly handling raised by PSA from 770,000 to 820,000 TEU.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2024-07-01",
     "date_precision": "day",
     "text": "A further berth opens at Tuas Port, with more planned for October and December, as trade press reports about 90 percent of container ships arriving off schedule and waits of up to seven days in some cases.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2024-07-10",
     "date_precision": "day",
     "text": "PSA says the average wait has come down to two days or less in recent weeks, and that it moved 7 percent more container volume in the first half of 2024 than a year earlier.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The authority said ships diverting around the Cape of Good Hope had disrupted arrival schedules worldwide and caused bunching, and that off schedule arrivals together with higher container volumes handled in Singapore had lengthened waits for a container berth.",
    "attributed_by": "Maritime and Port Authority of Singapore",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2024-07-10",
    "text": "Waiting for a berth fell back to two days or less by 2024-07-10 after PSA reactivated berths and yard space at Keppel Terminal, commissioned further berths at Tuas Port and added frontline staff.",
    "source_ids": [
     "s2"
    ]
   },
   "related_events": [],
   "no_effect_reason": "below_resolution",
   "no_effect_note": "The episode is dated to months rather than days, and it lengthened waiting rather than stopping calls, so it sits below the resolution of the daily port series we publish.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.mpa.gov.sg/media-centre/details/in-response-to-media-queries-on--vessels--extended-waiting-times-for-berths-in-the-port-of-singapore",
     "publisher": "Maritime and Port Authority of Singapore",
     "title": "In Response to Media Queries on Vessels' Extended Waiting Times for Berths in the Port of Singapore",
     "published_date": "2024-05-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260512183828/https://www.mpa.gov.sg/media-centre/details/in-response-to-media-queries-on--vessels--extended-waiting-times-for-berths-in-the-port-of-singapore",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.singaporepsa.com/wp-content/uploads/2024/07/240710-PSA-Group-and-Singapore-mitigate-impact-of-supply-chain-disruptions.pdf",
     "publisher": "PSA Singapore",
     "title": "PSA Group and Singapore Mitigate Impact of Global Supply Chain Disruptions",
     "published_date": "2024-07-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20241002065335/https://www.singaporepsa.com/wp-content/uploads/2024/07/240710-PSA-Group-and-Singapore-mitigate-impact-of-supply-chain-disruptions.pdf",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.maritime-executive.com/article/singapore-takes-steps-to-address-containership-congestion",
     "publisher": "The Maritime Executive",
     "title": "Singapore Takes Steps to Address Containership Congestion",
     "published_date": "2024-05-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260414212440/https://www.maritime-executive.com/article/singapore-takes-steps-to-address-containership-congestion",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.maritime-executive.com/article/singapore-backlog-continues-as-nearly-all-boxships-arrive-off-schedule",
     "publisher": "The Maritime Executive",
     "title": "Singapore Backlog Continues as Nearly All Boxships Arrive Off Schedule",
     "published_date": "2024-07-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260520013658/https://maritime-executive.com/article/singapore-backlog-continues-as-nearly-all-boxships-arrive-off-schedule",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The waiting times, the causes and the mitigation steps come from the port authority and the terminal operator, but neither gives a start or end date, so the start is dated to May 2024 from the first official statement and the end to July 2024, when the operator reported waiting back at two days or less."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2024/port-congestion-singapore-2024/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  },
  {
   "id": "ship-strikes-key-bridge-baltimore-2024",
   "url_year": 2024,
   "title": "Ship strikes Key Bridge and closes the Baltimore ship channel",
   "event_type": "collision-or-casualty",
   "status": "ended",
   "start_date": "2024-03-26",
   "start_precision": "day",
   "end_date": "2024-06-10",
   "end_precision": "day",
   "first_reported": "2024-03-26",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port closure of seven days or more; the deep draft channel serving the Port of Baltimore was blocked from 2024-03-26 until its restoration on 2024-06-10.",
   "scope": "port",
   "entities": {
    "ports": [
     "baltimore"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "us"
    ]
   },
   "commodities": [
    "containers",
    "vehicles"
   ],
   "vessels": [
    {
     "name": "Dali"
    }
   ],
   "organisations": [
    "National Transportation Safety Board",
    "U.S. Army Corps of Engineers",
    "U.S. Coast Guard",
    "U.S. Navy Supervisor of Salvage and Diving",
    "Maryland Transportation Authority",
    "Maryland Department of the Environment",
    "Synergy Marine"
   ],
   "summary": "On 2024-03-26 (26 March 2024) the container ship Dali lost electrical power on departure from Baltimore and struck a pier of the Francis Scott Key Bridge, which collapsed into the Patapsco River and blocked the Fort McHenry Federal Channel, the deep draft approach to the Port of Baltimore. Six highway workers on the bridge were killed. Temporary alternate channels for shallow draft vessels opened in early April, and a limited access channel 300 feet wide and 35 feet deep followed on 2024-04-25. The Dali was refloated on 2024-05-20 and the channel was widened to 400 feet. The Army Corps of Engineers and the Navy Supervisor of Salvage and Diving announced on 2024-06-10 (10 June 2024) that the channel had been restored to 700 feet wide and 50 feet deep after about 50,000 tons of wreckage were removed.",
   "timeline": [
    {
     "date": "2024-03-26",
     "date_precision": "day",
     "text": "The Dali contacts a pier of the Francis Scott Key Bridge at about 01:29 local time after a loss of electrical power. The bridge falls across the main ship channel, ending deep draft access to the Port of Baltimore.",
     "source_ids": [
      "s1",
      "s2",
      "s5"
     ]
    },
    {
     "date": "2024-04-02",
     "date_precision": "day",
     "text": "The first temporary alternate channel opens around the wreckage for shallow draft vessels, the first of the interim routes used while the main channel stays blocked.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2024-04-25",
     "date_precision": "day",
     "text": "A limited access channel 300 feet wide and 35 feet deep opens through the wreckage.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2024-05-20",
     "date_precision": "day",
     "text": "The Dali is refloated and moved from the site, and the federal channel is opened at 400 feet wide and 50 feet deep.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2024-06-10",
     "date_precision": "day",
     "text": "The Unified Command surveys the riverbed and certifies it safe for transit, and the Army Corps of Engineers and the Navy announce the channel restored to 700 feet wide and 50 feet deep.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2025-11-18",
     "date_precision": "day",
     "text": "The National Transportation Safety Board adopts its final report, finding the probable cause to be a blackout caused by a loose signal wire connection at a terminal block.",
     "source_ids": [
      "s1",
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The National Transportation Safety Board determined that the probable cause was a loss of electrical power caused by a loose signal wire connection to a terminal block, which stemmed from the improper installation of wire label banding and left the vessel without propulsion or steering near the bridge. The board said the bridge lacked countermeasures against a strike by an ocean going ship.",
    "attributed_by": "National Transportation Safety Board",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": {
    "deaths": 6,
    "injuries": 2,
    "as_of": "2025-11-18",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "resolution": {
    "date": "2024-06-10",
    "text": "Wreckage removal by the Army Corps of Engineers and the Navy Supervisor of Salvage and Diving restored the Fort McHenry Federal Channel to 700 feet wide and 50 feet deep on 2024-06-10, returning the Port of Baltimore to unrestricted deep draft access.",
    "source_ids": [
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "baltimore"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "baltimore"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.ntsb.gov/news/events/Pages/DCA24MM031-BMG.aspx",
     "publisher": "National Transportation Safety Board",
     "title": "Contact of containership Dali with the Francis Scott Key Bridge and subsequent bridge collapse",
     "published_date": "2025-11-18",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260823162137/https://www.ntsb.gov/news/events/Pages/DCA24MM031-BMG.aspx",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.ntsb.gov/investigations/Pages/DCA24MM031.aspx",
     "publisher": "National Transportation Safety Board",
     "title": "Contact of Containership Dali with Francis Scott Key Bridge and Subsequent Bridge Collapse",
     "published_date": "2025-11-18",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260830043938/https://www.ntsb.gov/investigations/Pages/DCA24MM031.aspx",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.army.mil/article/277129/usace_announces_full_restoration_of_baltimores_fort_mchenry_federal_channel",
     "publisher": "U.S. Army",
     "title": "USACE announces full restoration of Baltimore's Fort McHenry Federal Channel",
     "published_date": "2024-06-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260126033106/https://www.army.mil/article/277129/usace_announces_full_restoration_of_baltimores_fort_mchenry_federal_channel",
     "type": "official"
    },
    {
     "id": "s5",
     "url": "https://gcaptain.com/baltimore-bridge-hit-by-ship-major-collapse/",
     "publisher": "gCaptain",
     "title": "Baltimore Bridge Hit By Ship - Major Collapse",
     "published_date": "2024-03-26",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260312163102/https://gcaptain.com/baltimore-bridge-hit-by-ship-major-collapse/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The date and cause come from the National Transportation Safety Board investigation, and the channel milestones from the Army Corps of Engineers and the Unified Command that carried out the work."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2024/ship-strikes-key-bridge-baltimore-2024/",
   "approved_at": "2026-09-16T18:21:42Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "baltimore",
     "comparison": "year_ago",
     "window_start": "2023-03-28",
     "window_end": "2023-06-12",
     "window_days": 77,
     "provisional": false,
     "baseline_start": "2023-01-24",
     "baseline_end": "2023-03-20",
     "baseline_days": 56,
     "baseline_value": 5.071428571428571,
     "observed_value": 5.662337662337662,
     "abs_change": 0.5909090909090908,
     "delta_pct": 11.651728553137001,
     "z_score": 0.26426257915906604,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:8783e622906f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "baltimore",
     "comparison": "year_ago",
     "window_start": "2023-03-28",
     "window_end": "2023-06-12",
     "window_days": 77,
     "provisional": false,
     "baseline_start": "2023-01-24",
     "baseline_end": "2023-03-20",
     "baseline_days": 56,
     "baseline_value": 1.4285714285714286,
     "observed_value": 1.6363636363636365,
     "abs_change": 0.20779220779220786,
     "delta_pct": null,
     "z_score": 0.2077922077922078,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:5597fb6cad8a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "baltimore",
     "comparison": "primary",
     "window_start": "2024-03-26",
     "window_end": "2024-06-10",
     "window_days": 77,
     "provisional": false,
     "baseline_start": "2024-01-23",
     "baseline_end": "2024-03-18",
     "baseline_days": 56,
     "baseline_value": 5.5,
     "observed_value": 2.116883116883117,
     "abs_change": -3.383116883116883,
     "delta_pct": -61.5112160566706,
     "z_score": -1.5129758652953122,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:c6dfe8fc5c7d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "baltimore",
     "comparison": "primary",
     "window_start": "2024-03-26",
     "window_end": "2024-06-10",
     "window_days": 77,
     "provisional": false,
     "baseline_start": "2024-01-23",
     "baseline_end": "2024-03-18",
     "baseline_days": 56,
     "baseline_value": 1.5,
     "observed_value": 0.22077922077922077,
     "abs_change": -1.2792207792207793,
     "delta_pct": null,
     "z_score": -1.2792207792207793,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:c50a1d0d4dae",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "attacks-on-shipping-red-sea-2023",
   "url_year": 2023,
   "title": "Attacks on shipping in the Red Sea divert traffic around Africa",
   "event_type": "security-incident",
   "status": "ongoing",
   "start_date": "2023-11-19",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2023-11-21",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 5,
   "severity_basis": "A disruption documented by official sources across more than one region at once; governments and carriers have recorded attacks in the Red Sea and Gulf of Aden and the rerouting of services around the Cape of Good Hope since 2023.",
   "scope": "global",
   "entities": {
    "ports": [],
    "chokepoints": [
     "bab-el-mandeb-strait",
     "suez-canal",
     "cape-of-good-hope"
    ],
    "lanes": [
     "asia-north-europe",
     "asia-mediterranean"
    ],
    "countries": [
     "ye",
     "eg",
     "za"
    ]
   },
   "commodities": [
    "containers",
    "crude-oil",
    "refined-products",
    "vehicles"
   ],
   "vessels": [
    {
     "name": "Galaxy Leader",
     "imo": null
    }
   ],
   "organisations": [
    "Houthi movement",
    "Foreign, Commonwealth and Development Office",
    "Maersk"
   ],
   "summary": "On 2023-11-19 (19 November 2023) the vehicle carrier Galaxy Leader was seized in the Red Sea near Hodeidah, the first in a run of attacks on merchant ships that the United Kingdom government and other states attribute to the Houthi movement. Attacks with missiles, drones and boarding parties followed through the Bab el-Mandeb Strait and the Gulf of Aden. From 2023-12-15 (15 December 2023) Maersk paused its ships bound for the strait and then routed services around the Cape of Good Hope, and other carriers did the same, moving a large share of Asia to Europe traffic off the Suez route. Attacks paused between late 2025 and early 2026 and some services returned, then threats and rerouting resumed. As of 2026-09-15 (15 September 2026) no dated official announcement records an end.",
   "timeline": [
    {
     "date": "2023-11-19",
     "date_precision": "day",
     "text": "The vehicle carrier Galaxy Leader is boarded from a helicopter and taken to the Yemeni coast near Hodeidah with its crew aboard.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2023-11-21",
     "date_precision": "day",
     "text": "The United Kingdom government condemns what it calls the unlawful seizure of the ship by the Houthis and demands the release of vessel and crew.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2023-12-15",
     "date_precision": "day",
     "text": "Maersk instructs all of its vessels bound for the Bab el-Mandeb Strait to pause, citing a near miss involving one of its ships the day before and a further attack on a container ship.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-12-19",
     "date_precision": "day",
     "text": "Maersk says the paused ships will instead sail around Africa by way of the Cape of Good Hope.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2024-01-02",
     "date_precision": "day",
     "text": "After an attack on one of its ships, Maersk pauses all transits through the Red Sea and the Gulf of Aden until further notice and diverts them around the Cape.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2026-03-02",
     "date_precision": "day",
     "text": "After a pause in attacks from about November 2025, officials of the group are reported as saying they will resume attacks on merchant ships, and Maersk again moves selected services to the Cape route.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2026-09-13",
     "date_precision": "day",
     "text": "Reporting from the region describes Houthi control of the Yemeni Red Sea coast and says operators are still routing around the Cape rather than through the strait.",
     "source_ids": [
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "The United Kingdom government attributes the seizure of the Galaxy Leader and the wider campaign against merchant shipping to the Houthi movement, and says Iran has provided it with military and political support. The group has said its attacks target ships it links to Israel and its allies.",
    "attributed_by": "Foreign, Commonwealth and Development Office",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait"
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal"
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope"
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.gov.uk/government/news/seizure-of-mv-galaxy-leader-by-the-houthis-uk-statement",
     "publisher": "Foreign, Commonwealth and Development Office",
     "title": "Seizure of MV Galaxy Leader by the Houthis: UK statement",
     "published_date": "2023-11-21",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260411154608/https://www.gov.uk/government/news/seizure-of-mv-galaxy-leader-by-the-houthis-uk-statement",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.maersk.com/news/articles/2023/12/15/maersk-operations-through-red-sea-gulf-of-aden",
     "publisher": "Maersk",
     "title": "Maersk Operations through Red Sea / Gulf of Aden",
     "published_date": "2023-12-15",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260520012825/https://www.maersk.com/news/articles/2023/12/15/maersk-operations-through-red-sea-gulf-of-aden",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://maritime-executive.com/article/galaxy-leader-s-crewmembers-mark-one-year-in-houthi-captivity",
     "publisher": "The Maritime Executive",
     "title": "Galaxy Leader's Crewmembers Mark One Year in Houthi Captivity",
     "published_date": "2024-11-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260614094228/https://maritime-executive.com/article/galaxy-leader-s-crewmembers-mark-one-year-in-houthi-captivity",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://gcaptain.com/red-sea-corridor-slips-back-into-crisis-as-houthi-threats-resurface/",
     "publisher": "gCaptain",
     "title": "Red Sea Corridor Slips Back Into Crisis as Houthi Threats Resurface",
     "published_date": "2026-03-02",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260728183605/https://gcaptain.com/red-sea-corridor-slips-back-into-crisis-as-houthi-threats-resurface/",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.aljazeera.com/economy/2026/9/13/red-sea-nations-watch-as-houthis-seize-bab-al-mandeb-strait",
     "publisher": "Al Jazeera",
     "title": "Red Sea nations watch as Houthis seize Bab al-Mandeb strait",
     "published_date": "2026-09-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260914051614/https://www.aljazeera.com/economy/2026/9/13/red-sea-nations-watch-as-houthis-seize-bab-al-mandeb-strait",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The start date and the attribution of the seizure are confirmed by a United Kingdom government statement and the diversions by Maersk's own advisories, but the status in September 2026 rests on press reporting rather than a dated official announcement."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/attacks-on-shipping-red-sea-2023/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "year_ago",
     "window_start": "2022-11-20",
     "window_end": "2023-03-19",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2022-09-18",
     "baseline_end": "2022-11-12",
     "baseline_days": 56,
     "baseline_value": 18.079166666666666,
     "observed_value": 17.575,
     "abs_change": -0.5041666666666664,
     "delta_pct": -2.7886609817930386,
     "z_score": -0.11883322294940592,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:600b15911d07",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "year_ago",
     "window_start": "2022-11-20",
     "window_end": "2023-03-19",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2022-09-18",
     "baseline_end": "2022-11-12",
     "baseline_days": 56,
     "baseline_value": 43.0875,
     "observed_value": 41.96666666666667,
     "abs_change": -1.12083333333333,
     "delta_pct": -2.601295812784056,
     "z_score": -0.16897198269045502,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:77ccff835815",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "year_ago",
     "window_start": "2022-11-20",
     "window_end": "2023-03-19",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2022-09-18",
     "baseline_end": "2022-11-12",
     "baseline_days": 56,
     "baseline_value": 71.27083333333333,
     "observed_value": 71.56666666666666,
     "abs_change": 0.2958333333333343,
     "delta_pct": 0.4150833089739856,
     "z_score": 0.03523323727204531,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:65b8db2b98c9",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "year_ago",
     "window_start": "2022-11-20",
     "window_end": "2023-03-19",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2022-09-18",
     "baseline_end": "2022-11-12",
     "baseline_days": 56,
     "baseline_value": 70.45416666666667,
     "observed_value": 71.15,
     "abs_change": 0.69583333333334,
     "delta_pct": 0.9876397184931196,
     "z_score": 0.08229097510848066,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:29380ce2f6a5",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "primary",
     "window_start": "2023-11-19",
     "window_end": "2024-03-17",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.6375,
     "observed_value": 7.133333333333334,
     "abs_change": -12.504166666666666,
     "delta_pct": -63.67494165075324,
     "z_score": -2.8686525722731493,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2dd7cbe9ead3",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "primary",
     "window_start": "2023-11-19",
     "window_end": "2024-03-17",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.75,
     "observed_value": 54.05833333333333,
     "abs_change": -21.69166666666667,
     "delta_pct": -28.63586358635864,
     "z_score": -2.4719948377036465,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:270101932d6b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "primary",
     "window_start": "2023-11-19",
     "window_end": "2024-03-17",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.795833333333334,
     "observed_value": 70.26666666666667,
     "abs_change": 19.47083333333333,
     "delta_pct": 38.33155606595029,
     "z_score": 2.6265794325284415,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:761a80e411bb",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "primary",
     "window_start": "2023-11-19",
     "window_end": "2024-03-17",
     "window_days": 120,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.53333333333333,
     "observed_value": 47.84166666666667,
     "abs_change": -29.691666666666663,
     "delta_pct": -38.29535683576955,
     "z_score": -3.3727466923704865,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:0c379bcba900",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-03-18",
     "window_end": "2024-04-14",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 32,
     "abs_change": -45.57142857142857,
     "delta_pct": -58.74769797421731,
     "z_score": -5.176566432137533,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:1f95dfad749e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-03-18",
     "window_end": "2024-04-14",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 4.5,
     "abs_change": -15.142857142857142,
     "delta_pct": -77.0909090909091,
     "z_score": -3.474009684325649,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ed9bdf50e911",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-03-18",
     "window_end": "2024-04-14",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 39.5,
     "abs_change": -36.21428571428571,
     "delta_pct": -47.830188679245275,
     "z_score": -4.127000876074031,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:7c95e66d4455",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-03-18",
     "window_end": "2024-04-14",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 80.96428571428571,
     "abs_change": 30.107142857142854,
     "delta_pct": 59.19943820224719,
     "z_score": 4.061397930276927,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:df5fad3d4636",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-04-15",
     "window_end": "2024-05-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 32.785714285714285,
     "abs_change": -44.785714285714285,
     "delta_pct": -57.73480662983425,
     "z_score": -5.087315286755852,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:19a97b8a75a4",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-04-15",
     "window_end": "2024-05-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 40.642857142857146,
     "abs_change": -35.07142857142856,
     "delta_pct": -46.32075471698113,
     "z_score": -3.9967602172630166,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:af29087cd581",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-04-15",
     "window_end": "2024-05-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 92.64285714285714,
     "abs_change": 41.785714285714285,
     "delta_pct": 82.16292134831461,
     "z_score": 5.6368156327686885,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:27c178cb144d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-04-15",
     "window_end": "2024-05-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 4.964285714285714,
     "abs_change": -14.678571428571427,
     "delta_pct": -74.72727272727272,
     "z_score": -3.367495236457174,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:90d65b9f9d26",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-05-13",
     "window_end": "2024-06-09",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.17857142857143,
     "abs_change": -34.53571428571428,
     "delta_pct": -45.6132075471698,
     "z_score": -3.9357099084453533,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:e3c9a6ccb2cb",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-05-13",
     "window_end": "2024-06-09",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 92.85714285714286,
     "abs_change": 42.00000000000001,
     "delta_pct": 82.58426966292137,
     "z_score": 5.6657223796034,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ae43bd732d91",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-05-13",
     "window_end": "2024-06-09",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 4.928571428571429,
     "abs_change": -14.714285714285714,
     "delta_pct": -74.9090909090909,
     "z_score": -3.37568865552398,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:40bf37b85518",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-05-13",
     "window_end": "2024-06-09",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 31.964285714285715,
     "abs_change": -45.607142857142854,
     "delta_pct": -58.79373848987108,
     "z_score": -5.1806233023821555,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2e45b108418f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-06-10",
     "window_end": "2024-07-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.357142857142857,
     "abs_change": -14.285714285714285,
     "delta_pct": -72.72727272727272,
     "z_score": -3.2773676267223104,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5989d9569c68",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-06-10",
     "window_end": "2024-07-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 30.535714285714285,
     "abs_change": -47.035714285714285,
     "delta_pct": -60.6353591160221,
     "z_score": -5.342898112167031,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:0316bba320e8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-06-10",
     "window_end": "2024-07-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 92.21428571428571,
     "abs_change": 41.357142857142854,
     "delta_pct": 81.32022471910112,
     "z_score": 5.579002139099266,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a798469aa34d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-06-10",
     "window_end": "2024-07-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 38.035714285714285,
     "abs_change": -37.67857142857142,
     "delta_pct": -49.764150943396224,
     "z_score": -4.293871720175644,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:8655c9d31232",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-07-08",
     "window_end": "2024-08-04",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.428571428571429,
     "abs_change": -14.214285714285714,
     "delta_pct": -72.36363636363636,
     "z_score": -3.260980788588699,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c411a302321d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-07-08",
     "window_end": "2024-08-04",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 96.71428571428571,
     "abs_change": 45.857142857142854,
     "delta_pct": 90.1685393258427,
     "z_score": 6.186043822628202,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:76b4ccf20ae8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-07-08",
     "window_end": "2024-08-04",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 38.607142857142854,
     "abs_change": -37.107142857142854,
     "delta_pct": -49.00943396226415,
     "z_score": -4.228751390770136,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:7a8c5d035be5",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-07-08",
     "window_end": "2024-08-04",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 29.392857142857142,
     "abs_change": -48.17857142857143,
     "delta_pct": -62.10865561694291,
     "z_score": -5.472717959994932,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:38c024832341",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-08-05",
     "window_end": "2024-09-01",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 30.892857142857142,
     "abs_change": -46.67857142857143,
     "delta_pct": -60.17495395948435,
     "z_score": -5.302329409720812,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:86deb2897bf6",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-08-05",
     "window_end": "2024-09-01",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.857142857142857,
     "abs_change": -13.785714285714285,
     "delta_pct": -70.18181818181817,
     "z_score": -3.16265975978703,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d029b4385a02",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-08-05",
     "window_end": "2024-09-01",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 91.67857142857143,
     "abs_change": 40.82142857142858,
     "delta_pct": 80.26685393258428,
     "z_score": 5.506735272012488,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:601043312e7d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-08-05",
     "window_end": "2024-09-01",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 40.42857142857143,
     "abs_change": -35.28571428571428,
     "delta_pct": -46.60377358490565,
     "z_score": -4.021180340790082,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a729adba967c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-09-02",
     "window_end": "2024-09-29",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 87.78571428571429,
     "abs_change": 36.92857142857144,
     "delta_pct": 72.61235955056182,
     "z_score": 4.9815960378485675,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:fb37eb71c775",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-09-02",
     "window_end": "2024-09-29",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.57142857142857,
     "abs_change": -38.14285714285714,
     "delta_pct": -50.37735849056603,
     "z_score": -4.346781987817619,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:9c5bed2e9516",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-09-02",
     "window_end": "2024-09-29",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 30.821428571428573,
     "abs_change": -46.75,
     "delta_pct": -60.2670349907919,
     "z_score": -5.310443150210056,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d149b7dff9fa",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-09-02",
     "window_end": "2024-09-29",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.642857142857143,
     "abs_change": -14,
     "delta_pct": -71.27272727272728,
     "z_score": -3.2118202741878643,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:f25883cf98a1",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-09-30",
     "window_end": "2024-10-27",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 87.07142857142857,
     "abs_change": 36.214285714285715,
     "delta_pct": 71.20786516853933,
     "z_score": 4.885240215066197,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:817a8d190db1",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-09-30",
     "window_end": "2024-10-27",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.142857142857143,
     "abs_change": -13.5,
     "delta_pct": -68.72727272727273,
     "z_score": -3.0971124072525837,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:cd60daa21d58",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-09-30",
     "window_end": "2024-10-27",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 31,
     "abs_change": -46.57142857142857,
     "delta_pct": -60.03683241252302,
     "z_score": -5.290158798986947,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:1690f15d89d0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-09-30",
     "window_end": "2024-10-27",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.32142857142857,
     "abs_change": -38.39285714285714,
     "delta_pct": -50.70754716981132,
     "z_score": -4.375272131932528,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2f63dec1b91e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-10-28",
     "window_end": "2024-11-24",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.714285714285714,
     "abs_change": -12.928571428571427,
     "delta_pct": -65.81818181818181,
     "z_score": -2.966017702183691,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:4fea3865af5c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-10-28",
     "window_end": "2024-11-24",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 86.78571428571429,
     "abs_change": 35.92857142857144,
     "delta_pct": 70.64606741573036,
     "z_score": 4.846697885953248,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:4398cb73c486",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-10-28",
     "window_end": "2024-11-24",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.07142857142857,
     "abs_change": -38.64285714285714,
     "delta_pct": -51.0377358490566,
     "z_score": -4.403762276047438,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2bd237db58af",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-10-28",
     "window_end": "2024-11-24",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 33.392857142857146,
     "abs_change": -44.17857142857142,
     "delta_pct": -56.95211786372007,
     "z_score": -5.01834849259728,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:b3911ba030bd",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-11-25",
     "window_end": "2024-12-22",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.785714285714286,
     "abs_change": -12.857142857142858,
     "delta_pct": -65.45454545454545,
     "z_score": -2.9496308640500795,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:661da0d76b48",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-11-25",
     "window_end": "2024-12-22",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 79.32142857142857,
     "abs_change": 28.464285714285715,
     "delta_pct": 55.969101123595514,
     "z_score": 3.839779537877474,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ae77496274b7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-11-25",
     "window_end": "2024-12-22",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 35.82142857142857,
     "abs_change": -39.89285714285714,
     "delta_pct": -52.68867924528302,
     "z_score": -4.546212996621985,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c37444f1d540",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-11-25",
     "window_end": "2024-12-22",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 32,
     "abs_change": -45.57142857142857,
     "delta_pct": -58.74769797421731,
     "z_score": -5.176566432137534,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a619bc196ec0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2024-12-23",
     "window_end": "2025-01-19",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 35.714285714285715,
     "abs_change": -39.99999999999999,
     "delta_pct": -52.830188679245275,
     "z_score": -4.558423058385518,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:66713823b3ea",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2024-12-23",
     "window_end": "2025-01-19",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 81.14285714285714,
     "abs_change": 30.285714285714285,
     "delta_pct": 59.55056179775281,
     "z_score": 4.08548688597252,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:9392210ebd4c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-12-23",
     "window_end": "2025-01-19",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.785714285714286,
     "abs_change": -12.857142857142858,
     "delta_pct": -65.45454545454545,
     "z_score": -2.9496308640500795,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:0ec18b8efe99",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2024-12-23",
     "window_end": "2025-01-19",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 32.42857142857143,
     "abs_change": -45.14285714285714,
     "delta_pct": -58.195211786372,
     "z_score": -5.127883989202071,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:e8e248de7b9b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-01-20",
     "window_end": "2025-02-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 31.964285714285715,
     "abs_change": -45.607142857142854,
     "delta_pct": -58.79373848987108,
     "z_score": -5.1806233023821555,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:fbcfca95586a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-01-20",
     "window_end": "2025-02-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 87.5,
     "abs_change": 36.642857142857146,
     "delta_pct": 72.05056179775282,
     "z_score": 4.9430537087356194,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:017e600a7a19",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-01-20",
     "window_end": "2025-02-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 35.535714285714285,
     "abs_change": -40.17857142857142,
     "delta_pct": -53.06603773584905,
     "z_score": -4.578773161324738,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5fa464a37aa3",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-01-20",
     "window_end": "2025-02-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 7.321428571428571,
     "abs_change": -12.321428571428571,
     "delta_pct": -62.72727272727273,
     "z_score": -2.826729578047993,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:551a66c07262",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-02-17",
     "window_end": "2025-03-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 32.5,
     "abs_change": -45.07142857142857,
     "delta_pct": -58.103130755064456,
     "z_score": -5.119770248712827,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:35c22c058406",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-02-17",
     "window_end": "2025-03-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 36.142857142857146,
     "abs_change": -39.57142857142856,
     "delta_pct": -52.264150943396224,
     "z_score": -4.509582811331387,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:20d517472077",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-02-17",
     "window_end": "2025-03-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 7.357142857142857,
     "abs_change": -12.285714285714285,
     "delta_pct": -62.54545454545454,
     "z_score": -2.8185361589811873,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:b99ae7c64877",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-02-17",
     "window_end": "2025-03-16",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 85.39285714285714,
     "abs_change": 34.535714285714285,
     "delta_pct": 67.90730337078652,
     "z_score": 4.658804031527626,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ce2d10becca0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-03-17",
     "window_end": "2025-04-13",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.67857142857143,
     "abs_change": -38.03571428571428,
     "delta_pct": -50.23584905660376,
     "z_score": -4.334571926054086,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c03bc214d93b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-03-17",
     "window_end": "2025-04-13",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.892857142857143,
     "abs_change": -12.75,
     "delta_pct": -64.9090909090909,
     "z_score": -2.9250506068496622,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:248d35562e88",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-03-17",
     "window_end": "2025-04-13",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 80.67857142857143,
     "abs_change": 29.821428571428577,
     "delta_pct": 58.637640449438216,
     "z_score": 4.022855601163979,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:1cc25c3f93a4",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-03-17",
     "window_end": "2025-04-13",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 33.392857142857146,
     "abs_change": -44.17857142857142,
     "delta_pct": -56.95211786372007,
     "z_score": -5.01834849259728,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:939bcb6d7526",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-04-14",
     "window_end": "2025-05-11",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 32.035714285714285,
     "abs_change": -45.535714285714285,
     "delta_pct": -58.70165745856354,
     "z_score": -5.172509561892912,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:831e3199d569",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-04-14",
     "window_end": "2025-05-11",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 35.714285714285715,
     "abs_change": -39.99999999999999,
     "delta_pct": -52.830188679245275,
     "z_score": -4.558423058385518,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:3d447c8cf7d5",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-04-14",
     "window_end": "2025-05-11",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 85.21428571428571,
     "abs_change": 34.357142857142854,
     "delta_pct": 67.5561797752809,
     "z_score": 4.634715075832033,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ebaa28c51929",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-04-14",
     "window_end": "2025-05-11",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.535714285714286,
     "abs_change": -13.107142857142858,
     "delta_pct": -66.72727272727273,
     "z_score": -3.00698479751772,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:42b1d3233bef",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-05-12",
     "window_end": "2025-06-08",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 34.42857142857143,
     "abs_change": -43.14285714285714,
     "delta_pct": -55.61694290976058,
     "z_score": -4.900699255503245,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:4568e4ebd059",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-05-12",
     "window_end": "2025-06-08",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 93.60714285714286,
     "abs_change": 42.75000000000001,
     "delta_pct": 84.05898876404497,
     "z_score": 5.766895993524889,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:daf632b9de02",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-05-12",
     "window_end": "2025-06-08",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 7.25,
     "abs_change": -12.392857142857142,
     "delta_pct": -63.090909090909086,
     "z_score": -2.8431164161816045,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c2c6aacd87dd",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-05-12",
     "window_end": "2025-06-08",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.07142857142857,
     "abs_change": -38.64285714285714,
     "delta_pct": -51.0377358490566,
     "z_score": -4.403762276047438,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:01fbee07656f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-06-09",
     "window_end": "2025-07-06",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.035714285714286,
     "abs_change": -13.607142857142858,
     "delta_pct": -69.27272727272728,
     "z_score": -3.121692664453001,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:1976ab9e2e7e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-06-09",
     "window_end": "2025-07-06",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 91.64285714285714,
     "abs_change": 40.785714285714285,
     "delta_pct": 80.19662921348315,
     "z_score": 5.501917480873369,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:8180910df42f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-06-09",
     "window_end": "2025-07-06",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.42857142857143,
     "abs_change": -38.28571428571428,
     "delta_pct": -50.566037735849044,
     "z_score": -4.363062070168995,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a809badcf601",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-06-09",
     "window_end": "2025-07-06",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 30.642857142857142,
     "abs_change": -46.92857142857143,
     "delta_pct": -60.49723756906078,
     "z_score": -5.330727501433166,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:e0db357bcdbc",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-07-07",
     "window_end": "2025-08-03",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.892857142857143,
     "abs_change": -12.75,
     "delta_pct": -64.9090909090909,
     "z_score": -2.9250506068496622,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2dc76fdb5019",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-07-07",
     "window_end": "2025-08-03",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 96.85714285714286,
     "abs_change": 46.00000000000001,
     "delta_pct": 90.44943820224721,
     "z_score": 6.205314987184676,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:943649a4b1f8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-07-07",
     "window_end": "2025-08-03",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 38.357142857142854,
     "abs_change": -37.357142857142854,
     "delta_pct": -49.339622641509436,
     "z_score": -4.257241534885046,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:974e966e0989",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-07-07",
     "window_end": "2025-08-03",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 31.678571428571427,
     "abs_change": -45.89285714285714,
     "delta_pct": -59.162062615101284,
     "z_score": -5.2130782643391305,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5df4e474410b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-08-04",
     "window_end": "2025-08-31",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 97.57142857142857,
     "abs_change": 46.714285714285715,
     "delta_pct": 91.85393258426967,
     "z_score": 6.301670809967047,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ed6064ee1f63",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-08-04",
     "window_end": "2025-08-31",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.75,
     "abs_change": -12.892857142857142,
     "delta_pct": -65.63636363636364,
     "z_score": -2.9578242831168855,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:66ed7be1c086",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-08-04",
     "window_end": "2025-08-31",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 34.82142857142857,
     "abs_change": -42.75,
     "delta_pct": -55.110497237569064,
     "z_score": -4.856073682812404,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:3303738efa55",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-08-04",
     "window_end": "2025-08-31",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 38.464285714285715,
     "abs_change": -37.24999999999999,
     "delta_pct": -49.19811320754716,
     "z_score": -4.2450314731215135,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:0dfc1c4af00f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-09-01",
     "window_end": "2025-09-28",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.285714285714286,
     "abs_change": -13.357142857142858,
     "delta_pct": -68,
     "z_score": -3.0643387309853605,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:f26b63a4dd44",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-09-01",
     "window_end": "2025-09-28",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 34.32142857142857,
     "abs_change": -43.25,
     "delta_pct": -55.75506445672192,
     "z_score": -4.91286986623711,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:96449c9b6d61",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-09-01",
     "window_end": "2025-09-28",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 42.32142857142857,
     "abs_change": -33.39285714285714,
     "delta_pct": -44.10377358490566,
     "z_score": -3.8054692496343385,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:f25b6e279648",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-09-01",
     "window_end": "2025-09-28",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 93.78571428571429,
     "abs_change": 42.92857142857144,
     "delta_pct": 84.4101123595506,
     "z_score": 5.790984949220482,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:906ec0ad41c9",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-09-29",
     "window_end": "2025-10-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 35.67857142857143,
     "abs_change": -41.89285714285714,
     "delta_pct": -54.00552486187845,
     "z_score": -4.7587087969414785,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:712c061923fa",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-09-29",
     "window_end": "2025-10-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 95.82142857142857,
     "abs_change": 44.964285714285715,
     "delta_pct": 88.41292134831461,
     "z_score": 6.065599044150239,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:1a776b288ae6",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-09-29",
     "window_end": "2025-10-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.642857142857146,
     "abs_change": -34.07142857142856,
     "delta_pct": -44.99999999999999,
     "z_score": -3.8827996408033782,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:685c2652f430",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-09-29",
     "window_end": "2025-10-26",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.535714285714286,
     "abs_change": -13.107142857142858,
     "delta_pct": -66.72727272727273,
     "z_score": -3.00698479751772,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:6642c11f49a8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-10-27",
     "window_end": "2025-11-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 86.07142857142857,
     "abs_change": 35.214285714285715,
     "delta_pct": 69.24157303370787,
     "z_score": 4.750342063170878,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:44f806a72270",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-10-27",
     "window_end": "2025-11-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.5,
     "abs_change": -13.142857142857142,
     "delta_pct": -66.9090909090909,
     "z_score": -3.015178216584526,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:1066a1f1991b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-10-27",
     "window_end": "2025-11-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 42.035714285714285,
     "abs_change": -33.67857142857142,
     "delta_pct": -44.48113207547169,
     "z_score": -3.838029414337092,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5e05c36f84f5",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-10-27",
     "window_end": "2025-11-23",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 37.42857142857143,
     "abs_change": -40.14285714285714,
     "delta_pct": -51.749539594843455,
     "z_score": -4.559922154955006,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:db510efc9c47",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-11-24",
     "window_end": "2025-12-21",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.785714285714286,
     "abs_change": -13.857142857142858,
     "delta_pct": -70.54545454545455,
     "z_score": -3.179046597920641,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:83237d76f185",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-11-24",
     "window_end": "2025-12-21",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 33,
     "abs_change": -44.57142857142857,
     "delta_pct": -57.4585635359116,
     "z_score": -5.06297406528812,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:af392033e6cf",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-11-24",
     "window_end": "2025-12-21",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.67857142857143,
     "abs_change": -34.03571428571428,
     "delta_pct": -44.952830188679236,
     "z_score": -3.8787296202155344,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:9afe65454c47",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-11-24",
     "window_end": "2025-12-21",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 85.64285714285714,
     "abs_change": 34.785714285714285,
     "delta_pct": 68.39887640449439,
     "z_score": 4.692528569501455,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:30a5c2c63a0e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2025-12-22",
     "window_end": "2026-01-18",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 37.857142857142854,
     "abs_change": -37.857142857142854,
     "delta_pct": -50,
     "z_score": -4.314221823114865,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:be86a159006b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2025-12-22",
     "window_end": "2026-01-18",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 86.92857142857143,
     "abs_change": 36.07142857142858,
     "delta_pct": 70.92696629213485,
     "z_score": 4.865969050509722,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ec9d7a209ed7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-12-22",
     "window_end": "2026-01-18",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.035714285714286,
     "abs_change": -13.607142857142858,
     "delta_pct": -69.27272727272728,
     "z_score": -3.121692664453001,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:bda2bcc1964e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2025-12-22",
     "window_end": "2026-01-18",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 33.714285714285715,
     "abs_change": -43.857142857142854,
     "delta_pct": -56.537753222836095,
     "z_score": -4.9818366603956825,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:fad5dc038e4e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-01-19",
     "window_end": "2026-02-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.892857142857143,
     "abs_change": -13.75,
     "delta_pct": -70,
     "z_score": -3.154466340720224,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5e59f8cf2225",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-01-19",
     "window_end": "2026-02-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.07142857142857,
     "abs_change": -34.64285714285714,
     "delta_pct": -45.75471698113207,
     "z_score": -3.947919970208886,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:3e3f98943ac7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-01-19",
     "window_end": "2026-02-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 85.21428571428571,
     "abs_change": 34.357142857142854,
     "delta_pct": 67.5561797752809,
     "z_score": 4.634715075832033,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:45aa3d305e9a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-01-19",
     "window_end": "2026-02-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 34.607142857142854,
     "abs_change": -42.964285714285715,
     "delta_pct": -55.386740331491715,
     "z_score": -4.880414904280135,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:eb058eb38b07",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-02-16",
     "window_end": "2026-03-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.17857142857143,
     "abs_change": -34.53571428571428,
     "delta_pct": -45.6132075471698,
     "z_score": -3.9357099084453533,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:f86d8dd8bbff",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-02-16",
     "window_end": "2026-03-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 92.32142857142857,
     "abs_change": 41.464285714285715,
     "delta_pct": 81.5308988764045,
     "z_score": 5.593455512516622,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:6e97030ed9fb",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-02-16",
     "window_end": "2026-03-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 35.642857142857146,
     "abs_change": -41.92857142857142,
     "delta_pct": -54.05156537753222,
     "z_score": -4.762765667186101,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:49e679ba975c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-02-16",
     "window_end": "2026-03-15",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.642857142857143,
     "abs_change": -14,
     "delta_pct": -71.27272727272728,
     "z_score": -3.2118202741878643,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:faa82cb80239",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-03-16",
     "window_end": "2026-04-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.428571428571429,
     "abs_change": -14.214285714285714,
     "delta_pct": -72.36363636363636,
     "z_score": -3.260980788588699,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:25ef51171f34",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-03-16",
     "window_end": "2026-04-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.964285714285715,
     "abs_change": -33.74999999999999,
     "delta_pct": -44.5754716981132,
     "z_score": -3.8461694555127806,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5b3cecdc190d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-03-16",
     "window_end": "2026-04-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 37.5,
     "abs_change": -40.07142857142857,
     "delta_pct": -51.65745856353591,
     "z_score": -4.5518084144657625,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:6e9c265083d2",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-03-16",
     "window_end": "2026-04-12",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 91.5,
     "abs_change": 40.642857142857146,
     "delta_pct": 79.91573033707867,
     "z_score": 5.482646316316895,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:fe2ee2d89e00",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-04-13",
     "window_end": "2026-05-10",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 6.107142857142857,
     "abs_change": -13.535714285714285,
     "delta_pct": -68.9090909090909,
     "z_score": -3.1053058263193893,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:745a460fb97d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-04-13",
     "window_end": "2026-05-10",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 39.892857142857146,
     "abs_change": -35.82142857142856,
     "delta_pct": -47.311320754716974,
     "z_score": -4.0822306496077445,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:95bcc48ac728",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-04-13",
     "window_end": "2026-05-10",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 36,
     "abs_change": -41.57142857142857,
     "delta_pct": -53.591160220994475,
     "z_score": -4.722196964739882,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:38c840cbc6e9",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-04-13",
     "window_end": "2026-05-10",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 93.28571428571429,
     "abs_change": 42.42857142857144,
     "delta_pct": 83.42696629213486,
     "z_score": 5.723535873272822,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:fc7a9fd61512",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-05-11",
     "window_end": "2026-06-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 37.07142857142857,
     "abs_change": -40.5,
     "delta_pct": -52.209944751381215,
     "z_score": -4.600490857401225,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:97ab15715b87",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-05-11",
     "window_end": "2026-06-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 40.285714285714285,
     "abs_change": -35.42857142857142,
     "delta_pct": -46.79245283018867,
     "z_score": -4.037460423141458,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a6625ff80804",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-05-11",
     "window_end": "2026-06-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.964285714285714,
     "abs_change": -13.678571428571427,
     "delta_pct": -69.63636363636363,
     "z_score": -3.138079502586612,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:24dec74c9845",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-05-11",
     "window_end": "2026-06-07",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 96.78571428571429,
     "abs_change": 45.92857142857144,
     "delta_pct": 90.30898876404497,
     "z_score": 6.195679404906439,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:03266f6ccb5e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-06-08",
     "window_end": "2026-07-05",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 93.75,
     "abs_change": 42.892857142857146,
     "delta_pct": 84.33988764044945,
     "z_score": 5.786167158081364,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:0b4ca1659e45",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-06-08",
     "window_end": "2026-07-05",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.535714285714286,
     "abs_change": -14.107142857142858,
     "delta_pct": -71.81818181818183,
     "z_score": -3.2364005313882815,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a0193d8eee24",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-06-08",
     "window_end": "2026-07-05",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 35.82142857142857,
     "abs_change": -41.75,
     "delta_pct": -53.821362799263355,
     "z_score": -4.7424813159629915,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ca2d5b402943",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-06-08",
     "window_end": "2026-07-05",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 40.607142857142854,
     "abs_change": -35.107142857142854,
     "delta_pct": -46.367924528301884,
     "z_score": -4.0008302378508604,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:e0b2e2ef2211",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-07-06",
     "window_end": "2026-08-02",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 33.07142857142857,
     "abs_change": -44.5,
     "delta_pct": -57.36648250460405,
     "z_score": -5.054860324798876,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2d5f2d9ea3f0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-07-06",
     "window_end": "2026-08-02",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.32142857142857,
     "abs_change": -34.39285714285714,
     "delta_pct": -45.42452830188679,
     "z_score": -3.9194298260939764,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c4044fe8da89",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-07-06",
     "window_end": "2026-08-02",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.071428571428571,
     "abs_change": -14.571428571428571,
     "delta_pct": -74.18181818181819,
     "z_score": -3.342914979256757,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:7f4a0fb03951",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-07-06",
     "window_end": "2026-08-02",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 90.57142857142857,
     "abs_change": 39.714285714285715,
     "delta_pct": 78.08988764044945,
     "z_score": 5.3573837466998135,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:334c817de792",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-08-03",
     "window_end": "2026-08-30",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 27.642857142857142,
     "abs_change": -49.92857142857143,
     "delta_pct": -64.3646408839779,
     "z_score": -5.671504601981404,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:8b2420ed7619",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-08-03",
     "window_end": "2026-08-30",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 41.714285714285715,
     "abs_change": -33.99999999999999,
     "delta_pct": -44.90566037735848,
     "z_score": -3.87465959962769,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c737abe3fd47",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-08-03",
     "window_end": "2026-08-30",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 4.535714285714286,
     "abs_change": -15.107142857142858,
     "delta_pct": -76.90909090909092,
     "z_score": -3.4658162652588436,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ecfe32475182",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-08-03",
     "window_end": "2026-08-30",
     "window_days": 28,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 90.64285714285714,
     "abs_change": 39.785714285714285,
     "delta_pct": 78.23033707865169,
     "z_score": 5.367019328978051,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:57fec2fb3329",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-13",
     "window_days": 14,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 26.357142857142858,
     "abs_change": -51.21428571428571,
     "delta_pct": -66.02209944751381,
     "z_score": -5.8175519307877925,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:55fb2926c713",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-20",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 40.42857142857143,
     "abs_change": -35.28571428571428,
     "delta_pct": -46.60377358490565,
     "z_score": -4.021180340790082,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:8b5b75b1a504",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-20",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 77.57142857142857,
     "observed_value": 25.80952380952381,
     "abs_change": -51.76190476190476,
     "delta_pct": -66.7280540208717,
     "z_score": -5.879757274538662,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:7a5f92349a75",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-20",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.285714285714286,
     "abs_change": -14.357142857142858,
     "delta_pct": -73.0909090909091,
     "z_score": -3.293754464855922,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:dedc24ba98e8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-13",
     "window_days": 14,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 75.71428571428571,
     "observed_value": 39.714285714285715,
     "abs_change": -35.99999999999999,
     "delta_pct": -47.54716981132075,
     "z_score": -4.102580752546966,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ec18ef20d923",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "bab-el-mandeb-strait",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-13",
     "window_days": 14,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 19.642857142857142,
     "observed_value": 5.428571428571429,
     "abs_change": -14.214285714285714,
     "delta_pct": -72.36363636363636,
     "z_score": -3.260980788588699,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a3e85c66473f",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-13",
     "window_days": 14,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 84.57142857142857,
     "abs_change": 33.714285714285715,
     "delta_pct": 66.29213483146069,
     "z_score": 4.547994835327899,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:967e65bd610a",
     "superseded_by": "2026-09-22T21:44:53Z",
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "cape-of-good-hope",
     "comparison": "segment",
     "window_start": "2026-08-31",
     "window_end": "2026-09-20",
     "window_days": 21,
     "provisional": true,
     "baseline_start": "2023-09-17",
     "baseline_end": "2023-11-11",
     "baseline_days": 56,
     "baseline_value": 50.857142857142854,
     "observed_value": 85.9047619047619,
     "abs_change": 35.047619047619044,
     "delta_pct": 68.91385767790263,
     "z_score": 4.727859037854992,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-22T21:44:53Z",
     "data_revision": "1:f04f7db9927d",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "cyber-incident-dp-world-australia-2023",
   "url_year": 2023,
   "title": "DP World Australia disconnects its network after a cyber incident",
   "event_type": "cyber-incident",
   "status": "ended",
   "start_date": "2023-11-10",
   "start_precision": "day",
   "end_date": "2023-11-13",
   "end_precision": "day",
   "first_reported": "2023-11-12",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Terminal closure over 72 hours; landside operations at the DP World terminals in four ports stopped from 2023-11-10 to 2023-11-13.",
   "scope": "regional",
   "entities": {
    "ports": [
     "melbourne",
     "sydney-au",
     "brisbane",
     "fremantle"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "au"
    ],
    "terminals": [
     "DP World Melbourne",
     "DP World Sydney",
     "DP World Brisbane",
     "DP World Fremantle"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "DP World Australia",
    "Australian Federal Police",
    "Department of Home Affairs"
   ],
   "summary": "On 2023-11-10 (10 November 2023) DP World Australia detected unauthorised access to its Australian corporate network and disconnected that network from the internet, which stopped landside operations at its container terminals in Melbourne, Sydney, Brisbane and Fremantle. The operator handles about 40 percent of Australian container freight, and the National Cyber Security Coordinator said the interruption would affect the movement of goods into and out of the country for a number of days. Operations restarted on 2023-11-13 (13 November 2023), and the company said the resumption did not mean the incident had concluded. DP World Australia reported on 2023-11-28 that it had cleared a backlog of 30,137 containers by 2023-11-20, that no ransomware was found, and that a small amount of data had been taken.",
   "timeline": [
    {
     "date": "2023-11-10",
     "date_precision": "day",
     "text": "DP World Australia detects unauthorised access to its Australian corporate network and disconnects the network from the internet, stopping landside operations at its four container terminals.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2023-11-12",
     "date_precision": "day",
     "text": "The National Cyber Security Coordinator describes the incident as nationally significant and says the interruption is likely to last days rather than weeks. The Australian Federal Police opens an investigation.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-11-13",
     "date_precision": "day",
     "text": "Operations restart at 09:00 local time at the Melbourne, Sydney, Brisbane and Fremantle terminals after overnight testing of key systems, with about 30,000 containers waiting at the four sites.",
     "source_ids": [
      "s1",
      "s3",
      "s4"
     ]
    },
    {
     "date": "2023-11-28",
     "date_precision": "day",
     "text": "DP World Australia reports that the container backlog was cleared by 2023-11-20, that no ransomware was found or deployed, and that some employee data was taken.",
     "source_ids": [
      "s1"
     ]
    }
   ],
   "cause": {
    "status": "under_investigation",
    "text": "DP World Australia said it detected unauthorised access to its Australian corporate network and disconnected the network to contain it. No party has been publicly identified as responsible, and the Australian Federal Police opened an investigation.",
    "attributed_by": "Australian Federal Police",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2023-11-13",
    "text": "Port operations resumed on 2023-11-13 after systems were tested overnight. DP World Australia said the backlog of 30,137 containers was cleared by 2023-11-20 while remediation continued.",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "melbourne"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "sydney-au"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "brisbane"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "fremantle"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.dpworld.com/en/news/releases/australia/media-statement-update-on-cybersecurity-incident",
     "publisher": "DP World",
     "title": "Media Statement: Update on Cybersecurity Incident",
     "published_date": "2023-11-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260213233232/https://www.dpworld.com/en/news/releases/australia/media-statement-update-on-cybersecurity-incident",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.abc.net.au/news/2023-11-12/government-respond-to-port-cyber-hack-dp-world/103095182",
     "publisher": "ABC News",
     "title": "Government doesn't know details behind cyber hack that shut down port operator DP World",
     "published_date": "2023-11-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250801020807/https://www.abc.net.au/news/2023-11-12/government-respond-to-port-cyber-hack-dp-world/103095182",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.abc.net.au/news/2023-11-13/dp-world-deals-with-impact-of-cyber-attack/103097658",
     "publisher": "ABC News",
     "title": "Freight giant DP World recovers from cyber attack, but warns investigation and remediation is 'ongoing'",
     "published_date": "2023-11-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260325020951/https://www.abc.net.au/news/2023-11-13/dp-world-deals-with-impact-of-cyber-attack/103097658",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.cnn.com/2023/11/13/tech/australia-dp-world-cyberattack-ports-intl-hnk/index.html",
     "publisher": "CNN",
     "title": "DP World cyberattack: Australian ports restart some operations",
     "published_date": "2023-11-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260321171118/https://www.cnn.com/2023/11/13/tech/australia-dp-world-cyberattack-ports-intl-hnk/index.html",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The detection date, the disconnection, the resumption on 2023-11-13 and the backlog figure come from DP World Australia's own statement, with consistent reporting by ABC News and CNN."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/cyber-incident-dp-world-australia-2023/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "melbourne",
     "comparison": "primary",
     "window_start": "2023-11-10",
     "window_end": "2023-11-13",
     "window_days": 4,
     "provisional": false,
     "baseline_start": "2023-09-08",
     "baseline_end": "2023-11-02",
     "baseline_days": 56,
     "baseline_value": 2.75,
     "observed_value": 2,
     "abs_change": -0.75,
     "delta_pct": null,
     "z_score": -0.4330127018922194,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:930fa3b896de",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "sydney-au",
     "comparison": "primary",
     "window_start": "2023-11-10",
     "window_end": "2023-11-13",
     "window_days": 4,
     "provisional": false,
     "baseline_start": "2023-09-08",
     "baseline_end": "2023-11-02",
     "baseline_days": 56,
     "baseline_value": 0,
     "observed_value": 0,
     "abs_change": 0,
     "delta_pct": null,
     "z_score": 0,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c90e9eae2818",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "brisbane",
     "comparison": "primary",
     "window_start": "2023-11-10",
     "window_end": "2023-11-13",
     "window_days": 4,
     "provisional": false,
     "baseline_start": "2023-09-08",
     "baseline_end": "2023-11-02",
     "baseline_days": 56,
     "baseline_value": 2.375,
     "observed_value": 2.75,
     "abs_change": 0.375,
     "delta_pct": null,
     "z_score": 0.2165063509461097,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:4a06c2f3731e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "fremantle",
     "comparison": "primary",
     "window_start": "2023-11-10",
     "window_end": "2023-11-13",
     "window_days": 4,
     "provisional": false,
     "baseline_start": "2023-09-08",
     "baseline_end": "2023-11-02",
     "baseline_days": 56,
     "baseline_value": 1,
     "observed_value": 1.5,
     "abs_change": 0.5,
     "delta_pct": null,
     "z_score": 0.5,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d835aac37d0d",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "port-congestion-durban-2023",
   "url_year": 2023,
   "title": "Vessel congestion at the Port of Durban container terminals",
   "event_type": "congestion-episode",
   "status": "ended",
   "start_date": "2023-10-01",
   "start_precision": "month",
   "end_date": "2024-01-01",
   "end_precision": "month",
   "first_reported": "2023-11-20",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port level disruption well beyond seven days; Transnet said in November 2023 that clearing the container backlog would take up to seven weeks at Pier 1 and 15 weeks at Pier 2.",
   "scope": "port",
   "entities": {
    "ports": [
     "durban"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "za"
    ],
    "terminals": [
     "Durban Container Terminal Pier 1",
     "Durban Container Terminal Pier 2"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Transnet",
    "Transnet Port Terminals"
   ],
   "summary": "Ships queued at the Port of Durban in the closing months of 2023, with the backlog described publicly from 2023-11-20 (20 November 2023), when Transnet held a media briefing on delays at its ports. Transnet said container handling at Pier 2 had fallen from about 3,300 to about 2,500 containers a day over the preceding four weeks because of weather and equipment problems, and set out an intervention plan. Reporting at the time counted more than 60 vessels off the port. Transnet said clearing the backlog would take up to seven weeks at Pier 1 and 15 weeks at Pier 2. By early January 2024 the queue had fallen to about five vessels at anchor, which Transnet attributed to holiday period staffing and faster access to spare parts.",
   "timeline": [
    {
     "date": "2023-10-01",
     "date_precision": "month",
     "text": "Container handling at Durban Pier 2 slows through October, which Transnet later attributes to weather losses and equipment availability, and the queue of waiting ships grows.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2023-11-20",
     "date_precision": "day",
     "text": "Transnet says at a media briefing that it is running urgent interventions at Durban, blames adverse weather and equipment availability against a background of underinvestment, and expects clearance to take up to seven weeks at Pier 1 and 15 weeks at Pier 2.",
     "source_ids": [
      "s1",
      "s2",
      "s3"
     ]
    },
    {
     "date": "2023-11-20",
     "date_precision": "day",
     "text": "Reporting counts more than 60 vessels off the port, with average berthing delays of about 18 days and October weather losses of 159 operating hours.",
     "source_ids": [
      "s2",
      "s3"
     ]
    },
    {
     "date": "2024-01-03",
     "date_precision": "day",
     "text": "Transnet reports the queue down to about five vessels at anchor from about 20 in November, with more than 33,000 twenty foot equivalent units still waiting off Durban on 2023-12-29.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "Transnet attributed the delays to adverse weather and to equipment availability, and said the congestion followed years of underinvestment in equipment and its maintenance, with replacement lead times of 12 to 18 months.",
    "attributed_by": "Transnet",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2024-01-03",
    "text": "The vessel queue fell through December 2023 and into early January 2024, when Transnet reported about five ships at anchor against about 20 in November. Transnet credited holiday period staffing and faster access to spare parts, alongside the recovery plan set out in November.",
    "source_ids": [
     "s4"
    ]
   },
   "related_events": [],
   "no_effect_reason": "below_resolution",
   "no_effect_note": "The episode has no single dated start. It is recorded at month precision from October 2023, which is coarser than the daily windows the effect engine needs, so no port call series is nominated for measurement.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.transnet.net/getFile.ashx?id=5736",
     "publisher": "Transnet",
     "title": "Transnet fully focused on dealing with delays at ports",
     "published_date": "2023-11-20",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260604205842/https://www.transnet.net/getFile.ashx?id=5736",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://maritime-executive.com/article/durban-warns-it-could-take-15-weeks-to-clear-backlog-as-60-ships-wait",
     "publisher": "The Maritime Executive",
     "title": "Durban Warns It Could Take 15 Weeks to Clear Backlog as 60 Ships Wait",
     "published_date": "2023-11-20",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813185759/https://maritime-executive.com/article/durban-warns-it-could-take-15-weeks-to-clear-backlog-as-60-ships-wait",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.engineeringnews.co.za/article/no-overnight-solution-to-vessel-congestion-at-durban-container-terminal-2023-11-20",
     "publisher": "Engineering News",
     "title": "No 'overnight' solution to vessel congestion at Durban container terminal",
     "published_date": "2023-11-20",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240518221315/https://www.engineeringnews.co.za/article/no-overnight-solution-to-vessel-congestion-at-durban-container-terminal-2023-11-20",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.moneyweb.co.za/news/south-africa/durban-container-port-making-headway-in-clearing-backlog-of-vessels/",
     "publisher": "Moneyweb",
     "title": "Durban container port making headway in clearing backlog of vessels",
     "published_date": "2024-01-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240117080212/https://www.moneyweb.co.za/news/south-africa/durban-container-port-making-headway-in-clearing-backlog-of-vessels/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The causes, the scale of the backlog and the recovery plan come from a dated Transnet media statement, with consistent reporting of vessel counts and waiting times in three outlets."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/port-congestion-durban-2023/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  },
  {
   "id": "typhoon-saola-hong-kong-shenzhen-2023",
   "url_year": 2023,
   "title": "Typhoon Saola halts port work in Hong Kong and Shenzhen",
   "event_type": "weather-stoppage",
   "status": "ended",
   "start_date": "2023-08-31",
   "start_precision": "day",
   "end_date": "2023-09-02",
   "end_precision": "day",
   "first_reported": "2023-09-01",
   "added": "2026-09-24",
   "updated": "2026-09-24",
   "severity": 2,
   "severity_basis": "Port wide stoppages at Shenzhen and Hong Kong lasted from the afternoon of 2023-08-31 to the evening of 2023-09-02, which falls in the band of 24 hours to 7 days.",
   "scope": "regional",
   "entities": {
    "ports": [
     "hong-kong",
     "yantian",
     "shekou"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "hk",
     "cn"
    ],
    "terminals": [
     "Yantian International Container Terminals"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Hong Kong Observatory",
    "Government of the Hong Kong Special Administrative Region",
    "Yantian International Container Terminals"
   ],
   "summary": "Typhoon Saola stopped port work in Shenzhen and Hong Kong from 2023-08-31 (31 August 2023) to 2023-09-02 (2 September 2023). Terminals in Shenzhen, including Yantian and Shekou, stopped taking empty containers at 12:00 on 2023-08-31 and halted all handling from 16:00 that day. The Hong Kong Observatory issued the Hurricane Signal No. 10 during Saola's passage on 2023-09-01, the first since 2018, and public transport, schools and business in the city stopped. The government said the signal was lowered to No. 8 at 03:40 on 2023-09-02. Saola made landfall near Yangjiang in Guangdong that afternoon, rail and air services in the province having been suspended from the previous evening. Yantian said gate work would resume in full at 22:00 on 2023-09-02.",
   "timeline": [
    {
     "date": "2023-08-31",
     "date_precision": "day",
     "text": "Terminals in Shenzhen, including Yantian, Shekou and Dapeng Bay, stop taking empty containers at 12:00 and stop all handling from 16:00.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2023-09-01",
     "date_precision": "day",
     "text": "The Hong Kong Observatory issues the Hurricane Signal No. 10, the first since 2018, as Saola passes close to the city. Trains in Guangdong stop from 20:00 and departures from Shenzhen airport are cancelled.",
     "source_ids": [
      "s1",
      "s4"
     ]
    },
    {
     "date": "2023-09-02",
     "date_precision": "day",
     "text": "The Observatory replaces the No. 10 signal with the No. 8 signal at 03:40. The government reports 40 shelters open and 499 people in them at 03:00, 11 flooding reports and 51 people treated in public hospitals during the storm.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-09-02",
     "date_precision": "day",
     "text": "Saola makes landfall in coastal Guangdong. Guangzhou's Xinsha terminal resumes normal work at 15:00 and Yantian says gate work will resume in full at 22:00.",
     "source_ids": [
      "s3",
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "Port and transport operations were suspended because of Super Typhoon Saola, which passed close to Hong Kong with maximum sustained winds near its centre of 230 kilometres per hour before making landfall in Guangdong on 2023-09-02.",
    "attributed_by": "Government of the Hong Kong Special Administrative Region",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2023-09-02",
    "text": "The Hong Kong signal was lowered to No. 8 at 03:40 on 2023-09-02 and the city began returning to normal. Guangzhou's Xinsha terminal resumed normal work at 15:00 and Yantian resumed gate work in full at 22:00 the same day.",
    "source_ids": [
     "s2",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "hong-kong"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "yantian"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shekou"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.info.gov.hk/gia/general/202310/04/P2023100300488.htm",
     "publisher": "Government of the Hong Kong Special Administrative Region",
     "title": "A September with Super Typhoon Saola and record-breaking rainstorm",
     "published_date": "2023-10-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260215202851/https://www.info.gov.hk/gia/general/202310/04/P2023100300488.htm",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.info.gov.hk/gia/general/202309/02/P2023090200151.htm",
     "publisher": "Government of the Hong Kong Special Administrative Region",
     "title": "Typhoon Saola situation report (8)",
     "published_date": "2023-09-02",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250430210037/https://www.info.gov.hk/gia/general/202309/02/P2023090200151.htm",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.21jingji.com/article/20230902/herald/20b92dff374b698dd6b4b0e7a15ac4d0.html",
     "publisher": "21st Century Business Herald",
     "title": "“苏拉”远去，广深港口码头逐步恢复正常作业",
     "published_date": "2023-09-02",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260916013130/https://www.21jingji.com/article/20230902/herald/20b92dff374b698dd6b4b0e7a15ac4d0.html",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.chinadaily.com.cn/a/202309/02/WS64f2673da310d2dce4bb3815.html",
     "publisher": "China Daily",
     "title": "Typhoon Saola hits coastal Guangdong",
     "published_date": "2023-09-02",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260325045034/https://www.chinadaily.com.cn/a/202309/02/WS64f2673da310d2dce4bb3815.html",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The signal history and the storm's strength come from the Hong Kong government. The Shenzhen terminal stop and restart times rest on Chinese business press reporting of the terminal operators' own notices. The window does not overlap a calendar exclusion, although China's National Day holiday begins four weeks later."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/typhoon-saola-hong-kong-shenzhen-2023/",
   "approved_at": "2026-09-24T00:10:52Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "hong-kong",
     "comparison": "primary",
     "window_start": "2023-08-31",
     "window_end": "2023-09-02",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2023-06-29",
     "baseline_end": "2023-08-23",
     "baseline_days": 56,
     "baseline_value": 45.166666666666664,
     "observed_value": 22,
     "abs_change": -23.166666666666664,
     "delta_pct": -51.291512915129154,
     "z_score": -3.397324831328018,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:62ecc7c2004f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "yantian",
     "comparison": "primary",
     "window_start": "2023-08-31",
     "window_end": "2023-09-02",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2023-06-29",
     "baseline_end": "2023-08-23",
     "baseline_days": 56,
     "baseline_value": 8.333333333333334,
     "observed_value": 4.666666666666667,
     "abs_change": -3.666666666666667,
     "delta_pct": -44,
     "z_score": -1.1896237549589255,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:ed5c7114a9c8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shekou",
     "comparison": "primary",
     "window_start": "2023-08-31",
     "window_end": "2023-09-02",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2023-06-29",
     "baseline_end": "2023-08-23",
     "baseline_days": 56,
     "baseline_value": 9.5,
     "observed_value": 3,
     "abs_change": -6.5,
     "delta_pct": -68.42105263157895,
     "z_score": -2.108878474699913,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:0781eb6ff3bf",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "grain-deal-exit-odesa-port-attacks-2023",
   "url_year": 2023,
   "title": "Russia ends Black Sea Grain Initiative participation and strikes Ukrainian ports",
   "event_type": "security-incident",
   "status": "ended",
   "start_date": "2023-07-17",
   "start_precision": "day",
   "end_date": "2023-08-16",
   "end_precision": "day",
   "first_reported": "2023-07-17",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port closure of 7 days or more; grain exports through the Black Sea corridor stopped at Odesa and Chornomorsk from 2023-07-17 until a first departure on 2023-08-16.",
   "scope": "regional",
   "entities": {
    "ports": [
     "odessa",
     "chornomorsk",
     "izmail",
     "reni"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ua"
    ]
   },
   "commodities": [
    "grain"
   ],
   "organisations": [
    "United Nations",
    "Joint Coordination Centre"
   ],
   "summary": "On 2023-07-17 (17 July 2023) the Russian Federation ended its participation in the Black Sea Grain Initiative and withdrew its security guarantees for navigation in the north western Black Sea, which stopped grain exports through the corridor serving Odesa and Chornomorsk. Strikes on port and grain infrastructure at Odesa and Chornomorsk followed from 2023-07-18, and Danube river ports used as an alternative route, including Izmail and Reni, were struck from 2023-08-02. A senior United Nations official told the Security Council that port infrastructure at Odesa and Mykolaiv was being targeted and that more than 60,000 tonnes of grain had been destroyed. Ukraine opened its own corridor, and the first civilian ship left Odesa on 2023-08-16 (16 August 2023).",
   "timeline": [
    {
     "date": "2023-07-17",
     "date_precision": "day",
     "text": "The United Nations Secretary-General says he regrets the Russian Federation's decision to terminate the Black Sea Initiative, including the withdrawal of security guarantees for navigation in the north western Black Sea.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2023-07-21",
     "date_precision": "day",
     "text": "A senior United Nations official tells the Security Council that port infrastructure at Odesa and Mykolaiv has been targeted since the initiative ended and that more than 60,000 tonnes of grain has been destroyed.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-08-02",
     "date_precision": "day",
     "text": "Drone strikes damage port and grain storage infrastructure at the Danube port of Izmail. The regional authorities reported fires at port and industrial facilities and a damaged elevator.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2023-08-16",
     "date_precision": "day",
     "text": "A container ship leaves Odesa as the first civilian vessel to use the corridor Ukraine opened after the initiative ended, according to the Ukrainian president and the infrastructure ministry.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The Russian Federation ended its participation in the Black Sea Grain Initiative on 2023-07-17 and withdrew security guarantees for navigation, as stated by the United Nations Secretary-General. Strikes on port facilities were reported to the Security Council by the United Nations and by Ukrainian regional authorities.",
    "attributed_by": "United Nations Secretary-General",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2023-08-16",
    "text": "Ukraine opened a corridor of its own and the first civilian ship sailed from Odesa on 2023-08-16, restoring seaborne exports without Russian participation. Strikes on Danube and Black Sea port facilities continued after that date.",
    "source_ids": [
     "s3",
     "s4"
    ]
   },
   "related_events": [
    "port-closures-ukraine-black-sea-2022"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://press.un.org/en/2023/sgsm21877.doc.htm",
     "publisher": "United Nations",
     "title": "Secretary-General Says Russian Federation Decision to Stop Implementing Black Sea Initiative Will 'Strike a Blow' to Hungry, Hurting People in Need Everywhere",
     "published_date": "2023-07-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260301103225/https://press.un.org/en/2023/sgsm21877.doc.htm",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://press.un.org/en/2023/sc15367.doc.htm",
     "publisher": "United Nations",
     "title": "Attacks on Odesa Port, Grain-Storage Facilities Latest Victims in Moscow's 'Senseless' War against Ukraine, Senior Official Tells Security Council",
     "published_date": "2023-07-21",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260901224040/https://press.un.org/en/2023/sc15367.doc.htm",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.aljazeera.com/news/2023/8/2/russia-hits-port-grain-storage-in-odesa",
     "publisher": "Al Jazeera",
     "title": "Russia targets Odesa port, angering Ukraine and nearby Romania",
     "published_date": "2023-08-02",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250905182151/https://www.aljazeera.com/news/2023/8/2/russia-hits-port-grain-storage-in-odesa",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.pravda.com.ua/eng/news/2023/08/16/7415881/",
     "publisher": "Ukrainska Pravda",
     "title": "First civilian ship goes through Ukraine's new humanitarian corridor - Zelenskyy",
     "published_date": "2023-08-16",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260505190303/https://www.pravda.com.ua/eng/news/2023/08/16/7415881/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The start date and the strikes on port facilities are documented by United Nations sources, while the end date rests on the first departure through Ukraine's own corridor as announced by Ukrainian authorities and reported by Ukrainska Pravda."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/grain-deal-exit-odesa-port-attacks-2023/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa",
     "comparison": "year_ago",
     "window_start": "2022-07-18",
     "window_end": "2022-08-17",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2022-05-16",
     "baseline_end": "2022-07-10",
     "baseline_days": 56,
     "baseline_value": 0,
     "observed_value": 0.0967741935483871,
     "abs_change": 0.0967741935483871,
     "delta_pct": null,
     "z_score": 0.0967741935483871,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-20T19:50:10Z",
     "data_revision": "1:9665b1246ce9",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk",
     "comparison": "year_ago",
     "window_start": "2022-07-18",
     "window_end": "2022-08-17",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2022-05-16",
     "baseline_end": "2022-07-10",
     "baseline_days": 56,
     "baseline_value": 0,
     "observed_value": 0.5806451612903226,
     "abs_change": 0.5806451612903226,
     "delta_pct": null,
     "z_score": 0.5806451612903226,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.1",
     "computed_at": "2026-09-20T19:50:10Z",
     "data_revision": "1:3e02cd0f550e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa",
     "comparison": "primary",
     "window_start": "2023-07-17",
     "window_end": "2023-08-16",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2023-05-15",
     "baseline_end": "2023-07-09",
     "baseline_days": 56,
     "baseline_value": 0.06451612903225806,
     "observed_value": 0.0967741935483871,
     "abs_change": 0.03225806451612903,
     "delta_pct": null,
     "z_score": 0.03225806451612903,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:e4f08c4f8831",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk",
     "comparison": "primary",
     "window_start": "2023-07-17",
     "window_end": "2023-08-16",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2023-05-15",
     "baseline_end": "2023-07-09",
     "baseline_days": 56,
     "baseline_value": 0.43548387096774194,
     "observed_value": 0,
     "abs_change": -0.43548387096774194,
     "delta_pct": null,
     "z_score": -0.43548387096774194,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d924549c3efd",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "ransomware-attack-nagoya-port-2023",
   "url_year": 2023,
   "title": "Ransomware stops container handling at the Port of Nagoya",
   "event_type": "cyber-incident",
   "status": "ended",
   "start_date": "2023-07-04",
   "start_precision": "day",
   "end_date": "2023-07-06",
   "end_precision": "day",
   "first_reported": "2023-07-05",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Port wide stoppage of 24 hours to 7 days; container work stopped at every Nagoya terminal from 2023-07-04 until 2023-07-06.",
   "scope": "port",
   "entities": {
    "ports": [
     "nagoya"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "jp"
    ],
    "terminals": [
     "Tobishima Pier South Container Terminal",
     "Tobishima Pier North Container Terminal",
     "Nabeta Pier Container Terminal",
     "NCB Container Terminal"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Nagoya Harbor Transportation Association",
    "Aichi Prefectural Police"
   ],
   "summary": "On 2023-07-04 (4 July 2023) the Nagoya Port Unified Terminal System stopped working at about 06:30 local time, and container work stopped at every terminal in the port. The Nagoya Harbor Transportation Association reported that a ransom note printed from a system printer at about 07:30, that the servers were found encrypted that afternoon, and that the Aichi Prefectural Police and the system maintenance company assessed the cause as a ransomware infection. Restoration from backups finished on 2023-07-06 (6 July 2023) and terminals restarted in sequence from 15:00, with the last resuming at 18:15. The association said no ransom amount was stated and that it did not contact the attackers. Press reports attributed the attack to the LockBit group.",
   "timeline": [
    {
     "date": "2023-07-04",
     "date_precision": "day",
     "text": "The terminal system stops at about 06:30. A ransom note prints at about 07:30, servers cannot restart, and by about 14:00 the physical and virtual servers are found encrypted. The police cyber attack unit is notified.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2023-07-05",
     "date_precision": "day",
     "text": "The association states publicly that the cause is a ransomware infection and sets a target of restarting terminal work on the morning of 2023-07-06. A virus is then found in backup data, delaying restoration.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2023-07-06",
     "date_precision": "day",
     "text": "Backup restoration finishes at about 07:15, a network fault is cleared at about 14:15, and terminals restart from 15:00, with the last terminals resuming at 18:15.",
     "source_ids": [
      "s1",
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "The Nagoya Harbor Transportation Association reported that the Aichi Prefectural Police and the system maintenance company assessed the cause as a ransomware infection, entering through a vulnerability in a remote access device. Press reports attributed the attack to the LockBit group.",
    "attributed_by": "Nagoya Harbor Transportation Association",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2023-07-06",
    "text": "Systems were restored from backups and terminal work resumed in sequence on 2023-07-06, with the final terminals restarting at 18:15. The association said it found no evidence of data leaving the organisation.",
    "source_ids": [
     "s1"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "nagoya"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://meikoukyo.com/wp-content/uploads/2023/07/0bb9d9907568e832da8f400e529efc99.pdf",
     "publisher": "Nagoya Harbor Transportation Association",
     "title": "NUTS システム障害の経緯報告",
     "published_date": "2023-07-26",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260901010541/https://meikoukyo.com/wp-content/uploads/2023/07/0bb9d9907568e832da8f400e529efc99.pdf",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://therecord.media/major-japanese-port-suspends-operations-following-lockbit-attack",
     "publisher": "The Record",
     "title": "Major Japanese port suspends operation following ransomware attack",
     "published_date": "2023-07-05",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260421140933/https://therecord.media/major-japanese-port-suspends-operations-following-lockbit-attack",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.theregister.com/2023/07/06/lockbit_nagoya_attack/",
     "publisher": "The Register",
     "title": "LockBit ransomware infection hits Japan's top cargo port",
     "published_date": "2023-07-06",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250908071738/https://www.theregister.com/2023/07/06/lockbit_nagoya_attack/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The timeline, the cause and the restart times come from the incident report published by the Nagoya Harbor Transportation Association, with consistent reporting by two technology outlets."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/ransomware-attack-nagoya-port-2023/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "nagoya",
     "comparison": "primary",
     "window_start": "2023-07-04",
     "window_end": "2023-07-06",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2023-05-02",
     "baseline_end": "2023-06-26",
     "baseline_days": 56,
     "baseline_value": 10.333333333333334,
     "observed_value": 7.666666666666667,
     "abs_change": -2.666666666666667,
     "delta_pct": -25.806451612903228,
     "z_score": -0.8229511997978234,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:86c331405645",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "port-workers-strike-british-columbia-2023",
   "url_year": 2023,
   "title": "Longshore strike stops cargo at British Columbia ports",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2023-07-01",
   "start_precision": "day",
   "end_date": "2023-07-19",
   "end_precision": "day",
   "first_reported": "2023-07-11",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port closure of seven days or more; cargo work stopped across British Columbia terminals for 13 days from 2023-07-01 to 2023-07-13, with a further stoppage on 2023-07-18.",
   "scope": "regional",
   "entities": {
    "ports": [
     "vancouver-ca",
     "prince-rupert"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ca"
    ]
   },
   "commodities": [
    "containers",
    "general-cargo",
    "breakbulk"
   ],
   "organisations": [
    "International Longshore and Warehouse Union Canada",
    "British Columbia Maritime Employers Association",
    "Canada Industrial Relations Board"
   ],
   "summary": "From 2023-07-01 (1 July 2023) longshore workers represented by the International Longshore and Warehouse Union Canada struck terminals across British Columbia, including Vancouver and Prince Rupert, in a dispute with the British Columbia Maritime Employers Association over wages, contracting out and automation. More than 7,400 workers were reported to have left the job. The first stoppage ran to 2023-07-13, when both sides accepted settlement terms drawn up by a federal mediator. The union caucus then rejected the terms and members returned to picket lines at 16:30 on 2023-07-18. The Canada Industrial Relations Board ruled that action unlawful for want of 72 hours notice, and the union withdrew a fresh strike notice on 2023-07-19 (19 July 2023). A negotiated agreement followed on 2023-07-30 and was ratified in early August.",
   "timeline": [
    {
     "date": "2023-07-01",
     "date_precision": "day",
     "text": "Longshore workers walk out at British Columbia terminals after the collective agreement with the employers' association expires and bargaining fails.",
     "source_ids": [
      "s5",
      "s7"
     ]
    },
    {
     "date": "2023-07-11",
     "date_precision": "day",
     "text": "The federal labour minister gives a senior mediator one day to recommend terms of settlement, saying the gap between the parties no longer justifies a continued work stoppage.",
     "source_ids": [
      "s7"
     ]
    },
    {
     "date": "2023-07-13",
     "date_precision": "day",
     "text": "Both sides accept the mediator's terms and the stoppage ends after 13 days. The employers' association ratifies the four year agreement the same day.",
     "source_ids": [
      "s1",
      "s5"
     ]
    },
    {
     "date": "2023-07-18",
     "date_precision": "day",
     "text": "The union's caucus rejects the mediated agreement without a membership vote and workers return to the picket lines at 16:30, stopping cargo work again.",
     "source_ids": [
      "s1",
      "s5"
     ]
    },
    {
     "date": "2023-07-19",
     "date_precision": "day",
     "text": "The Canada Industrial Relations Board orders the union to cease strike action because 72 hours notice was not given. The union serves a new notice, then withdraws it that afternoon.",
     "source_ids": [
      "s4",
      "s6"
     ]
    },
    {
     "date": "2023-07-30",
     "date_precision": "day",
     "text": "The union and the employers' association announce a negotiated collective agreement reached with the assistance of the labour board, and recommend ratification.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-08-04",
     "date_precision": "day",
     "text": "The employers' association confirms that union members have ratified the four year agreement, which it ratified on 2023-07-31.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The union struck over wages, the cost of living, contracting out of maintenance work and automation at the terminals, after bargaining with the British Columbia Maritime Employers Association failed when the previous agreement expired. The employers' association said its proposals on maintenance jurisdiction were rejected by the union.",
    "attributed_by": "International Longshore and Warehouse Union Canada and British Columbia Maritime Employers Association",
    "source_ids": [
     "s1",
     "s5",
     "s7"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2023-07-19",
    "text": "Cargo work resumed on 2023-07-19 after the Canada Industrial Relations Board found the renewed strike unlawful and the union withdrew its fresh strike notice. A negotiated agreement followed on 2023-07-30 and was ratified in early August.",
    "source_ids": [
     "s2",
     "s3",
     "s4",
     "s6"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "vancouver-ca"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "vancouver-ca"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "prince-rupert"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.bcmeanegotiations.com/ilwu-leadership-rejects-mediators-fair-and-balanced-tentative-deal-without-a-member-vote/",
     "publisher": "British Columbia Maritime Employers Association",
     "title": "ILWU leadership rejects mediator's fair and balanced tentative deal without a member vote, once again putting livelihoods and the Canadian economy at risk",
     "published_date": "2023-07-18",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813191206/https://www.bcmeanegotiations.com/ilwu-leadership-rejects-mediators-fair-and-balanced-tentative-deal-without-a-member-vote/",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.bcmeanegotiations.com/joint-ilwu-canada-and-bcmea-news-release/",
     "publisher": "British Columbia Maritime Employers Association",
     "title": "Joint ILWU Canada and BCMEA News Release",
     "published_date": "2023-07-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813191208/https://www.bcmeanegotiations.com/joint-ilwu-canada-and-bcmea-news-release/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.bcmeanegotiations.com/ilwu-canada-members-ratify-negotiated/",
     "publisher": "British Columbia Maritime Employers Association",
     "title": "ILWU Canada members ratify negotiated tentative agreement; the BCMEA is ready to work to restore stability to Canada's supply chain",
     "published_date": "2023-08-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813190901/https://www.bcmeanegotiations.com/ilwu-canada-members-ratify-negotiated/",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://www.ilwu.ca/strike-notice-removed/",
     "publisher": "International Longshore and Warehouse Union Canada",
     "title": "Strike Notice Removed - July 19, 2023",
     "published_date": "2023-07-19",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260513192145/https://www.ilwu.ca/strike-notice-removed/",
     "type": "official"
    },
    {
     "id": "s5",
     "url": "https://www.cbc.ca/news/canada/british-columbia/bc-port-workers-resume-strike-1.6910572",
     "publisher": "CBC News",
     "title": "B.C. port workers resume strike after union rejects tentative deal",
     "published_date": "2023-07-18",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260211080450/https://www.cbc.ca/news/canada/british-columbia/bc-port-workers-resume-strike-1.6910572",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://www.cbc.ca/news/canada/british-columbia/port-strike-illegal-says-labour-minister-july-19-1.6911101",
     "publisher": "CBC News",
     "title": "B.C. port workers union calls off strike notice hours after issuing it",
     "published_date": "2023-07-19",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251005031327/https://www.cbc.ca/news/canada/british-columbia/port-strike-illegal-says-labour-minister-july-19-1.6911101",
     "type": "press"
    },
    {
     "id": "s7",
     "url": "https://www.cbc.ca/news/canada/british-columbia/b-c-port-strike-fertilizer-united-states-supply-chain-1.6903719",
     "publisher": "CBC News",
     "title": "Labour minister gives mediator 24 hours to draft settlement to end B.C. port strike",
     "published_date": "2023-07-11",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240824093550/https://www.cbc.ca/news/canada/british-columbia/b-c-port-strike-fertilizer-united-states-supply-chain-1.6903719",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The strike dates, the mediated settlement and the ratification are documented by the employers' association and the union, with the labour board ruling and the withdrawal of the second strike notice reported by CBC News."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/port-workers-strike-british-columbia-2023/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "prince-rupert",
     "comparison": "primary",
     "window_start": "2023-07-01",
     "window_end": "2023-07-19",
     "window_days": 19,
     "provisional": false,
     "baseline_start": "2023-04-29",
     "baseline_end": "2023-06-23",
     "baseline_days": 56,
     "baseline_value": 1.131578947368421,
     "observed_value": 0.7894736842105263,
     "abs_change": -0.3421052631578947,
     "delta_pct": null,
     "z_score": -0.34210526315789475,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:4dc738bcfd97",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "vancouver-ca",
     "comparison": "primary",
     "window_start": "2023-07-01",
     "window_end": "2023-07-19",
     "window_days": 19,
     "provisional": false,
     "baseline_start": "2023-04-29",
     "baseline_end": "2023-06-23",
     "baseline_days": 56,
     "baseline_value": 0.8421052631578947,
     "observed_value": 0.42105263157894735,
     "abs_change": -0.42105263157894735,
     "delta_pct": null,
     "z_score": -0.42105263157894735,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:da17d0ad94c3",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "vancouver-ca",
     "comparison": "primary",
     "window_start": "2023-07-01",
     "window_end": "2023-07-19",
     "window_days": 19,
     "provisional": false,
     "baseline_start": "2023-04-29",
     "baseline_end": "2023-06-23",
     "baseline_days": 56,
     "baseline_value": 5.105263157894737,
     "observed_value": 3.5789473684210527,
     "abs_change": -1.5263157894736845,
     "delta_pct": -29.896907216494846,
     "z_score": -0.6825891720788831,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:b39af92be95c",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "cyclone-biparjoy-gujarat-ports-2023",
   "url_year": 2023,
   "title": "Cyclone Biparjoy suspends operations at Gujarat ports",
   "event_type": "weather-stoppage",
   "status": "ended",
   "start_date": "2023-06-12",
   "start_precision": "day",
   "end_date": "2023-06-17",
   "end_precision": "day",
   "first_reported": "2023-06-14",
   "added": "2026-09-24",
   "updated": "2026-09-24",
   "severity": 2,
   "severity_basis": "Port wide stoppages of 24 hours to seven days; cargo handling at Mundra and at Deendayal Port, Kandla, was suspended from 2023-06-12 until 2023-06-17.",
   "scope": "regional",
   "entities": {
    "ports": [
     "mundra",
     "kandla"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "in"
    ]
   },
   "commodities": [
    "containers",
    "dry-bulk",
    "general-cargo"
   ],
   "organisations": [
    "Deendayal Port Authority",
    "Adani Ports and Special Economic Zone",
    "Gujarat Maritime Board",
    "Maersk"
   ],
   "summary": "Cyclone Biparjoy suspended cargo handling at ports along the Gulf of Kutch in Gujarat, India, from 2023-06-12 (12 June 2023), ahead of a landfall near Jakhau on 2023-06-15 (15 June 2023). Mundra, India's largest container port, stopped work on 2023-06-12, and Deendayal Port at Kandla suspended all cargo operations and told inbound ships to stay in open water rather than approach the Gulf of Kutch. Kandla and the nearby Pipavav Port had resumed operations by 2023-06-17, and Mundra was due to restart that evening. Berthing schedules and landside container flows at Mundra stayed disrupted afterwards, and trade bodies expected recovery within about a week.",
   "timeline": [
    {
     "date": "2023-06-12",
     "date_precision": "day",
     "text": "Ports along the Gulf of Kutch, including Mundra and Kandla, halt cargo operations as Cyclone Biparjoy approaches the Gujarat coast.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2023-06-14",
     "date_precision": "day",
     "text": "Deendayal Port Authority confirms all cargo operations at Kandla are stopped and says ships bound for the port have been told to remain in open water rather than wait near the entrance to the Gulf of Kutch.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2023-06-15",
     "date_precision": "day",
     "text": "The cyclone makes landfall near Jakhau Port on the Gujarat coast.",
     "source_ids": [
      "s5"
     ]
    },
    {
     "date": "2023-06-17",
     "date_precision": "day",
     "text": "Kandla and Pipavav Port report they have resumed operations, and the Adani-owned Mundra Port is due to restart from that evening.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-06-23",
     "date_precision": "day",
     "text": "Missed berthing windows and yard congestion at Mundra continue after the restart, with one carrier omitting the port on a voyage and trade bodies expecting flows to normalise within about eight days.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Port authorities and terminal operators suspended cargo handling as a precaution before the cyclone reached the Gujarat coast, moving ships out of the Gulf of Kutch and stopping quayside work until damage could be assessed.",
    "attributed_by": "Deendayal Port Authority and Adani Ports and Special Economic Zone, as reported",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2023-06-17",
    "text": "Kandla and Pipavav Port had resumed operations by 2023-06-17, and Mundra was due to restart that evening. Landside congestion and missed berthing windows at Mundra persisted for about a further week.",
    "source_ids": [
     "s2",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mundra"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "kandla"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "mundra"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.maritimegateway.com/deendayal-port-shuts-operations-as-cyclone-nears/",
     "publisher": "Maritime Gateway",
     "title": "Deendayal Port shuts operations as cyclone nears",
     "published_date": "2023-06-14",
     "accessed_date": "2026-09-16",
     "archive_url": "https://web.archive.org/web/20260916012406/https://www.maritimegateway.com/deendayal-port-shuts-operations-as-cyclone-nears/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.malaymail.com/news/world/2023/06/17/coastal-areas-of-indias-gujarat-state-return-to-normalcy-after-cyclone/74906",
     "publisher": "Malay Mail (Reuters)",
     "title": "Coastal areas of India's Gujarat state return to normalcy after cyclone",
     "published_date": "2023-06-17",
     "accessed_date": "2026-09-23",
     "archive_url": "https://web.archive.org/web/20230622172534/https://www.malaymail.com/news/world/2023/06/17/coastal-areas-of-indias-gujarat-state-return-to-normalcy-after-cyclone/74906",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.logisticsinsider.in/disruptions-and-delays-mount-at-mundra-port-following-cyclone-biparjoy/",
     "publisher": "Logistics Insider",
     "title": "Disruptions and delays mount at Mundra Port following Cyclone Biparjoy",
     "published_date": "2023-06-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240720072828/https://www.logisticsinsider.in/disruptions-and-delays-mount-at-mundra-port-following-cyclone-biparjoy/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://theloadstar.com/cyclone-shutters-already-congested-ports-on-indias-busy-west-coast/",
     "publisher": "The Loadstar",
     "title": "Cyclone shutters already congested ports on India's busy west coast",
     "published_date": "2023-06-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813190523/https://theloadstar.com/cyclone-shutters-already-congested-ports-on-indias-busy-west-coast/",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.tribuneindia.com/news/nation/cyclone-biparjoy-starts-making-landfall-near-jakhau-port-in-gujarats-kutch-517382",
     "publisher": "The Tribune (PTI)",
     "title": "Cyclone Biparjoy starts making landfall near Jakhau port in Gujarat's Kutch",
     "published_date": "2023-06-15",
     "accessed_date": "2026-09-23",
     "archive_url": "https://web.archive.org/web/20230616234427/https://www.tribuneindia.com/news/nation/cyclone-biparjoy-starts-making-landfall-near-jakhau-port-in-gujarats-kutch-517382",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The suspension date and Kandla and Pipavav's 2023-06-17 resumption rest on a Reuters wire report and trade press, consistent with each other, but no dated statement from Deendayal Port Authority or Adani Ports could be retrieved directly, and no source confirms exactly when the first vessel berthed at Mundra, only that it was due to restart that evening."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/cyclone-biparjoy-gujarat-ports-2023/",
   "approved_at": "2026-09-24T01:22:37Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "kandla",
     "comparison": "primary",
     "window_start": "2023-06-12",
     "window_end": "2023-06-17",
     "window_days": 6,
     "provisional": false,
     "baseline_start": "2023-04-10",
     "baseline_end": "2023-06-04",
     "baseline_days": 56,
     "baseline_value": 5.666666666666667,
     "observed_value": 1.5,
     "abs_change": -4.166666666666667,
     "delta_pct": -73.52941176470588,
     "z_score": -1.7010345435994294,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T01:23:03Z",
     "data_revision": "1:eea3c0fa5049",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "mundra",
     "comparison": "primary",
     "window_start": "2023-06-12",
     "window_end": "2023-06-17",
     "window_days": 6,
     "provisional": false,
     "baseline_start": "2023-04-10",
     "baseline_end": "2023-06-04",
     "baseline_days": 56,
     "baseline_value": 7.666666666666667,
     "observed_value": 0.6666666666666666,
     "abs_change": -7,
     "delta_pct": -91.30434782608695,
     "z_score": -2.474873734152916,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T01:23:03Z",
     "data_revision": "1:c2ae781a8bd2",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mundra",
     "comparison": "primary",
     "window_start": "2023-06-12",
     "window_end": "2023-06-17",
     "window_days": 6,
     "provisional": false,
     "baseline_start": "2023-04-10",
     "baseline_end": "2023-06-04",
     "baseline_days": 56,
     "baseline_value": 10.416666666666666,
     "observed_value": 1.1666666666666667,
     "abs_change": -9.25,
     "delta_pct": -88.80000000000001,
     "z_score": -2.925106835655751,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T01:23:03Z",
     "data_revision": "1:fca6a20ba06e",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "drought-restrictions-panama-canal-2023",
   "url_year": 2023,
   "title": "Drought cuts draft and daily transits at the Panama Canal",
   "event_type": "drought-restriction",
   "status": "ended",
   "start_date": "2023-03-01",
   "start_precision": "day",
   "end_date": "2024-09-01",
   "end_precision": "day",
   "first_reported": "2023-02-01",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 4,
   "severity_basis": "A restriction at a chokepoint that ran for more than a year, with the number of daily booking slots cut from about 32 to 22 and the Neopanamax draft cut from 15.24 m to 13.41 m; no measured effect is available yet, so this rests on the non measured chokepoint criteria.",
   "scope": "chokepoint",
   "entities": {
    "ports": [],
    "chokepoints": [
     "panama-canal"
    ],
    "lanes": [],
    "countries": [
     "pa"
    ]
   },
   "commodities": [
    "containers",
    "dry-bulk",
    "lng",
    "lpg",
    "refined-products"
   ],
   "organisations": [
    "Panama Canal Authority"
   ],
   "summary": "From 2023-03-01 (1 March 2023) the Panama Canal Authority cut the maximum authorised draft in the Neopanamax locks below its normal 15.24 m (50 feet), the first of a series of reductions caused by low water in Gatun Lake. The draft fell in steps to 13.41 m (44 feet) during June 2023, and from 2023-07-30 (30 July 2023) the authority also limited daily transit capacity to an average of 32 vessels. After the driest October in its records, the authority cut booking slots to 25, then 24, then 22 a day in December 2023, and scheduled further cuts to 20 and 18 that it later cancelled. Rain from late 2023 allowed 24 slots a day from 2024-01-16. The draft returned to 15.24 m on 2024-08-15 and 36 daily booking slots resumed for transit dates from 2024-09-01.",
   "timeline": [
    {
     "date": "2023-02-01",
     "date_precision": "day",
     "text": "The canal authority announces that from 2023-03-01 the maximum authorised draft in the Neopanamax locks will be 15.09 m (49.5 feet), below the normal 15.24 m (50 feet), and says further cuts will come in steps of about 15 cm.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2023-05-03",
     "date_precision": "day",
     "text": "The authority announces drafts of 13.56 m (44.5 feet) from 2023-05-24 and 13.41 m (44.0 feet) from 2023-05-30 in the Neopanamax locks.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-05-29",
     "date_precision": "day",
     "text": "Rain allows the authority to postpone the 13.41 m (44.0 feet) draft to 2023-06-13, keeping 13.56 m (44.5 feet) until 2023-06-12, with 13.26 m (43.5 feet) then scheduled for 2023-06-25.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2023-07-25",
     "date_precision": "day",
     "text": "The authority sets daily transit capacity at an average of 32 vessels from 2023-07-30, split 10 in the Neopanamax locks and 22 in the Panamax locks, and says it expects to hold the draft at 13.41 m (44 feet) for the following months.",
     "source_ids": [
      "s4",
      "s5"
     ]
    },
    {
     "date": "2023-10-30",
     "date_precision": "day",
     "text": "After the lowest October rainfall in its records since 1950, the authority cuts booking slots to 25 for 2023-11-03 to 2023-11-06, 24 to 2023-11-30, 22 in December 2023, 20 in January 2024 and 18 from February 2024.",
     "source_ids": [
      "s6"
     ]
    },
    {
     "date": "2024-01-16",
     "date_precision": "day",
     "text": "Better rainfall in late 2023 lets the authority run 24 transits a day instead of the planned reductions, and it says that level will hold until conditions change.",
     "source_ids": [
      "s7"
     ]
    },
    {
     "date": "2024-08-15",
     "date_precision": "day",
     "text": "The authority restores the maximum authorised draft in the Neopanamax locks to 15.24 m (50.0 feet) with immediate effect and announces 36 daily booking slots for transit dates from 2024-09-01.",
     "source_ids": [
      "s8"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The Panama Canal Authority attributed the restrictions to an extended dry season, high evaporation and rainfall well below average in the canal watershed, which lowered Gatun Lake, the fresh water source for the locks. It cited the lowest recorded October rainfall since 1950 and forecast El Nino conditions.",
    "attributed_by": "Panama Canal Authority",
    "source_ids": [
     "s5",
     "s6"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2024-09-01",
    "text": "Water levels recovered enough for the authority to return the Neopanamax draft to 15.24 m (50 feet) on 2024-08-15 and to offer 36 daily booking slots for transit dates from 2024-09-01, which it described as a return to normal operating conditions.",
    "source_ids": [
     "s8"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal"
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://pancanal.com/wp-content/uploads/2023/02/ADV02-2023-Draft-Adjustment-to-15.09m49.5-feet-TFW-for-the-Neopanamax-Locks.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory to Shipping No. A-02-2023: Draft Adjustment to 15.09 m (49.5 feet) TFW for the Neopanamax Locks",
     "published_date": "2023-02-01",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250324194946/https://pancanal.com/wp-content/uploads/2023/02/ADV02-2023-Draft-Adjustment-to-15.09m49.5-feet-TFW-for-the-Neopanamax-Locks.pdf",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://pancanal.com/wp-content/uploads/2023/01/ADV20-2023-Draft-Adjustment-in-the-Neopanamax-Locks.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory To Shipping No. A-20-2023: Draft Adjustment in the Neopanamax Locks",
     "published_date": "2023-05-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250327231312/https://pancanal.com/wp-content/uploads/2023/01/ADV20-2023-Draft-Adjustment-in-the-Neopanamax-Locks.pdf",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://pancanal.com/wp-content/uploads/2023/01/ADV22-2023-Update-to-the-Maximum-Authorized-Draft-in-the-Neopanamax-Locks55.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory To Shipping No. A-22-2023: Update to the Maximum Authorized Draft in the Neopanamax Locks",
     "published_date": "2023-05-29",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250327231224/https://pancanal.com/wp-content/uploads/2023/01/ADV22-2023-Update-to-the-Maximum-Authorized-Draft-in-the-Neopanamax-Locks55.pdf",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://pancanal.com/wp-content/uploads/2023/01/ADV35-2023-Additional-Measures-to-Mitigate-the-Extended-Dry-Season-and-Reduction-in-Precipitation-in-the-Canal-Watershed.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory To Shipping No. A-35-2023: Additional Measures to Mitigate the Extended Dry Season and Reduction in Precipitation in the Canal Watershed",
     "published_date": "2023-07-25",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260505040204/https://pancanal.com/wp-content/uploads/2023/01/ADV35-2023-Additional-Measures-to-Mitigate-the-Extended-Dry-Season-and-Reduction-in-Precipitation-in-the-Canal-Watershed.pdf",
     "type": "official"
    },
    {
     "id": "s5",
     "url": "https://pancanal.com/en/panama-canal-maintains-competitive-draft-for-the-following-months/",
     "publisher": "Panama Canal Authority",
     "title": "Panama Canal maintains competitive draft for the following months",
     "published_date": "2023-07-25",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260411014408/https://pancanal.com/en/panama-canal-maintains-competitive-draft-for-the-following-months/",
     "type": "official"
    },
    {
     "id": "s6",
     "url": "https://pancanal.com/wp-content/uploads/2023/01/ADV48-2023-Reduction-in-Transits-Due-to-the-Ongoing-Deficit-in-Precipitation-in-the-Canal-Watershed.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory To Shipping No. A-48-2023: Reduction in Transits Due to the Ongoing Deficit in Precipitation in the Canal Watershed",
     "published_date": "2023-10-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260605044246/https://pancanal.com/wp-content/uploads/2023/01/ADV48-2023-Reduction-in-Transits-Due-to-the-Ongoing-Deficit-in-Precipitation-in-the-Canal-Watershed.pdf",
     "type": "official"
    },
    {
     "id": "s7",
     "url": "https://pancanal.com/en/navigating-change-a-timeline-of-recent-future-progress-at-the-panama-canal/",
     "publisher": "Panama Canal Authority",
     "title": "Navigating Change: A Timeline of Recent & Future Progress at the Panama Canal",
     "published_date": "2024-02-14",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260609093913/https://pancanal.com/en/navigating-change-a-timeline-of-recent-future-progress-at-the-panama-canal/",
     "type": "official"
    },
    {
     "id": "s8",
     "url": "https://pancanal.com/wp-content/uploads/2024/08/ADV28-2024-Increase-in-the-Maximum-Allowable-Draft-in-the-Neopanamax-Locks-and-Modifications-to-the-Transit-Reservation-Booking-System.pdf",
     "publisher": "Panama Canal Authority",
     "title": "Advisory To Shipping No. A-28-2024: Increase in the Maximum Allowable Draft in the Neopanamax Locks and Modifications to the Transit Reservation (Booking) System",
     "published_date": "2024-08-15",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250308203605/https://pancanal.com/wp-content/uploads/2024/08/ADV28-2024-Increase-in-the-Maximum-Allowable-Draft-in-the-Neopanamax-Locks-and-Modifications-to-the-Transit-Reservation-Booking-System.pdf",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "Every draft figure, transit limit and date comes from dated Panama Canal Authority advisories to shipping and the authority's own statements."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2023/drought-restrictions-panama-canal-2023/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "year_ago",
     "window_start": "2022-03-02",
     "window_end": "2022-06-29",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2021-12-29",
     "baseline_end": "2022-02-22",
     "baseline_days": 56,
     "baseline_value": 943159.4833333333,
     "observed_value": 945738.1416666667,
     "abs_change": 2578.658333333442,
     "delta_pct": 0.27340639402997846,
     "z_score": 0.02453579569995628,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:bb7aba3eed7c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "year_ago",
     "window_start": "2022-03-02",
     "window_end": "2022-06-29",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2021-12-29",
     "baseline_end": "2022-02-22",
     "baseline_days": 56,
     "baseline_value": 34.204166666666666,
     "observed_value": 33.44166666666667,
     "abs_change": -0.7624999999999957,
     "delta_pct": -2.2292605676696184,
     "z_score": -0.13076767117116297,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:63ea8ccfdbe6",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "primary",
     "window_start": "2023-03-01",
     "window_end": "2023-06-28",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.71666666666667,
     "observed_value": 32.09166666666667,
     "abs_change": -0.625,
     "delta_pct": -1.9103413143148242,
     "z_score": -0.10879853497231115,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:08ac67811351",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "primary",
     "window_start": "2023-03-01",
     "window_end": "2023-06-28",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 916018.6875,
     "observed_value": 885506,
     "abs_change": -30512.6875,
     "delta_pct": -3.331011464763376,
     "z_score": -0.21155152597989915,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:8c421c5cf422",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-06-29",
     "window_end": "2023-07-26",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 839607.1071428572,
     "abs_change": -76292.32142857136,
     "delta_pct": -8.329770611121363,
     "z_score": -0.5289523257747534,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:93fd5777c4d8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-06-29",
     "window_end": "2023-07-26",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 31.642857142857142,
     "abs_change": -1.071428571428573,
     "delta_pct": -3.2751091703056816,
     "z_score": -0.1865117742382477,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:dd523436f8ca",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-07-27",
     "window_end": "2023-08-23",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 827088.3928571428,
     "abs_change": -88811.03571428568,
     "delta_pct": -9.696592545407352,
     "z_score": -0.6157474699405768,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:02b40386c70e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-07-27",
     "window_end": "2023-08-23",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 30.964285714285715,
     "abs_change": -1.75,
     "delta_pct": -5.349344978165939,
     "z_score": -0.3046358979224712,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:3ee1529e40da",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-08-24",
     "window_end": "2023-09-20",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 831649.2142857143,
     "abs_change": -84250.2142857142,
     "delta_pct": -9.198631602721187,
     "z_score": -0.5841262391677676,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:04ad6da9397e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-08-24",
     "window_end": "2023-09-20",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 31.321428571428573,
     "abs_change": -1.3928571428571423,
     "delta_pct": -4.2576419213973775,
     "z_score": -0.24246530650972198,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:be49f68e0ca1",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-09-21",
     "window_end": "2023-10-18",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 30.285714285714285,
     "abs_change": -2.4285714285714306,
     "delta_pct": -7.423580786026207,
     "z_score": -0.42276002160669474,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:f47a8fb63136",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-09-21",
     "window_end": "2023-10-18",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 811130.0357142857,
     "abs_change": -104769.39285714284,
     "delta_pct": -11.438962574805467,
     "z_score": -0.7263904542959749,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:8c22ed843b42",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-10-19",
     "window_end": "2023-11-15",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 27.285714285714285,
     "abs_change": -5.428571428571431,
     "delta_pct": -16.593886462882104,
     "z_score": -0.9449929894737883,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:74b53c7bcfe7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-10-19",
     "window_end": "2023-11-15",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 721661.8928571428,
     "abs_change": -194237.53571428568,
     "delta_pct": -21.207299584982504,
     "z_score": -1.3466938001751665,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:1e76051cd196",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-11-16",
     "window_end": "2023-12-13",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 22.571428571428573,
     "abs_change": -10.142857142857142,
     "delta_pct": -31.004366812227072,
     "z_score": -1.765644796122078,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:619b875e0e8f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-11-16",
     "window_end": "2023-12-13",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 578031.7857142857,
     "abs_change": -337867.64285714284,
     "delta_pct": -36.88916406292893,
     "z_score": -2.3425145826849945,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:5de8502a1d4a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-12-14",
     "window_end": "2024-01-10",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 21.035714285714285,
     "abs_change": -11.67857142857143,
     "delta_pct": -35.69868995633188,
     "z_score": -2.0329783391969,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:b628979dda2c",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2023-12-14",
     "window_end": "2024-01-10",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 550276.75,
     "abs_change": -365622.6785714285,
     "delta_pct": -39.919522511517165,
     "z_score": -2.5349466704512307,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:8689644f8c39",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-01-11",
     "window_end": "2024-02-07",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 19.928571428571427,
     "abs_change": -12.785714285714288,
     "delta_pct": -39.08296943231442,
     "z_score": -2.2257071725764224,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:0a20cf4b3494",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-01-11",
     "window_end": "2024-02-07",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 524514.6071428572,
     "abs_change": -391384.82142857136,
     "delta_pct": -42.7322923477562,
     "z_score": -2.7135615706936536,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:6c77b2592c26",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-02-08",
     "window_end": "2024-03-06",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 564856.0357142857,
     "abs_change": -351043.39285714284,
     "delta_pct": -38.32772266324937,
     "z_score": -2.4338651075586113,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:5564e96013a6",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-02-08",
     "window_end": "2024-03-06",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 20.642857142857142,
     "abs_change": -12.071428571428573,
     "delta_pct": -36.8995633187773,
     "z_score": -2.101365989750924,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:0c86b27fc4ec",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-03-07",
     "window_end": "2024-04-03",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 620376.6428571428,
     "abs_change": -295522.7857142857,
     "delta_pct": -32.26585545262611,
     "z_score": -2.048927885480028,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:00a83fe5a20d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-03-07",
     "window_end": "2024-04-03",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 22.357142857142858,
     "abs_change": -10.357142857142858,
     "delta_pct": -31.65938864628821,
     "z_score": -1.8029471509697277,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:893becfc775d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-04-04",
     "window_end": "2024-05-01",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 652145.0357142857,
     "abs_change": -263754.39285714284,
     "delta_pct": -28.79730946753979,
     "z_score": -1.8286702635692245,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:574041347ae0",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-04-04",
     "window_end": "2024-05-01",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 23.75,
     "abs_change": -8.964285714285715,
     "delta_pct": -27.40174672489083,
     "z_score": -1.5604818444600057,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:aaa6d3226d6b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-05-02",
     "window_end": "2024-05-29",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 24.5,
     "abs_change": -8.214285714285715,
     "delta_pct": -25.10917030567686,
     "z_score": -1.4299236024932322,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:abef376a7698",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-05-02",
     "window_end": "2024-05-29",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 688137.3214285715,
     "abs_change": -227762.10714285704,
     "delta_pct": -24.867589173858132,
     "z_score": -1.579127414668692,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:f1d331d33435",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-05-30",
     "window_end": "2024-06-26",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 27.357142857142858,
     "abs_change": -5.357142857142858,
     "delta_pct": -16.375545851528386,
     "z_score": -0.9325588711912384,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:a4299943fca7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-05-30",
     "window_end": "2024-06-26",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 764287.1428571428,
     "abs_change": -151612.28571428568,
     "delta_pct": -16.553377039525234,
     "z_score": -1.0511630743820126,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:6459f4ec1e6b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-06-27",
     "window_end": "2024-07-24",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 795719.25,
     "abs_change": -120180.17857142852,
     "delta_pct": -13.12154749991265,
     "z_score": -0.8332369991768994,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "2:eb5c99016449",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-06-27",
     "window_end": "2024-07-24",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 28.678571428571427,
     "abs_change": -4.035714285714288,
     "delta_pct": -12.336244541484724,
     "z_score": -0.7025276829640663,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:e5a030c1a62f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-07-25",
     "window_end": "2024-08-21",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 915899.4285714285,
     "observed_value": 822454.9285714285,
     "abs_change": -93444.5,
     "delta_pct": -10.20248480182478,
     "z_score": -0.6478723504584342,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:1c1bb5ea0a27",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-07-25",
     "window_end": "2024-08-21",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.714285714285715,
     "observed_value": 28.607142857142858,
     "abs_change": -4.107142857142858,
     "delta_pct": -12.55458515283843,
     "z_score": -0.7149618012466161,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:5aa06144e2c8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-08-22",
     "window_end": "2024-09-01",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 32.68181818181818,
     "observed_value": 31.181818181818183,
     "abs_change": -1.4999999999999964,
     "delta_pct": -4.58970792767732,
     "z_score": -0.26111648393354675,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:2ddf5bbeffa7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-capacity-tonnes",
     "entity_id": "panama-canal",
     "comparison": "segment",
     "window_start": "2024-08-22",
     "window_end": "2024-09-01",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2022-12-28",
     "baseline_end": "2023-02-21",
     "baseline_days": 56,
     "baseline_value": 914101.9545454546,
     "observed_value": 898598.1818181818,
     "abs_change": -15503.772727272823,
     "delta_pct": -1.6960660296347592,
     "z_score": -0.10749124536801578,
     "unit": "metric tons per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:65c1ed85a8f7",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "eu-embargo-russian-seaborne-crude-2022",
   "url_year": 2022,
   "title": "EU ban on seaborne Russian crude and the G7 price cap take effect",
   "event_type": "sanctions-action",
   "status": "ongoing",
   "start_date": "2022-12-05",
   "start_precision": "day",
   "end_date": null,
   "end_precision": null,
   "first_reported": "2022-12-03",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "No port or chokepoint stoppage criterion applies; the measure restricted who may buy and carry cargo loaded at the Russian crude export ports from 2022-12-05 onward, for more than seven days, without closing any port.",
   "scope": "regional",
   "entities": {
    "ports": [
     "primorsk",
     "ust-luga",
     "novorossiysk"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ru"
    ]
   },
   "commodities": [
    "crude-oil",
    "refined-products"
   ],
   "organisations": [
    "Council of the European Union",
    "European Commission"
   ],
   "summary": "From 2022-12-05 (5 December 2022) the European Union ban on seaborne imports of Russian crude oil applied, together with a prohibition on the maritime transport of Russian crude to third countries and on related services, unless the cargo was bought at or below the price cap agreed with the Price Cap Coalition. The Council set that cap at 60 United States dollars a barrel on 2022-12-03 (3 December 2022) and allowed a transition period of 45 days for cargoes loaded before 2022-12-05. The same prohibitions applied to refined products from 2023-02-05, with caps agreed on 2023-02-04. The measures affect cargoes loading at the Russian crude export ports, including Primorsk, Ust Luga and Novorossiysk.",
   "timeline": [
    {
     "date": "2022-12-03",
     "date_precision": "day",
     "text": "The Council sets the price cap for Russian crude at 60 United States dollars a barrel, applicable from 2022-12-05, with a transition period of 45 days for cargoes loaded before that date.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2022-12-05",
     "date_precision": "day",
     "text": "The European Union prohibition on maritime transport of Russian crude oil to third countries and on related services takes effect, with an exemption for cargoes bought at or below the cap.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2023-02-04",
     "date_precision": "day",
     "text": "The Council agrees price caps for Russian refined petroleum products, to apply from 2023-02-05.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2023-02-05",
     "date_precision": "day",
     "text": "The prohibitions and the cap extend to refined petroleum products.",
     "source_ids": [
      "s2",
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The Council of the European Union adopted the import ban and the transport prohibition as part of its sanctions against Russia, and set the price cap in cooperation with the Price Cap Coalition.",
    "attributed_by": "Council of the European Union",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": null,
   "related_events": [],
   "no_effect_reason": "not_a_throughput_event",
   "no_effect_note": "The measure changed who may buy Russian seaborne crude and who may carry or insure it, not whether cargo could load. Any change in tanker calls at Primorsk, Ust Luga or Novorossiysk after 2022-12-05 would sit alongside the price cap, the seasonal Baltic pattern and production decisions, so we do not claim a measured effect for it.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.consilium.europa.eu/en/press/press-releases/2022/12/03/russian-oil-eu-agrees-on-level-of-price-cap/",
     "publisher": "Council of the European Union",
     "title": "Russian oil: EU agrees on level of price cap",
     "published_date": "2022-12-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260809070639/https://www.consilium.europa.eu/en/press/press-releases/2022/12/03/russian-oil-eu-agrees-on-level-of-price-cap/",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.consilium.europa.eu/en/press/press-releases/2023/02/04/eu-agrees-on-level-of-price-caps-for-russian-petroleum-products/",
     "publisher": "Council of the European Union",
     "title": "EU agrees on level of price caps for Russian petroleum products",
     "published_date": "2023-02-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260817161440/https://www.consilium.europa.eu/en/press/press-releases/2023/02/04/eu-agrees-on-level-of-price-caps-for-russian-petroleum-products/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://finance.ec.europa.eu/system/files/2024-01/guidance-russian-oil-price-cap_en.pdf",
     "publisher": "European Commission",
     "title": "Guidance on the Russian oil price cap",
     "published_date": null,
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260824142514/https://finance.ec.europa.eu/system/files/2024-01/guidance-russian-oil-price-cap_en.pdf",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The dates, the scope of the prohibitions and the cap levels come from Council press releases and European Commission guidance."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/eu-embargo-russian-seaborne-crude-2022/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  },
  {
   "id": "cargo-truckers-strike-south-korea-2022",
   "url_year": 2022,
   "title": "Cargo truckers strike cuts container movement at South Korean ports",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2022-11-24",
   "start_precision": "day",
   "end_date": "2022-12-09",
   "end_precision": "day",
   "first_reported": "2022-11-23",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Landside container movement at the country's 12 main ports, including Busan, Gwangyang, Incheon and Ulsan, was cut for more than seven days, the closest non measured criterion to a port level restriction of seven days or more.",
   "scope": "regional",
   "entities": {
    "ports": [
     "busan",
     "gwangyang",
     "incheon",
     "ulsan"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "kr"
    ]
   },
   "commodities": [
    "containers",
    "chemicals",
    "vehicles",
    "dry-bulk"
   ],
   "organisations": [
    "Cargo Truckers Solidarity Union",
    "Korean Confederation of Trade Unions",
    "International Transport Workers' Federation",
    "Ministry of Land, Infrastructure and Transport"
   ],
   "summary": "From 2022-11-24 (24 November 2022) members of the Cargo Truckers Solidarity Union stopped hauling freight in South Korea, cutting container movement through Busan, Gwangyang, Incheon and Ulsan for 16 days. The union sought to keep and widen the Safe Rates system, minimum haulage rates for container and cement trucking that were due to lapse at the end of 2022. The Ministry of Land, Infrastructure and Transport reported that container movement at the country's 12 main ports fell to 37 percent of normal levels on 2022-11-29. The government issued return to work orders, first for cement haulage and then on 2022-12-08 for steel and petrochemical haulage. Members voted on 2022-12-09 (9 December 2022) to end the action, with nearly 62 percent of those voting in favour, and trucks returned the same day. The dispute over the Safe Rates system was not settled.",
   "timeline": [
    {
     "date": "2022-11-23",
     "date_precision": "day",
     "text": "The International Transport Workers' Federation says its Korean affiliate will stop work from midnight, with about 25,000 drivers expected to join, over the government's refusal to remove the sunset clause on the Safe Rates system.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2022-11-24",
     "date_precision": "day",
     "text": "The strike begins. Container volumes at the main ports fall sharply on the first day, with Busan and Gwangyang together handling under 15,000 TEU, according to trade press citing the ministry and the Busan city government.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2022-11-29",
     "date_precision": "day",
     "text": "The Ministry of Land, Infrastructure and Transport reports container movement at the 12 main ports at 37 percent of normal levels at 17:00, with Gwangyang and Ulsan worst affected and Busan recovering somewhat.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2022-12-08",
     "date_precision": "day",
     "text": "The government orders drivers in petrochemical and steel haulage back to work, the second such order after an earlier one covering cement haulage.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2022-12-09",
     "date_precision": "day",
     "text": "Union members vote to end the action, with nearly 62 percent of the 3,574 who voted in favour out of 26,144 members. The Busan branch had already told members to return to work that morning.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The union struck to keep the Safe Rates system, which sets minimum haulage rates for container and cement trucking and was due to expire at the end of 2022, to remove its sunset clause and to extend it to more freight types. The government said removing the sunset clause was not possible, and the opposition passed a committee bill to extend the system by three years while the governing party said the question should wait until drivers returned.",
    "attributed_by": "Cargo Truckers Solidarity Union and the Korean government",
    "source_ids": [
     "s1",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-12-09",
    "text": "Members voted on 2022-12-09 to end the action after 16 days, following government return to work orders covering cement haulage and then steel and petrochemical haulage. Drivers returned the same day without a settlement on the Safe Rates system.",
    "source_ids": [
     "s4"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "busan"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "gwangyang"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "incheon"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ulsan"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.itfglobal.org/en/news/truck-strike-south-korean-government-risks-peoples-lives-and-economic-damage-reneging-safety",
     "publisher": "International Transport Workers' Federation",
     "title": "Truck strike: South Korean government risks people's lives and economic damage by reneging on safety law promise",
     "published_date": "2022-11-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260217054403/https://www.itfglobal.org/en/news/truck-strike-south-korean-government-risks-peoples-lives-and-economic-damage-reneging-safety",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://maritime-executive.com/article/south-korea-s-truckers-resume-strike-blocking-ports-and-manufacturing",
     "publisher": "The Maritime Executive",
     "title": "South Korea's Truckers Resume Strike Blocking Ports and Manufacturing",
     "published_date": "2022-11-24",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250723085216/https://maritime-executive.com/article/south-korea-s-truckers-resume-strike-blocking-ports-and-manufacturing",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.ytn.co.kr/_ln/0102_202211300014242913",
     "publisher": "YTN",
     "title": "[경제]국토교통부 \"전국 항만 컨테이너 반출입량 평시 대비 37% 수준\"",
     "published_date": "2022-11-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20221207002532/https://www.ytn.co.kr/_ln/0102_202211300014242913",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.koreatimes.co.kr/www/nation/2022/12/281_341410.html",
     "publisher": "The Korea Times",
     "title": "Striking cargo truckers vote to end walkout",
     "published_date": "2022-12-09",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20221211234704/https://www.koreatimes.co.kr/www/nation/2022/12/281_341410.html",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The start date and the union's demands come from the International Transport Workers' Federation, the federation of the striking union. The return to work orders, the port throughput figures and the closing vote rest on Korean press reporting of Ministry of Land, Infrastructure and Transport data, consistent across two outlets, rather than on a ministry release we could retrieve."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/cargo-truckers-strike-south-korea-2022/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "ulsan",
     "comparison": "primary",
     "window_start": "2022-11-24",
     "window_end": "2022-12-09",
     "window_days": 16,
     "provisional": false,
     "baseline_start": "2022-09-22",
     "baseline_end": "2022-11-16",
     "baseline_days": 56,
     "baseline_value": 18.75,
     "observed_value": 14.75,
     "abs_change": -4,
     "delta_pct": -21.333333333333332,
     "z_score": -0.4692109631141532,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:162c0d0a700a",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "gwangyang",
     "comparison": "primary",
     "window_start": "2022-11-24",
     "window_end": "2022-12-09",
     "window_days": 16,
     "provisional": false,
     "baseline_start": "2022-09-22",
     "baseline_end": "2022-11-16",
     "baseline_days": 56,
     "baseline_value": 8.53125,
     "observed_value": 8.125,
     "abs_change": -0.40625,
     "delta_pct": -4.761904761904762,
     "z_score": -0.13541666666666666,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d4e505b76882",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "incheon",
     "comparison": "primary",
     "window_start": "2022-11-24",
     "window_end": "2022-12-09",
     "window_days": 16,
     "provisional": false,
     "baseline_start": "2022-09-22",
     "baseline_end": "2022-11-16",
     "baseline_days": 56,
     "baseline_value": 6.6875,
     "observed_value": 7.75,
     "abs_change": 1.0625,
     "delta_pct": 15.88785046728972,
     "z_score": 0.4015872525723039,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:90b321c61ba7",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "busan",
     "comparison": "primary",
     "window_start": "2022-11-24",
     "window_end": "2022-12-09",
     "window_days": 16,
     "provisional": false,
     "baseline_start": "2022-09-22",
     "baseline_end": "2022-11-16",
     "baseline_days": 56,
     "baseline_value": 33.46875,
     "observed_value": 32.5625,
     "abs_change": -0.90625,
     "delta_pct": -2.707749766573296,
     "z_score": -0.1554205927853986,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:27e5b673891c",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "dockworkers-strike-felixstowe-2022-09",
   "url_year": 2022,
   "title": "Second eight day dockworkers strike at the Port of Felixstowe",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2022-09-27",
   "start_precision": "day",
   "end_date": "2022-10-05",
   "end_precision": "day",
   "first_reported": "2022-09-13",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port level stoppage of eight days at Felixstowe, meeting the level 3 criterion of a port stoppage of seven days or more.",
   "scope": "port",
   "entities": {
    "ports": [
     "felixstowe"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "gb"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Unite the Union",
    "Felixstowe Dock and Railway Company",
    "CK Hutchison Holdings",
    "Maersk"
   ],
   "summary": "Dockworkers at the Port of Felixstowe struck for a second period of eight days from 2022-09-27 (27 September 2022), after the Felixstowe Dock and Railway Company ended pay talks and imposed a seven per cent increase. Unite, which represents about 1,900 workers at the port, said members rejected the imposed deal by 82 per cent on a turnout of 78 per cent, and called action from 07:00 on 2022-09-27 to 06:59 on 2022-10-05. The stoppage overlapped with strike action at the Port of Liverpool. Maersk told customers the action would go ahead and set out contingency handling for affected vessels. On 2022-12-13 Unite said members had accepted a two year increase of 15.5 per cent, ending the dispute.",
   "timeline": [
    {
     "date": "2022-09-13",
     "date_precision": "day",
     "text": "Unite announces a second eight day strike from 27 September after members reject the pay increase imposed by the company, voting 82 per cent against on a 78 per cent turnout.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2022-09-26",
     "date_precision": "day",
     "text": "Unite confirms that more than 1,900 members will restart strike action the following morning, and says the company did not return to negotiations after the August stoppage.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2022-09-27",
     "date_precision": "day",
     "text": "The strike begins at 07:00 and coincides with strike action at the Port of Liverpool.",
     "source_ids": [
      "s1",
      "s2",
      "s3"
     ]
    },
    {
     "date": "2022-10-05",
     "date_precision": "day",
     "text": "The strike ends at 06:59.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2022-12-13",
     "date_precision": "day",
     "text": "Unite says members have accepted a two year settlement of seven per cent plus 500 pounds for 2022 and 8.5 per cent plus 1,000 pounds from 1 January 2023. The port operator puts acceptance at more than 90 per cent.",
     "source_ids": [
      "s4",
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "Unite called the second strike after the Felixstowe Dock and Railway Company ended talks and imposed a seven per cent pay increase, which the union said was a real terms cut against a retail prices index of 12.3 per cent.",
    "attributed_by": "Unite the Union",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-10-05",
    "text": "The strike ended on 2022-10-05 as announced. The dispute was settled on 2022-12-13, when Unite said members had accepted a two year increase of 15.5 per cent with two lump sum payments.",
    "source_ids": [
     "s4",
     "s5"
    ]
   },
   "related_events": [
    "dockworkers-strike-felixstowe-2022-08"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "felixstowe"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.unitetheunion.org/news-events/news/2022/september/fresh-strike-dates-announced-in-felixstowe-dispute-as-workers-reject-imposed-pay-deal",
     "publisher": "Unite the Union",
     "title": "Fresh strike dates announced in Felixstowe dispute as workers reject imposed pay deal",
     "published_date": "2022-09-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20230607221505/https://www.unitetheunion.org/news-events/news/2022/september/fresh-strike-dates-announced-in-felixstowe-dispute-as-workers-reject-imposed-pay-deal",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.unitetheunion.org/news-events/news/2022/september/felixstowe-dock-workers-return-to-picket-lines",
     "publisher": "Unite the Union",
     "title": "Felixstowe dock workers return to picket lines",
     "published_date": "2022-09-26",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20230605140351/https://www.unitetheunion.org/news-events/news/2022/september/felixstowe-dock-workers-return-to-picket-lines",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.maersk.com/news/articles/2022/08/08/announced-strike-action-at-port-of-felixstowe",
     "publisher": "Maersk",
     "title": "Announced strike action at Ports of Felixstowe and Liverpool",
     "published_date": "2022-08-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260512124907/https://www.maersk.com/news/articles/2022/08/08/announced-strike-action-at-port-of-felixstowe",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://maritime-executive.com/article/felixstowe-and-union-agree-to-two-year-wage-deal-for-dockworkers",
     "publisher": "The Maritime Executive",
     "title": "Felixstowe and Union Agree to Two-Year Wage Deal for Dockworkers",
     "published_date": "2022-12-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251017113636/https://maritime-executive.com/article/felixstowe-and-union-agree-to-two-year-wage-deal-for-dockworkers",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.unitetheunion.org/news-events/news/2022/december/felixstowe-port-workers-win-155-per-cent-pay-increase",
     "publisher": "Unite the Union",
     "title": "Felixstowe port workers win 15.5 per cent pay increase",
     "published_date": "2022-12-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20231113042119/https://www.unitetheunion.org/news-events/news/2022/december/felixstowe-port-workers-win-155-per-cent-pay-increase",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "Strike dates, ballot figures and the settlement come from Unite, the union that called the action, and from a Maersk customer advisory, with trade press reporting of the settlement."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/dockworkers-strike-felixstowe-2022-09/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "felixstowe",
     "comparison": "primary",
     "window_start": "2022-09-27",
     "window_end": "2022-10-05",
     "window_days": 9,
     "provisional": false,
     "baseline_start": "2022-07-26",
     "baseline_end": "2022-09-19",
     "baseline_days": 47,
     "baseline_value": 1.9444444444444444,
     "observed_value": 0.4444444444444444,
     "abs_change": -1.5,
     "delta_pct": null,
     "z_score": -1.011736139214893,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:b52db25bf541",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2022-08-21",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-22",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-23",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-24",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-25",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-26",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-27",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-28",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      },
      {
       "date": "2022-08-29",
       "reason": "other_event:dockworkers-strike-felixstowe-2022-08"
      }
     ]
    }
   ]
  },
  {
   "id": "dockworkers-strike-felixstowe-2022-08",
   "url_year": 2022,
   "title": "Dockworkers strike for eight days at the Port of Felixstowe",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2022-08-21",
   "start_precision": "day",
   "end_date": "2022-08-29",
   "end_precision": "day",
   "first_reported": "2022-08-05",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port level stoppage of eight days at Felixstowe, meeting the level 3 criterion of a port stoppage of seven days or more.",
   "scope": "port",
   "entities": {
    "ports": [
     "felixstowe"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "gb"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Unite the Union",
    "Felixstowe Dock and Railway Company",
    "CK Hutchison Holdings",
    "Maersk"
   ],
   "summary": "From 2022-08-21 (21 August 2022) more than 1,900 dockworkers at the Port of Felixstowe struck for eight days in a pay dispute, halting container handling at the United Kingdom's largest container port. Unite announced the action on 2022-08-05 after conciliation talks at Acas ended without an improved offer from the Felixstowe Dock and Railway Company, which the union said had offered seven per cent against retail price inflation of 11.8 per cent. The strike ran from 07:00 on 2022-08-21 to 06:59 on 2022-08-29 and ended without a settlement. Maersk told customers it would keep receiving dry exports for affected vessels and did not plan diversions to other ports. A second eight day strike followed from 2022-09-27, and the dispute was settled in December 2022.",
   "timeline": [
    {
     "date": "2022-08-05",
     "date_precision": "day",
     "text": "Unite announces eight days of strike action at Felixstowe from 21 August after talks at the conciliation service Acas fail to produce an improved pay offer from the Felixstowe Dock and Railway Company.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2022-08-08",
     "date_precision": "day",
     "text": "Maersk issues a customer advisory on the announced strike, saying it will continue to accept dry exports for affected Felixstowe vessels and does not plan diversions to other United Kingdom or north European ports.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2022-08-21",
     "date_precision": "day",
     "text": "Over 1,900 Unite members, including crane drivers, machine operators and stevedores, stop work at 07:00. It is the first strike at the port since 1989.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2022-08-29",
     "date_precision": "day",
     "text": "The strike ends at 06:59 with no agreement. The company had offered seven per cent plus a lump sum of 500 pounds for 2022.",
     "source_ids": [
      "s4",
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "Unite called the strike over pay, saying the Felixstowe Dock and Railway Company would not improve on a seven per cent offer at a time when the retail prices index stood at 11.8 per cent, and that members had received 1.4 per cent the previous year.",
    "attributed_by": "Unite the Union",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-08-29",
    "text": "The strike ran its announced course and ended on 2022-08-29 without agreement. A second eight day strike followed from 2022-09-27, and on 2022-12-13 Unite said members had accepted a two year deal worth 15.5 per cent.",
    "source_ids": [
     "s4",
     "s5"
    ]
   },
   "related_events": [
    "dockworkers-strike-felixstowe-2022-09"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "felixstowe"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.unitetheunion.org/news-events/news/2022/august/strikes-announced-at-port-of-felixstowe-as-company-fails-to-make-acceptable-pay-offer",
     "publisher": "Unite the Union",
     "title": "Strikes announced at port of Felixstowe as company fails to make acceptable pay offer",
     "published_date": "2022-08-05",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20230927103447/https://www.unitetheunion.org/news-events/news/2022/august/strikes-announced-at-port-of-felixstowe-as-company-fails-to-make-acceptable-pay-offer",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.maersk.com/news/articles/2022/08/08/announced-strike-action-at-port-of-felixstowe",
     "publisher": "Maersk",
     "title": "Announced strike action at Ports of Felixstowe and Liverpool",
     "published_date": "2022-08-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260512124907/https://www.maersk.com/news/articles/2022/08/08/announced-strike-action-at-port-of-felixstowe",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://maritime-executive.com/article/week-long-strike-scheduled-to-disrupt-container-movement-at-felixstowe",
     "publisher": "The Maritime Executive",
     "title": "Week-Long Strike Scheduled to Disrupt Container Movement at Felixstowe",
     "published_date": "2022-08-05",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20241205150522/https://maritime-executive.com/article/week-long-strike-scheduled-to-disrupt-container-movement-at-felixstowe",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://maritime-executive.com/article/felixstowe-and-union-agree-to-two-year-wage-deal-for-dockworkers",
     "publisher": "The Maritime Executive",
     "title": "Felixstowe and Union Agree to Two-Year Wage Deal for Dockworkers",
     "published_date": "2022-12-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251017113636/https://maritime-executive.com/article/felixstowe-and-union-agree-to-two-year-wage-deal-for-dockworkers",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.unitetheunion.org/news-events/news/2022/december/felixstowe-port-workers-win-155-per-cent-pay-increase",
     "publisher": "Unite the Union",
     "title": "Felixstowe port workers win 15.5 per cent pay increase",
     "published_date": "2022-12-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20231113042119/https://www.unitetheunion.org/news-events/news/2022/december/felixstowe-port-workers-win-155-per-cent-pay-increase",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The strike dates, the number of workers and the pay positions come from Unite, the union that called the action, and from a Maersk customer advisory, with consistent trade press reporting at the start and at the settlement."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/dockworkers-strike-felixstowe-2022-08/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "felixstowe",
     "comparison": "primary",
     "window_start": "2022-08-21",
     "window_end": "2022-08-29",
     "window_days": 9,
     "provisional": false,
     "baseline_start": "2022-06-19",
     "baseline_end": "2022-08-13",
     "baseline_days": 56,
     "baseline_value": 2.3333333333333335,
     "observed_value": 0.2222222222222222,
     "abs_change": -2.111111111111111,
     "delta_pct": null,
     "z_score": -1.4239249366728122,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:5ffce164b3a0",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "military-exercises-taiwan-strait-2022",
   "url_year": 2022,
   "title": "Live fire exercise zones around Taiwan divert shipping",
   "event_type": "security-incident",
   "status": "ended",
   "start_date": "2022-08-04",
   "start_precision": "day",
   "end_date": "2022-08-10",
   "end_precision": "day",
   "first_reported": "2022-08-02",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "A restriction at a chokepoint; announced live fire zones closed water around Taiwan and in the Taiwan Strait to commercial traffic from noon on 2022-08-04, and ships were advised to route around them.",
   "scope": "chokepoint",
   "entities": {
    "ports": [
     "kaohsiung"
    ],
    "chokepoints": [
     "taiwan-strait"
    ],
    "lanes": [],
    "countries": [
     "tw",
     "cn"
    ]
   },
   "commodities": [
    "containers",
    "crude-oil",
    "lng"
   ],
   "organisations": [
    "People's Liberation Army Eastern Theater Command",
    "Ministry of Transportation and Communications of Taiwan"
   ],
   "summary": "From noon on 2022-08-04 (4 August 2022) the People's Liberation Army held live fire exercises in zones around Taiwan, and merchant ships were told to keep clear of the water and airspace involved. The Eastern Theater Command announced the operations on 2022-08-02 (2 August 2022) after a visit to Taipei by the Speaker of the United States House of Representatives, and named areas off the northern, southwestern and southeastern coasts of the island as well as long range firing in the Taiwan Strait. Taiwan's transport ministry told vessels to avoid the zones, several of which lay near commercial ports including Kaohsiung. Traffic inside the zones thinned on the first day and ships routed around the eastern side of the island. The announced windows ran to noon on 2022-08-07, and the command said on 2022-08-10 (10 August 2022) that it had finished.",
   "timeline": [
    {
     "date": "2022-08-02",
     "date_precision": "day",
     "text": "The Eastern Theater Command announces joint military operations in the water and airspace around Taiwan, including long range live firing in the Taiwan Strait and missile tests off the eastern coast.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2022-08-04",
     "date_precision": "day",
     "text": "The exercises begin at noon in six zones announced to run until noon on 2022-08-07. Traffic inside them falls during the day, ships route around the eastern side of the island at a cost of about three days, and Taiwan's transport ministry tells vessels to avoid the areas.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2022-08-10",
     "date_precision": "day",
     "text": "The Eastern Theater Command says it has completed all tasks in the series of operations around Taiwan and will continue patrols in the strait.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The Eastern Theater Command said the exercises were a response to what it called an escalation by the United States on the Taiwan question and a warning against moves towards Taiwanese independence.",
    "attributed_by": "People's Liberation Army Eastern Theater Command",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-08-10",
    "text": "The announced zone windows expired at noon on 2022-08-07, and the Eastern Theater Command said on 2022-08-10 that the operations were finished, after which commercial routing around Taiwan returned to its usual pattern.",
    "source_ids": [
     "s2",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "taiwan-strait"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "kaohsiung"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://english.news.cn/20220803/0834bf4e02d546ab81f6f0c7a6b28955/c.html",
     "publisher": "Xinhua",
     "title": "PLA Eastern Theater Command to launch joint military operations around Taiwan Island",
     "published_date": "2022-08-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251110043657/https://english.news.cn/20220803/0834bf4e02d546ab81f6f0c7a6b28955/c.html",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://english.news.cn/20220810/cd2b7a7e7f4f44fe95efb78928ee3e6d/c.html",
     "publisher": "Xinhua",
     "title": "PLA Eastern Theater Command fulfills all tasks of joint military operations around Taiwan",
     "published_date": "2022-08-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240418060026/https://english.news.cn/20220810/cd2b7a7e7f4f44fe95efb78928ee3e6d/c.html",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://time.com/6203512/china-taiwan-military-exercises-shipping-routes/",
     "publisher": "TIME",
     "title": "China's Military Exercises Around Taiwan Are Forcing Shippers to Change Routes",
     "published_date": "2022-08-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240623005922/https://time.com/6203512/china-taiwan-military-exercises-shipping-routes/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The announcement of the exercises and their completion come from the theater command as carried by the state news agency, and the zone window and the rerouting from one trade press report; Taiwan's own notice to mariners is no longer online, so no source here is an official one."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/military-exercises-taiwan-strait-2022/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "kaohsiung",
     "comparison": "primary",
     "window_start": "2022-08-04",
     "window_end": "2022-08-10",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2022-06-02",
     "baseline_end": "2022-07-27",
     "baseline_days": 56,
     "baseline_value": 35.785714285714285,
     "observed_value": 36.57142857142857,
     "abs_change": 0.7857142857142847,
     "delta_pct": 2.195608782435127,
     "z_score": 0.13095238095238093,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ee15fff74908",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "taiwan-strait",
     "comparison": "primary",
     "window_start": "2022-08-04",
     "window_end": "2022-08-10",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2022-06-02",
     "baseline_end": "2022-07-27",
     "baseline_days": 56,
     "baseline_value": 240.64285714285714,
     "observed_value": 239.14285714285714,
     "abs_change": -1.5,
     "delta_pct": -0.6233303650934996,
     "z_score": -0.09682458365518537,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:62a0ebf7f480",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "port-warning-strikes-germany-2022",
   "url_year": 2022,
   "title": "Warning strikes stop work at German North Sea ports",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2022-06-09",
   "start_precision": "day",
   "end_date": "2022-07-16",
   "end_precision": "day",
   "first_reported": "2022-06-13",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 4,
   "severity_basis": "Simultaneous stoppage of the principal ports of one country, with Hamburg, Bremerhaven, Wilhelmshaven, Bremen, Emden and Brake stopped together for 48 hours from 2022-07-14.",
   "scope": "regional",
   "entities": {
    "ports": [
     "hamburg",
     "bremerhaven",
     "bremen",
     "wilhelmshaven",
     "emden",
     "brake"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "de"
    ]
   },
   "commodities": [
    "containers",
    "general-cargo"
   ],
   "organisations": [
    "ver.di",
    "Zentralverband der deutschen Seehafenbetriebe"
   ],
   "summary": "Between 2022-06-09 (9 June 2022) and 2022-07-16 (16 July 2022) the union ver.di called three warning strikes at German North Sea ports during a pay round covering about 12,000 port workers. The first stoppage, on 2022-06-09, lasted one shift at Hamburg, Bremerhaven, Wilhelmshaven and Emden, and a second followed later in June. After a sixth round of talks with the Zentralverband der deutschen Seehafenbetriebe ended without agreement, ver.di called a 48 hour stoppage from 06:00 on 2022-07-14 to 06:00 on 2022-07-16 at Hamburg, Bremerhaven, Bremen, Wilhelmshaven, Emden and Brake, the longest such action at these ports in decades. A settlement before the Hamburg labour court paused further action, and the two sides agreed terms on 2022-08-23.",
   "timeline": [
    {
     "date": "2022-06-09",
     "date_precision": "day",
     "text": "ver.di holds a first warning strike of one shift at Hamburg, Bremerhaven, Wilhelmshaven and Emden after pay talks break down. The union represents about 12,000 port workers.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2022-07-13",
     "date_precision": "day",
     "text": "A sixth round of talks with the employers' association ends without agreement and ver.di calls a 48 hour stoppage, following two shorter warning strikes in June.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2022-07-14",
     "date_precision": "day",
     "text": "Work stops for 48 hours from 06:00 at Hamburg, Bremerhaven, Bremen, Wilhelmshaven, Emden and Brake, in what trade press described as the longest such action at these ports in more than 40 years.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2022-07-16",
     "date_precision": "day",
     "text": "The stoppage ends at 06:00. Further action is paused while talks resume under an arrangement reached at the Hamburg labour court.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2022-08-23",
     "date_precision": "day",
     "text": "ver.di and the employers' association agree terms for about 12,000 workers, with increases from 1 July 2022 of 9.4 per cent in full container operations and 7.9 per cent in conventional and general cargo operations, and an inflation clause.",
     "source_ids": [
      "s1",
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "ver.di called the stoppages in the 2022 pay round for German seaports, saying it sought compensation for inflation for about 12,000 workers after successive rounds of talks with the Zentralverband der deutschen Seehafenbetriebe failed to produce an acceptable offer.",
    "attributed_by": "ver.di",
    "source_ids": [
     "s1",
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-08-23",
    "text": "The strikes ended on 2022-07-16 and further action was paused while negotiations continued. On 2022-08-23 ver.di and the employers' association agreed a settlement with staged increases and an inflation clause, which the union's collective bargaining commission approved on 2022-09-05.",
    "source_ids": [
     "s1",
     "s4"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "hamburg",
     "window_start": "2022-07-14",
     "window_end": "2022-07-16",
     "window_reason": "The 48 hour stoppage is the only port wide interruption in this record with day precision at both ends."
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "bremerhaven",
     "window_start": "2022-07-14",
     "window_end": "2022-07-16",
     "window_reason": "The 48 hour stoppage is the only port wide interruption in this record with day precision at both ends."
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.verdi.de/presse/pressemitteilungen/++co++943f2920-22f9-11ed-93b0-001a4a16012a",
     "publisher": "ver.di",
     "title": "Seehäfen: ver.di erzielt Tarifergebnis - kräftige Lohnsteigerung und Inflationsausgleich vereinbart",
     "published_date": "2022-08-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240713231102/https://www.verdi.de/presse/pressemitteilungen/++co++943f2920-22f9-11ed-93b0-001a4a16012a",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://gcaptain.com/german-ports-brace-for-more-strikes-as-pay-talks-fail/",
     "publisher": "gCaptain",
     "title": "German Ports Brace for More Strikes as Pay Talks Fail",
     "published_date": "2022-06-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260521084147/https://gcaptain.com/german-ports-brace-for-more-strikes-as-pay-talks-fail/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://maritime-executive.com/article/germany-s-north-sea-ports-face-longest-strike-action-in-decades",
     "publisher": "The Maritime Executive",
     "title": "Germany's North Sea Ports Face Longest Strike Action in Decades",
     "published_date": "2022-07-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260207224700/https://maritime-executive.com/article/germany-s-north-sea-ports-face-longest-strike-action-in-decades",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://maritime-executive.com/article/german-ports-and-workers-agree-to-terms-to-end-three-months-of-strikes",
     "publisher": "The Maritime Executive",
     "title": "German Ports and Workers Agree to Terms to End Three Months of Strikes",
     "published_date": "2022-08-25",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260813190020/https://maritime-executive.com/article/german-ports-and-workers-agree-to-terms-to-end-three-months-of-strikes",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The settlement and the union's position come from ver.di's own statement, but the strike dates and the ports covered rest on trade press reporting, since the employers' association and port statements from 2022 are no longer online."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/port-warning-strikes-germany-2022/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "hamburg",
     "comparison": "primary",
     "window_start": "2022-07-14",
     "window_end": "2022-07-16",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2022-05-12",
     "baseline_end": "2022-07-06",
     "baseline_days": 56,
     "baseline_value": 8.166666666666666,
     "observed_value": 5.666666666666667,
     "abs_change": -2.499999999999999,
     "delta_pct": -30.612244897959176,
     "z_score": -0.8111071056538127,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:00d289d4a096",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "bremerhaven",
     "comparison": "primary",
     "window_start": "2022-07-14",
     "window_end": "2022-07-16",
     "window_days": 3,
     "provisional": false,
     "baseline_start": "2022-05-12",
     "baseline_end": "2022-07-06",
     "baseline_days": 56,
     "baseline_value": 6.166666666666667,
     "observed_value": 2.6666666666666665,
     "abs_change": -3.5000000000000004,
     "delta_pct": -56.756756756756765,
     "z_score": -1.4288690166235207,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:3d83cefd7b2a",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "covid-lockdown-shanghai-2022",
   "url_year": 2022,
   "title": "Shanghai COVID-19 lockdown restricts trucking to the port",
   "event_type": "regulatory-or-customs-action",
   "status": "ended",
   "start_date": "2022-03-28",
   "start_precision": "day",
   "end_date": "2022-06-01",
   "end_precision": "day",
   "first_reported": "2022-04-06",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Landside access to the principal container port of China was restricted for more than two months, the closest non measured criterion to a port level restriction of seven days or more, since the terminals themselves stayed open.",
   "scope": "regional",
   "entities": {
    "ports": [
     "shanghai-cn",
     "shanghai-yangshan"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "cn"
    ],
    "terminals": [
     "Yangshan",
     "Waigaoqiao"
    ]
   },
   "commodities": [
    "containers",
    "general-cargo",
    "perishables"
   ],
   "organisations": [
    "Shanghai Municipal People's Government",
    "Shanghai International Port Group",
    "Maersk"
   ],
   "summary": "Shanghai began a staged COVID-19 lockdown on 2022-03-28 (28 March 2022), starting in Pudong and extending to the rest of the city from 2022-04-01, and lifted citywide restrictions on 2022-06-01 (1 June 2022). The container terminals at Yangshan and Waigaoqiao kept working under closed loop arrangements, and the carrier Maersk reported in early April that terminal operations continued without delay. The restriction fell on the landside: trucking capacity into and out of the city was cut by driver shortages, testing and quarantine rules, and warehouses inside locked down areas stopped work. Carriers shifted boxes to barge and rail and omitted some calls. The city said normal production and daily life would resume from 2022-06-01, and trade press reported container work close to normal levels in early June.",
   "timeline": [
    {
     "date": "2022-03-28",
     "date_precision": "day",
     "text": "A staged lockdown begins in Pudong, the district that holds part of the port's landside operations, and extends to the rest of the city from 2022-04-01.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2022-04-06",
     "date_precision": "day",
     "text": "Maersk reports that the Yangshan and Waigaoqiao terminals are operating normally for vessel, yard and gate work, while trucking capacity is reduced and warehouses inside locked down areas are affected. No Shanghai calls had been cancelled at that point.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2022-05-31",
     "date_precision": "day",
     "text": "The city government says normal production and daily operations will resume from 2022-06-01, with public transport restarting and most residents free to leave their compounds.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2022-06-01",
     "date_precision": "day",
     "text": "Citywide restrictions are lifted.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2022-06-06",
     "date_precision": "day",
     "text": "Trade press reports Shanghai handled just over 3.4 million TEU in May against a normal month of close to 4 million, with container ship calls down 16 percent against May 2021, and waiting times back near seasonal norms as trucking recovered.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The restrictions were COVID-19 control measures ordered by the Shanghai city government during an Omicron outbreak, lifted when the city said the outbreak had been brought under control.",
    "attributed_by": "Shanghai Municipal People's Government",
    "source_ids": [
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-06-01",
    "text": "The city lifted citywide restrictions from 2022-06-01 and removed limits on which businesses could reopen. Container work at the port returned close to normal levels over the following days, with trucking the slowest part to recover.",
    "source_ids": [
     "s2",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-cn"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-yangshan"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.maersk.com/news/articles/2022/04/06/covid-flareups-in-china-continue",
     "publisher": "Maersk",
     "title": "Covid flareups in China continue",
     "published_date": "2022-04-06",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260516151304/https://www.maersk.com/news/articles/2022/04/06/covid-flareups-in-china-continue",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.globaltimes.cn/page/202205/1266982.shtml",
     "publisher": "Global Times",
     "title": "Shanghai to fully resume normal production, daily operations from June 1",
     "published_date": "2022-05-31",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250913163423/https://www.globaltimes.cn/page/202205/1266982.shtml",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.maritime-executive.com/article/shanghai-s-port-is-nearing-normal-operations-after-two-month-lockdown",
     "publisher": "The Maritime Executive",
     "title": "Shanghai's Port is Nearing Normal Operations After Two-Month Lockdown",
     "published_date": "2022-06-06",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260419212737/https://www.maritime-executive.com/article/shanghai-s-port-is-nearing-normal-operations-after-two-month-lockdown",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The lockdown dates and the statement that the port kept working are supported by a carrier advisory and by reporting of the city government's own announcement, but we could not retrieve a city or port authority page stating the 2022-03-28 start directly. The window does not overlap Lunar New Year or China's National Day holiday exclusions, though it runs for more than 28 days, so the year ago comparison applies."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/covid-lockdown-shanghai-2022/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-yangshan",
     "comparison": "year_ago",
     "window_start": "2021-03-29",
     "window_end": "2021-06-02",
     "window_days": 66,
     "provisional": false,
     "baseline_start": "2021-01-18",
     "baseline_end": "2021-03-21",
     "baseline_days": 34,
     "baseline_value": 12.522727272727273,
     "observed_value": 12.075757575757576,
     "abs_change": -0.44696969696969724,
     "delta_pct": -3.5692679975801593,
     "z_score": -0.13476643431884888,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2f4dae118684",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-02-05",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-06",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-07",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-08",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-09",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-10",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-11",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-12",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-13",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-14",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-15",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-16",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-17",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-18",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-19",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-20",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-21",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-22",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-23",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-24",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-25",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-26",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-27",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-28",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-01",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-02",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-03",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-04",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-05",
       "reason": "holiday:lunar-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-cn",
     "comparison": "year_ago",
     "window_start": "2021-03-29",
     "window_end": "2021-06-02",
     "window_days": 66,
     "provisional": false,
     "baseline_start": "2021-01-18",
     "baseline_end": "2021-03-21",
     "baseline_days": 34,
     "baseline_value": 32.128787878787875,
     "observed_value": 31.37878787878788,
     "abs_change": -0.7499999999999964,
     "delta_pct": -2.3343551049280724,
     "z_score": -0.1315587028960544,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:0c50cffde80e",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-02-05",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-06",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-07",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-08",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-09",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-10",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-11",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-12",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-13",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-14",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-15",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-16",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-17",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-18",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-19",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-20",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-21",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-22",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-23",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-24",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-25",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-26",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-27",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-02-28",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-01",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-02",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-03",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-04",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2021-03-05",
       "reason": "holiday:lunar-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-yangshan",
     "comparison": "primary",
     "window_start": "2022-03-28",
     "window_end": "2022-06-01",
     "window_days": 66,
     "provisional": false,
     "baseline_start": "2022-01-17",
     "baseline_end": "2022-03-20",
     "baseline_days": 34,
     "baseline_value": 11.454545454545455,
     "observed_value": 14.969696969696969,
     "abs_change": 3.515151515151514,
     "delta_pct": 30.687830687830676,
     "z_score": 1.0147368367575242,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:39433246b789",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2022-01-25",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-26",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-27",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-28",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-29",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-30",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-31",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-01",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-02",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-03",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-04",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-05",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-06",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-07",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-08",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-09",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-10",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-11",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-12",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-13",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-14",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-15",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-16",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-17",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-18",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-19",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-20",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-21",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-22",
       "reason": "holiday:lunar-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "shanghai-cn",
     "comparison": "primary",
     "window_start": "2022-03-28",
     "window_end": "2022-06-01",
     "window_days": 66,
     "provisional": false,
     "baseline_start": "2022-01-17",
     "baseline_end": "2022-03-20",
     "baseline_days": 34,
     "baseline_value": 32.90909090909091,
     "observed_value": 23.454545454545453,
     "abs_change": -9.454545454545453,
     "delta_pct": -28.729281767955797,
     "z_score": -1.6458251108538704,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:a48ec8c891fe",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2022-01-25",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-26",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-27",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-28",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-29",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-30",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-01-31",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-01",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-02",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-03",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-04",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-05",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-06",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-07",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-08",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-09",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-10",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-11",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-12",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-13",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-14",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-15",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-16",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-17",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-18",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-19",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-20",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-21",
       "reason": "holiday:lunar-new-year"
      },
      {
       "date": "2022-02-22",
       "reason": "holiday:lunar-new-year"
      }
     ]
    }
   ]
  },
  {
   "id": "port-closures-ukraine-black-sea-2022",
   "url_year": 2022,
   "title": "Ukraine's Black Sea ports close to commercial shipping after the invasion",
   "event_type": "port-closure",
   "status": "ended",
   "start_date": "2022-02-24",
   "start_precision": "day",
   "end_date": "2022-08-01",
   "end_precision": "day",
   "first_reported": "2022-02-24",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 4,
   "severity_basis": "Simultaneous stoppage of the principal ports of one country; every Ukrainian Black Sea and Azov Sea port was closed to commercial traffic from 2022-02-24.",
   "scope": "regional",
   "entities": {
    "ports": [
     "odessa",
     "chornomorsk",
     "pivdennyi",
     "mariupol"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ua"
    ]
   },
   "commodities": [
    "grain",
    "containers",
    "dry-bulk"
   ],
   "organisations": [
    "International Maritime Organization",
    "United Nations",
    "Joint Coordination Centre"
   ],
   "summary": "From 2022-02-24 (24 February 2022) commercial shipping stopped at Ukraine's Black Sea and Azov Sea ports after Russia's invasion, and merchant ships and their crews were left in port. The International Maritime Organization Council met in extraordinary session on 2022-03-10 and 2022-03-11 and agreed to encourage a blue safe maritime corridor so that ships and seafarers could leave the area. Grain exports restarted under the Black Sea Grain Initiative, signed in Istanbul on 2022-07-22, with the first outbound vessel leaving Odesa on 2022-08-01 (1 August 2022). The United Nations said it was the first cargo ship to leave a Ukrainian Black Sea port since 2022-02-26. Movements at Chornomorsk and Pivdennyi followed in August 2022. Mariupol, under Russian control, did not reopen to commercial traffic.",
   "timeline": [
    {
     "date": "2022-02-24",
     "date_precision": "day",
     "text": "Commercial shipping halts at Ukrainian ports as Russia invades. The Azov Sea closes to commercial traffic, and carriers stop calling at Ukrainian ports.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2022-03-10",
     "date_precision": "day",
     "text": "The International Maritime Organization Council, in extraordinary session, says ships should be allowed to sail from Ukrainian ports without threat of attack and backs a blue safe maritime corridor for seafarers.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2022-08-01",
     "date_precision": "day",
     "text": "The first vessel under the Black Sea Grain Initiative leaves Odesa with 26,527 tonnes of corn for Lebanon. The United Nations says it is the first cargo ship out of a Ukrainian Black Sea port since 2022-02-26.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2022-08-09",
     "date_precision": "day",
     "text": "The Joint Coordination Centre reports authorised movements for vessels bound for Chornomorsk and Pivdennyi, extending the corridor beyond Odesa.",
     "source_ids": [
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Ukrainian authorities suspended commercial shipping at the country's ports after Russia's invasion on 2022-02-24, and Russia closed the Azov Sea to commercial vessels, as reported by Lloyd's List and Ship Technology.",
    "attributed_by": "Ukrainian authorities as reported by Lloyd's List and Ship Technology",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-08-01",
    "text": "Exports resumed through a corridor agreed under the Black Sea Grain Initiative, with the first departure from Odesa on 2022-08-01 and later movements at Chornomorsk and Pivdennyi. Mariupol stayed closed to commercial traffic.",
    "source_ids": [
     "s4",
     "s5"
    ]
   },
   "related_events": [
    "grain-deal-exit-odesa-port-attacks-2023"
   ],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "pivdennyi"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mariupol"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.lloydslist.com/LL1139962/Sea-of-Asov-closed-to-shipping-as-Russia-invades-Ukraine",
     "publisher": "Lloyd's List",
     "title": "Sea of Asov closed to shipping as Russia invades Ukraine",
     "published_date": "2022-02-24",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260316202045/https://www.lloydslist.com/LL1139962/Sea-of-Asov-closed-to-shipping-as-Russia-invades-Ukraine",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.ship-technology.com/news/ukrainian-ports-pause-commercial-shipping/",
     "publisher": "Ship Technology",
     "title": "Ukrainian ports pause commercial shipping amid Russian invasion",
     "published_date": "2022-02-25",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260215101219/https://www.ship-technology.com/news/ukrainian-ports-pause-commercial-shipping/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.imo.org/en/mediacentre/meetingsummaries/pages/council,-35th-extraordinary-session-(c-es-35)).aspx",
     "publisher": "International Maritime Organization",
     "title": "Council, 35th Extraordinary Session (C ES 35)",
     "published_date": "2022-03-11",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260627062044/https://www.imo.org/en/mediacentre/meetingsummaries/pages/council,-35th-extraordinary-session-(c-es-35)).aspx",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://news.un.org/en/story/2022/08/1123702",
     "publisher": "UN News",
     "title": "Ukraine: Guterres welcomes departure of first grain ship, to help ease food crisis",
     "published_date": "2022-08-01",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260909011118/https://news.un.org/en/story/2022/08/1123702",
     "type": "official"
    },
    {
     "id": "s5",
     "url": "https://turkiye.un.org/en/194294-black-sea-grain-initiative-joint-coordination-centre-operational-update",
     "publisher": "United Nations in Türkiye",
     "title": "Black Sea Grain Initiative Joint Coordination Centre Operational update",
     "published_date": "2022-08-09",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250628115023/https://turkiye.un.org/en/194294-black-sea-grain-initiative-joint-coordination-centre-operational-update",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The resumption dates and the corridor movements are confirmed by United Nations sources, while the start of the closure rests on trade press reporting from 2022-02-24 and 2022-02-25 rather than a Ukrainian government document."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2022/port-closures-ukraine-black-sea-2022/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk",
     "comparison": "year_ago",
     "window_start": "2021-02-25",
     "window_end": "2021-06-24",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2020-12-24",
     "baseline_end": "2021-02-17",
     "baseline_days": 46,
     "baseline_value": 2.2125,
     "observed_value": 2.7416666666666667,
     "abs_change": 0.5291666666666668,
     "delta_pct": null,
     "z_score": 0.3569180268896983,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:331d2bba45ba",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2020-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "pivdennyi",
     "comparison": "year_ago",
     "window_start": "2021-02-25",
     "window_end": "2021-06-24",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2020-12-24",
     "baseline_end": "2021-02-17",
     "baseline_days": 46,
     "baseline_value": 2.6416666666666666,
     "observed_value": 2.5083333333333333,
     "abs_change": -0.1333333333333333,
     "delta_pct": null,
     "z_score": -0.08993210126354603,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:c5d0859639ef",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2020-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mariupol",
     "comparison": "year_ago",
     "window_start": "2021-02-25",
     "window_end": "2021-06-24",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2020-12-24",
     "baseline_end": "2021-02-17",
     "baseline_days": 46,
     "baseline_value": 1.0041666666666667,
     "observed_value": 1.7583333333333333,
     "abs_change": 0.7541666666666667,
     "delta_pct": null,
     "z_score": 0.5086784477719323,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:06ff7ee14b6a",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2020-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa",
     "comparison": "year_ago",
     "window_start": "2021-02-25",
     "window_end": "2021-06-24",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2020-12-24",
     "baseline_end": "2021-02-17",
     "baseline_days": 46,
     "baseline_value": 3.1416666666666666,
     "observed_value": 2.966666666666667,
     "abs_change": -0.17499999999999982,
     "delta_pct": -5.570291777188324,
     "z_score": -0.09442870632672333,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:5a9407dd12a6",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2020-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2020-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "pivdennyi",
     "comparison": "primary",
     "window_start": "2022-02-24",
     "window_end": "2022-06-23",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 3.220833333333333,
     "observed_value": 0.06666666666666667,
     "abs_change": -3.1541666666666663,
     "delta_pct": -97.93014230271667,
     "z_score": -1.8210589740689447,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:9e06512385fb",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mariupol",
     "comparison": "primary",
     "window_start": "2022-02-24",
     "window_end": "2022-06-23",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 1.425,
     "observed_value": 0.1,
     "abs_change": -1.325,
     "delta_pct": null,
     "z_score": -0.8937002563064886,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d41d3ef041b9",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk",
     "comparison": "primary",
     "window_start": "2022-02-24",
     "window_end": "2022-06-23",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 3.0791666666666666,
     "observed_value": 0.06666666666666667,
     "abs_change": -3.0124999999999997,
     "delta_pct": -97.83491204330176,
     "z_score": -1.7392676859337477,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:d5123dcf0361",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa",
     "comparison": "primary",
     "window_start": "2022-02-24",
     "window_end": "2022-06-23",
     "window_days": 120,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 2.504166666666667,
     "observed_value": 0.15,
     "abs_change": -2.354166666666667,
     "delta_pct": null,
     "z_score": -1.3591787587172441,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ae9583ba77d8",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "pivdennyi",
     "comparison": "segment",
     "window_start": "2022-06-24",
     "window_end": "2022-07-21",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 3.2142857142857144,
     "observed_value": 0,
     "abs_change": -3.2142857142857144,
     "delta_pct": -100,
     "z_score": -1.855768722395226,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:bf0f9ffca7b7",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mariupol",
     "comparison": "segment",
     "window_start": "2022-06-24",
     "window_end": "2022-07-21",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 1.4285714285714286,
     "observed_value": 0,
     "abs_change": -1.4285714285714286,
     "delta_pct": null,
     "z_score": -0.9635582278237075,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:dfce4c413901",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk",
     "comparison": "segment",
     "window_start": "2022-06-24",
     "window_end": "2022-07-21",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 3.0714285714285716,
     "observed_value": 0.03571428571428571,
     "abs_change": -3.035714285714286,
     "delta_pct": -98.83720930232559,
     "z_score": -1.7526704600399354,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:090b23f0fdaa",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa",
     "comparison": "segment",
     "window_start": "2022-06-24",
     "window_end": "2022-07-21",
     "window_days": 28,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 2.5,
     "observed_value": 0,
     "abs_change": -2.5,
     "delta_pct": null,
     "z_score": -1.4433756729740645,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:b45d96e0242b",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "chornomorsk",
     "comparison": "segment",
     "window_start": "2022-07-22",
     "window_end": "2022-08-01",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 3.090909090909091,
     "observed_value": 0.2727272727272727,
     "abs_change": -2.8181818181818183,
     "delta_pct": -91.17647058823529,
     "z_score": -1.6270780313525819,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2135bd36cd61",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "pivdennyi",
     "comparison": "segment",
     "window_start": "2022-07-22",
     "window_end": "2022-08-01",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 3.090909090909091,
     "observed_value": 0.09090909090909091,
     "abs_change": -3,
     "delta_pct": -97.05882352941177,
     "z_score": -1.7320508075688774,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:734993e6ae7c",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "odessa",
     "comparison": "segment",
     "window_start": "2022-07-22",
     "window_end": "2022-08-01",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 2.4545454545454546,
     "observed_value": 0.09090909090909091,
     "abs_change": -2.3636363636363638,
     "delta_pct": null,
     "z_score": -1.364646090811843,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:6881e2adacf3",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "mariupol",
     "comparison": "segment",
     "window_start": "2022-07-22",
     "window_end": "2022-08-01",
     "window_days": 11,
     "provisional": false,
     "baseline_start": "2021-12-23",
     "baseline_end": "2022-02-16",
     "baseline_days": 46,
     "baseline_value": 1.4545454545454546,
     "observed_value": 0,
     "abs_change": -1.4545454545454546,
     "delta_pct": null,
     "z_score": -0.9810774683295931,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:88554a1252a6",
     "superseded_by": null,
     "excluded_dates": [
      {
       "date": "2021-12-24",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-25",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-26",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-27",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-28",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-29",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-30",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2021-12-31",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-01",
       "reason": "holiday:christmas-new-year"
      },
      {
       "date": "2022-01-02",
       "reason": "holiday:christmas-new-year"
      }
     ]
    }
   ]
  },
  {
   "id": "hurricane-ida-new-orleans-2021",
   "url_year": 2021,
   "title": "Hurricane Ida closes New Orleans and the Lower Mississippi River",
   "event_type": "weather-stoppage",
   "status": "ended",
   "start_date": "2021-08-28",
   "start_precision": "day",
   "end_date": "2021-09-03",
   "end_precision": "day",
   "first_reported": "2021-08-28",
   "added": "2026-09-24",
   "updated": "2026-09-24",
   "severity": 2,
   "severity_basis": "Port wide stoppage of 24 hours to seven days; vessel movement on the Lower Mississippi River was prohibited from 2021-08-28 and the river reopened to all traffic on 2021-09-03.",
   "scope": "regional",
   "entities": {
    "ports": [
     "new-orleans",
     "south-louisiana",
     "baton-rouge"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "us"
    ]
   },
   "commodities": [
    "containers",
    "grain",
    "general-cargo",
    "breakbulk"
   ],
   "organisations": [
    "U.S. Coast Guard",
    "Port of New Orleans"
   ],
   "summary": "From 2021-08-28 (28 August 2021) the Captain of the Port set port condition Zulu before Hurricane Ida and prohibited vessel movement on the Lower Mississippi River, closing the Port of New Orleans and the other river ports of southeast Louisiana. Ida made landfall in Louisiana on 2021-08-29 as a category 4 hurricane. A downed transmission tower dropped power lines across the channel near mile marker 106.5 and a survey of the ship channel was required before traffic could return. The Coast Guard reopened the river to all vessel traffic on 2021-09-03 (3 September 2021), with speed and tow size limits between mile markers 108 and 167.5. The port resumed limited cargo work on 2021-09-02 and container operations on 2021-09-07.",
   "timeline": [
    {
     "date": "2021-08-28",
     "date_precision": "day",
     "text": "The Captain of the Port sets port condition Zulu. From 14:00 no vessel movement is authorised between mile marker 167.5 above Head of Passes and mile marker 20 below it, and from 22:00 the closure extends upriver to mile marker 303.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2021-08-29",
     "date_precision": "day",
     "text": "Hurricane Ida makes landfall in Louisiana as a category 4 storm, according to the Port of New Orleans, which reports that seven general cargo vessels stayed in port through the storm.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2021-09-02",
     "date_precision": "day",
     "text": "The port resumes limited cargo and vessel operations, starting with breakbulk work at the Louisiana Avenue complex.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2021-09-03",
     "date_precision": "day",
     "text": "The Coast Guard opens the Lower Mississippi River to all vessel traffic after power lines from a downed transmission tower are cleared and the ship channel is surveyed, keeping speed and tow size limits in place.",
     "source_ids": [
      "s2",
      "s4"
     ]
    },
    {
     "date": "2021-09-07",
     "date_precision": "day",
     "text": "Container operations resume at the Napoleon Avenue Container Terminal, according to the port.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The Coast Guard closed the river to vessel movement ahead of Hurricane Ida, which made landfall in Louisiana on 2021-08-29. Reopening waited on the removal of power lines from a transmission tower that fell across the waterway near mile marker 106.5 and on a survey of the ship channel.",
    "attributed_by": "U.S. Coast Guard",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2021-09-03",
    "text": "The Coast Guard reopened the Lower Mississippi River to all vessel traffic on 2021-09-03 once obstructions were cleared and the channel surveyed. Port terminals restarted in stages, with limited cargo work from 2021-09-02 and container operations from 2021-09-07.",
    "source_ids": [
     "s2",
     "s3",
     "s4"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "new-orleans"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "south-louisiana"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://content.govdelivery.com/accounts/USDHSCG/bulletins/2eed0da",
     "publisher": "U.S. Coast Guard",
     "title": "MSIB Vol XXI Issue 058 Setting of Port Condition ZULU- Sunshine Bridge (MM167.5 AHP) to MM 20 BHP",
     "published_date": "2021-08-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260916012352/https://content.govdelivery.com/accounts/USDHSCG/bulletins/2eed0da",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://content.govdelivery.com/accounts/USDHSCG/bulletins/2efd236",
     "publisher": "U.S. Coast Guard",
     "title": "Coast Guard opens Lower Mississippi River to all vessel traffic following Hurricane Ida",
     "published_date": "2021-09-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20221201163948/https://content.govdelivery.com/accounts/USDHSCG/bulletins/2efd236",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://portnola.com/info/news-media/press-releases/port-of-new-orleans-cargo-operations-resume-four-days-after-hurricane-ida",
     "publisher": "Port of New Orleans",
     "title": "Port of New Orleans Cargo Operations Resume Four Days After Hurricane Ida",
     "published_date": "2021-09-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20230605001129/https://portnola.com/info/news-media/press-releases/port-of-new-orleans-cargo-operations-resume-four-days-after-hurricane-ida",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://gcaptain.com/lower-mississippi-river-open-vessel-traffic/",
     "publisher": "gCaptain",
     "title": "Lower Mississippi River Open To All Vessel Traffic",
     "published_date": "2021-09-05",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240807154929/https://gcaptain.com/lower-mississippi-river-open-vessel-traffic/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The closure and the reopening are documented by the Coast Guard, but the Coast Guard bulletin and the port release give different days for the river reopening, so the end date follows the bulletin that describes the removal of the obstruction."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2021/hurricane-ida-new-orleans-2021/",
   "approved_at": "2026-09-24T00:10:52Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "south-louisiana",
     "comparison": "primary",
     "window_start": "2021-08-28",
     "window_end": "2021-09-03",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2021-06-26",
     "baseline_end": "2021-08-20",
     "baseline_days": 56,
     "baseline_value": 6.357142857142857,
     "observed_value": 0.8571428571428571,
     "abs_change": -5.5,
     "delta_pct": -86.51685393258427,
     "z_score": -2.2453655975512468,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:2b0c40614c9f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "new-orleans",
     "comparison": "primary",
     "window_start": "2021-08-28",
     "window_end": "2021-09-03",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2021-06-26",
     "baseline_end": "2021-08-20",
     "baseline_days": 56,
     "baseline_value": 13.642857142857142,
     "observed_value": 2.857142857142857,
     "abs_change": -10.785714285714285,
     "delta_pct": -79.05759162303664,
     "z_score": -2.935499612383015,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-24T00:14:30Z",
     "data_revision": "1:0cc7febfacf8",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "terminal-closure-meishan-ningbo-2021",
   "url_year": 2021,
   "title": "Meishan container terminal at Ningbo-Zhoushan closed for two weeks",
   "event_type": "terminal-closure",
   "status": "ended",
   "start_date": "2021-08-11",
   "start_precision": "day",
   "end_date": "2021-08-25",
   "end_precision": "day",
   "first_reported": "2021-08-11",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "A single terminal inside the port was closed for 14 days, which meets the criterion of a terminal closure over 72 hours.",
   "scope": "terminal",
   "entities": {
    "ports": [
     "ningbo"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "cn"
    ],
    "terminals": [
     "Meishan Island International Container Terminal"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Ningbo Zhoushan Port Group",
    "Maersk"
   ],
   "summary": "The Meishan Island International Container Terminal at Ningbo-Zhoushan stopped container gate and vessel work on 2021-08-11 (11 August 2021) after a terminal worker tested positive for COVID-19, and reopened on 2021-08-25 (25 August 2021). Trucking to and from the terminal was suspended, a nearby warehouse stopped work, and carriers moved calls to other Ningbo terminals including Beilun and Yongzhou or skipped the port to protect schedules. The rest of Ningbo-Zhoushan stayed open throughout. Trade press reported at the time that the shutdown risked repeating the congestion seen at Yantian in Shenzhen earlier in 2021, with about 140 container ships already waiting off Ningbo and Shanghai. Gate and berthing work resumed on 2021-08-25, with landside services restarting in stages.",
   "timeline": [
    {
     "date": "2021-08-11",
     "date_precision": "day",
     "text": "The terminal stops container gate in and gate out work under local COVID-19 controls after a worker tests positive. Vessel operations at the terminal stop and trucking to the site is suspended.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2021-08-11",
     "date_precision": "day",
     "text": "Trade press reports that carriers in the Ocean Alliance are among the main users of the terminal and warns of congestion spreading, with about 140 container ships already waiting off Ningbo and Shanghai after Typhoon In-Fa.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-08-25",
     "date_precision": "day",
     "text": "Container gate in, gate out and vessel berthing resume at the terminal. Warehouse and other landside services restart in stages the same day.",
     "source_ids": [
      "s1",
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The terminal was locked down under COVID-19 controls imposed by the local authorities after a terminal worker tested positive, according to the carrier advisory tracking the closure.",
    "attributed_by": "Maersk, citing local authorities",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2021-08-25",
    "text": "The terminal reopened on 2021-08-25 after 14 days, with gate and berthing work resuming and landside services restarting in stages. The rest of Ningbo-Zhoushan had stayed open throughout.",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "related_events": [],
   "no_effect_reason": "below_resolution",
   "no_effect_note": "Meishan is one terminal inside the Ningbo-Zhoushan port series. A closure at that level sits below the resolution of the port level series we publish, so no effect is measured for this record.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.maersk.com/news/articles/2021/08/12/greater-china-ningbo-port-operations-update",
     "publisher": "Maersk",
     "title": "Greater China Ningbo port operations update",
     "published_date": "2021-08-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260414183831/https://www.maersk.com/news/articles/2021/08/12/greater-china-ningbo-port-operations-update",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://gcaptain.com/ningbo-terminal-closure-could-spark-new-congestion-crisis/",
     "publisher": "gCaptain",
     "title": "Ningbo Terminal Closure Could Spark New Congestion Crisis",
     "published_date": "2021-08-11",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260611154554/https://gcaptain.com/ningbo-terminal-closure-could-spark-new-congestion-crisis/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://container-mag.com/2021/08/26/operations-resume-at-ningbo-meishan-island-international-container-terminal/",
     "publisher": "Container Management",
     "title": "Operations resume at Ningbo Meishan Island International Container Terminal",
     "published_date": "2021-08-26",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260212101333/https://container-mag.com/2021/08/26/operations-resume-at-ningbo-meishan-island-international-container-terminal/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The closure and reopening dates come from a carrier advisory updated through the closure and are consistent across two trade outlets. The window does not overlap Lunar New Year or China's National Day holiday exclusions."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2021/terminal-closure-meishan-ningbo-2021/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": []
  },
  {
   "id": "cyberattack-transnet-ports-south-africa-2021",
   "url_year": 2021,
   "title": "Cyberattack on Transnet disrupts South African container terminals",
   "event_type": "cyber-incident",
   "status": "ended",
   "start_date": "2021-07-22",
   "start_precision": "day",
   "end_date": "2021-08-02",
   "end_precision": "day",
   "first_reported": "2021-07-27",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Container handling at four ports ran on manual systems for more than 72 hours, with force majeure in place from 2021-07-26 until it was uplifted with effect from 2021-08-02.",
   "scope": "regional",
   "entities": {
    "ports": [
     "durban",
     "cape-town",
     "ngqura",
     "port-elizabeth"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "za"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Transnet",
    "Transnet Port Terminals",
    "CrowdStrike"
   ],
   "summary": "A cyberattack on the South African state logistics company Transnet from 2021-07-22 (22 July 2021) disrupted the systems that run its container terminals. Transnet Port Terminals declared force majeure on 2021-07-26 at the container terminals in Durban, Cape Town, Ngqura and Port Elizabeth, where loading and discharge switched to manual processes and ran more slowly than normal. Transnet Port Terminals described the incident as \"an act of cyber-attack, security intrusion and sabotage\". The terminal operating system was restored in stages, and Transnet said the force majeure would be uplifted with effect from 2021-08-02 once it could meet its contractual obligations again. Transnet did not name an attacker. A cybersecurity firm reported that a ransom note left on Transnet systems matched a known ransomware family.",
   "timeline": [
    {
     "date": "2021-07-22",
     "date_precision": "day",
     "text": "Transnet systems are disrupted by a cyberattack, affecting IT applications used across the company and the terminal operating system at its container terminals.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2021-07-26",
     "date_precision": "day",
     "text": "Transnet Port Terminals declares force majeure at the container terminals in Durban, Cape Town, Ngqura and Port Elizabeth, and moves container handling onto manual systems.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2021-07-29",
     "date_precision": "day",
     "text": "A cybersecurity firm reports that a ransom note left on Transnet computers is linked to a ransomware family known as Death Kitty, Hello Kitty and Five Hands. Transnet does not attribute the attack.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2021-08-01",
     "date_precision": "day",
     "text": "Transnet says operations have normalised after the terminal operating system was restored in stages and that the force majeure will be uplifted with effect from the following day.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2021-08-02",
     "date_precision": "day",
     "text": "The force majeure declared at the four container terminals is uplifted.",
     "source_ids": [
      "s3"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Transnet Port Terminals said it had experienced \"an act of cyber-attack, security intrusion and sabotage\" that disrupted its normal processes. A cybersecurity firm reported that a ransom note found on Transnet systems was linked to a known ransomware family. Transnet did not publicly identify those responsible.",
    "attributed_by": "Transnet Port Terminals, with the ransomware link attributed by the cybersecurity firm CrowdStrike",
    "source_ids": [
     "s1",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2021-08-02",
    "text": "Transnet restored the terminal operating system in stages across the container terminals, said operations had normalised and uplifted the force majeure with effect from 2021-08-02.",
    "source_ids": [
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "cape-town"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ngqura"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "port-elizabeth"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.moneyweb.co.za/news/companies-and-deals/transnet-cyber-attack-confirmed-port-terminals-division-declares-force-majeure/",
     "publisher": "Moneyweb",
     "title": "Transnet cyber attack confirmed: Port terminals division declares force majeure",
     "published_date": "2021-07-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260512043628/https://www.moneyweb.co.za/news/companies-and-deals/transnet-cyber-attack-confirmed-port-terminals-division-declares-force-majeure/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://maritime-executive.com/article/second-force-majeure-at-south-african-ports-following-cyberattack",
     "publisher": "The Maritime Executive",
     "title": "Second Force Majeure at South African Ports Following Cyberattack",
     "published_date": "2021-07-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260113235659/https://maritime-executive.com/article/second-force-majeure-at-south-african-ports-following-cyberattack",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.dailymaverick.co.za/article/2021-08-01-transnet-lifts-force-majeure-on-ports-after-operations-normalise-following-cyberattack/",
     "publisher": "Daily Maverick",
     "title": "Transnet lifts force majeure on ports after operations normalise following cyberattack",
     "published_date": "2021-08-01",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251213015029/https://www.dailymaverick.co.za/article/2021-08-01-transnet-lifts-force-majeure-on-ports-after-operations-normalise-following-cyberattack/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://techcentral.co.za/transnet-likely-hit-by-death-kitty-ransomware-attack-experts/170749/",
     "publisher": "TechCentral",
     "title": "Transnet likely hit by Death Kitty ransomware attack",
     "published_date": "2021-07-29",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260321185031/https://techcentral.co.za/transnet-likely-hit-by-death-kitty-ransomware-attack-experts/170749/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The dates of the attack, the force majeure and its uplift are consistent across four outlets quoting Transnet Port Terminals, but Transnet's own statements from 2021 are no longer available on its site and could not be cited directly."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2021/cyberattack-transnet-ports-south-africa-2021/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "durban",
     "comparison": "primary",
     "window_start": "2021-07-22",
     "window_end": "2021-08-02",
     "window_days": 12,
     "provisional": false,
     "baseline_start": "2021-05-20",
     "baseline_end": "2021-07-14",
     "baseline_days": 56,
     "baseline_value": 1.875,
     "observed_value": 1,
     "abs_change": -0.875,
     "delta_pct": null,
     "z_score": -0.5901794145420208,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:ac663e6ec2f8",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "port-elizabeth",
     "comparison": "primary",
     "window_start": "2021-07-22",
     "window_end": "2021-08-02",
     "window_days": 12,
     "provisional": false,
     "baseline_start": "2021-05-20",
     "baseline_end": "2021-07-14",
     "baseline_days": 56,
     "baseline_value": 0.25,
     "observed_value": 0.3333333333333333,
     "abs_change": 0.08333333333333331,
     "delta_pct": null,
     "z_score": 0.08333333333333333,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:2abdd20258a5",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "ngqura",
     "comparison": "primary",
     "window_start": "2021-07-22",
     "window_end": "2021-08-02",
     "window_days": 12,
     "provisional": false,
     "baseline_start": "2021-05-20",
     "baseline_end": "2021-07-14",
     "baseline_days": 56,
     "baseline_value": 0.9166666666666666,
     "observed_value": 0.5,
     "abs_change": -0.41666666666666663,
     "delta_pct": null,
     "z_score": -0.4166666666666667,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:7f673891853d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "cape-town",
     "comparison": "primary",
     "window_start": "2021-07-22",
     "window_end": "2021-08-02",
     "window_days": 12,
     "provisional": false,
     "baseline_start": "2021-05-20",
     "baseline_end": "2021-07-14",
     "baseline_days": 56,
     "baseline_value": 1.0833333333333333,
     "observed_value": 1.0833333333333333,
     "abs_change": 0,
     "delta_pct": null,
     "z_score": 0,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:445a8679a803",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "covid-restrictions-yantian-port-2021",
   "url_year": 2021,
   "title": "COVID-19 controls cut container handling at Yantian in Shenzhen",
   "event_type": "terminal-closure",
   "status": "ended",
   "start_date": "2021-05-25",
   "start_precision": "day",
   "end_date": "2021-06-24",
   "end_precision": "day",
   "first_reported": "2021-05-26",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Berths in use at the port fell from 20 to five and the western terminal area was closed from 2021-05-26 to 2021-06-24, a port level restriction lasting more than seven days.",
   "scope": "port",
   "entities": {
    "ports": [
     "yantian"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "cn"
    ],
    "terminals": [
     "Yantian International Container Terminals"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Yantian International Container Terminals",
    "Hutchison Ports",
    "Maersk"
   ],
   "summary": "Container handling at Yantian in Shenzhen was cut from 2021-05-25 (25 May 2021), after COVID-19 cases were found in the port area, and full operations resumed on 2021-06-24 (24 June 2021). The terminal operator stopped taking laden export containers through the gate late on 2021-05-25, and from 2021-05-26 export and transhipment boxes in the western area were held and operations there stopped. Berths in use fell from 20 to five. Carriers reported the eastern berths running at about 30 percent of normal output in early June, recovering through the month, while about 90 ships skipped Yantian and Shekou. The operator said all berths, including the western area, returned to normal from 00:00 on 2021-06-24, with laden gate in raised to 9,000 trucks a day.",
   "timeline": [
    {
     "date": "2021-05-21",
     "date_precision": "day",
     "text": "COVID-19 is reported at the port, the start of the outbreak that led to the restrictions, according to trade press.",
     "source_ids": [
      "s4",
      "s5"
     ]
    },
    {
     "date": "2021-05-25",
     "date_precision": "day",
     "text": "The terminal suspends acceptance of laden export containers at the gate from late on 2021-05-25 through 2021-05-27, according to the carrier advisory.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-05-26",
     "date_precision": "day",
     "text": "Export and transhipment containers in the western area of the terminal are held and operations there stop until further notice. Yard density in the terminal is reported at 96 percent.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-06-03",
     "date_precision": "day",
     "text": "Trade press reports the eastern part of the terminal working at about 30 percent of normal output with the western area still shut, tens of thousands of TEU backed up and ships waiting off the port.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2021-06-21",
     "date_precision": "day",
     "text": "The carrier reports yard density down to 60 percent and about 90 ships, including partner services, having skipped Yantian and Shekou.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-06-24",
     "date_precision": "day",
     "text": "The operator says all berths, including the western area, resumed normal operations from 00:00, with laden gate in raised to 9,000 trucks a day and export boxes accepted seven days before vessel arrival.",
     "source_ids": [
      "s1",
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The operator attributed the reduced operations to COVID-19 control measures in the port area after cases were found there, and said on 2021-06-23 that the virus was under control and terminal capacity had recovered.",
    "attributed_by": "Yantian International Container Terminals",
    "source_ids": [
     "s1"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2021-06-24",
    "text": "All 20 berths, including those in the western area, returned to normal work from 00:00 on 2021-06-24, with gate throughput and container acceptance restored to normal levels. Backlogs and vessel schedule gaps persisted after that date.",
    "source_ids": [
     "s1",
     "s4",
     "s5"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "yantian"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "yantian"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.yict.com.cn/article/detail/8948.html?pager.offset=0&locale=en_US",
     "publisher": "Yantian International Container Terminals",
     "title": "YANTIAN Resumes Full Operations",
     "published_date": "2021-06-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260415062849/https://www.yict.com.cn/article/detail/8948.html?pager.offset=0&locale=en_US",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.maersk.com/news/articles/2021/05/27/greater-china-yantian-port-operations-update",
     "publisher": "Maersk",
     "title": "Greater China Yantian/Shekou/Nansha Port Operations Update",
     "published_date": "2021-05-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260607170522/https://www.maersk.com/news/articles/2021/05/27/greater-china-yantian-port-operations-update",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.maritime-executive.com/article/congestion-grows-in-china-s-yantian-port-due-to-covid-19-outbreak",
     "publisher": "The Maritime Executive",
     "title": "Congestion Grows in China's Yantian Port due to COVID-19 Outbreak",
     "published_date": "2021-06-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250908132823/https://www.maritime-executive.com/article/congestion-grows-in-china-s-yantian-port-due-to-covid-19-outbreak",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.maritime-executive.com/article/china-s-yantian-container-terminal-resuming-normal-operations",
     "publisher": "The Maritime Executive",
     "title": "China's Yantian Container Terminal Resuming Normal Operations",
     "published_date": "2021-06-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20241006004909/https://www.maritime-executive.com/article/china-s-yantian-container-terminal-resuming-normal-operations",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.portcalls.com/yantian-container-port-resumes-full-operations/",
     "publisher": "PortCalls Asia",
     "title": "Yantian container port resumes full operations",
     "published_date": "2021-06-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20211017155102/https://www.portcalls.com/yantian-container-port-resumes-full-operations/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The restriction dates come from the terminal operator's own notice and from a carrier advisory updated through the episode, with consistent trade press reporting. The window does not overlap Lunar New Year or China's National Day holiday exclusions."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2021/covid-restrictions-yantian-port-2021/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "yantian",
     "comparison": "year_ago",
     "window_start": "2020-05-26",
     "window_end": "2020-06-25",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2020-03-24",
     "baseline_end": "2020-05-18",
     "baseline_days": 56,
     "baseline_value": 10.03225806451613,
     "observed_value": 11.290322580645162,
     "abs_change": 1.258064516129032,
     "delta_pct": 12.540192926045012,
     "z_score": 0.39783493144053805,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:969fade59307",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "yantian",
     "comparison": "year_ago",
     "window_start": "2020-05-26",
     "window_end": "2020-06-25",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2020-03-24",
     "baseline_end": "2020-05-18",
     "baseline_days": 56,
     "baseline_value": 8.64516129032258,
     "observed_value": 9.580645161290322,
     "abs_change": 0.935483870967742,
     "delta_pct": 10.820895522388062,
     "z_score": 0.32086832058921005,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:840d983e521d",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "yantian",
     "comparison": "primary",
     "window_start": "2021-05-25",
     "window_end": "2021-06-24",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2021-03-23",
     "baseline_end": "2021-05-17",
     "baseline_days": 56,
     "baseline_value": 9.35483870967742,
     "observed_value": 1.7741935483870968,
     "abs_change": -7.580645161290323,
     "delta_pct": -81.0344827586207,
     "z_score": -2.4594860623051096,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:0cf61d24bf5f",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "yantian",
     "comparison": "primary",
     "window_start": "2021-05-25",
     "window_end": "2021-06-24",
     "window_days": 31,
     "provisional": false,
     "baseline_start": "2021-03-23",
     "baseline_end": "2021-05-17",
     "baseline_days": 56,
     "baseline_value": 8.903225806451612,
     "observed_value": 1.6129032258064515,
     "abs_change": -7.29032258064516,
     "delta_pct": -81.88405797101449,
     "z_score": -2.4301075268817205,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:a20e0e915852",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "x-press-pearl-fire-colombo-2021",
   "url_year": 2021,
   "title": "Container ship X-Press Pearl burns and sinks off Colombo",
   "event_type": "fire",
   "status": "ended",
   "start_date": "2021-05-20",
   "start_precision": "day",
   "end_date": "2021-06-02",
   "end_precision": "day",
   "first_reported": "2021-05-24",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 1,
   "severity_basis": "No source records a stoppage of Port of Colombo operations; the loss was confined to one vessel and its cargo at the anchorage, with a local ban on shipping and fishing in the affected area.",
   "scope": "port",
   "entities": {
    "ports": [
     "colombo"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "lk"
    ]
   },
   "commodities": [
    "containers",
    "chemicals"
   ],
   "vessels": [
    {
     "name": "X-Press Pearl",
     "imo": null
    }
   ],
   "organisations": [
    "X-Press Feeders",
    "Sri Lanka Ports Authority",
    "Sri Lanka Navy",
    "Indian Coast Guard",
    "Marine Environment Protection Authority of Sri Lanka"
   ],
   "summary": "A fire broke out aboard the container ship X-Press Pearl at the Colombo anchorage on 2021-05-20 (20 May 2021), about 9.5 miles off the Sri Lankan capital, and the vessel sank during a tow attempt on or about 2021-06-02 (2 June 2021). The ship was carrying 1,486 containers loaded in part at Hazira, India, including nitric acid and other chemicals. Firefighting involved the Sri Lanka Ports Authority, the Sri Lanka Navy and the Indian Coast Guard. The Sri Lanka Ports Authority reported on 2021-05-30 that the hull remained structurally intact. Salvors boarded on 2021-06-01, when the fire was reported out and the government ordered the ship towed to deeper water. Sri Lanka barred shipping and fishing in the affected area. No source records a suspension of Port of Colombo operations.",
   "timeline": [
    {
     "date": "2021-05-20",
     "date_precision": "day",
     "text": "Fire breaks out in a deck container aboard the X-Press Pearl at the Colombo anchorage. The operator reports all 25 crew safe and the fire under control by 2021-05-24, with tugs cooling the vessel.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-05-30",
     "date_precision": "day",
     "text": "The Sri Lanka Ports Authority reports that firefighting tugs continue, that the hull remains structurally intact and that no oil or chemical spill has been observed, while salvors examine a tow connection.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2021-06-01",
     "date_precision": "day",
     "text": "Salvors board the vessel and the fire is confirmed extinguished. The government orders the ship moved to deep water away from the coast.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2021-06-02",
     "date_precision": "day",
     "text": "The vessel settles by the stern during the tow attempt and partially sinks about 9.5 miles off Colombo. Sri Lanka bans shipping and fishing in the affected area.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "under_investigation",
    "text": "The operator said early indications pointed to a chemical reaction in hazardous cargo carried in containers, and Sri Lankan authorities opened an investigation, including a court order requiring three of the ship's officers to remain in the country.",
    "attributed_by": "X-Press Feeders and the Sri Lankan criminal investigation",
    "source_ids": [
     "s2",
     "s3"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2021-06-02",
    "text": "The fire was reported out on 2021-06-01 and the vessel partially sank during the tow attempt on 2021-06-02, ending the firefighting response. Sri Lanka kept a ban on shipping and fishing in the affected area while salvage and shoreline clean up continued.",
    "source_ids": [
     "s3",
     "s4"
    ]
   },
   "related_events": [],
   "no_effect_reason": "not_a_throughput_event",
   "no_effect_note": "The vessel burned and sank at the anchorage rather than at a berth. No cited source records a suspension or restriction of Port of Colombo operations, only a local ban on shipping and fishing in the affected area, so a change in the port's daily call series could not be attributed to this event.",
   "sources": [
    {
     "id": "s1",
     "url": "https://news.slpa.lk/index.php/2021/05/30/fire-on-x-press-pearl-vessels-hull-remains-structurally-intact/",
     "publisher": "Sri Lanka Ports Authority",
     "title": "Fire on X-Press Pearl: Vessel's hull remains structurally intact",
     "published_date": "2021-05-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250715193831/https://news.slpa.lk/index.php/2021/05/30/fire-on-x-press-pearl-vessels-hull-remains-structurally-intact/",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://gcaptain.com/chemical-cargo-fire-on-x-press-pearl-under-control-off-colombo-sri-lanka-operator/",
     "publisher": "gCaptain",
     "title": "Chemical Fire on 'X-Press Pearl' Under Control Off Colombo, Sri Lanka -Operator",
     "published_date": "2021-05-24",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260517055441/https://gcaptain.com/chemical-cargo-fire-on-x-press-pearl-under-control-off-colombo-sri-lanka-operator/",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://maritime-executive.com/article/photos-fire-out-on-x-press-pearl-as-sri-lanka-orders-tow-out-to-sea",
     "publisher": "The Maritime Executive",
     "title": "Photos: Fire Out on X-Press Pearl as Sri Lanka Orders Tow Out to Sea",
     "published_date": "2021-06-01",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240808231601/https://maritime-executive.com/article/photos-fire-out-on-x-press-pearl-as-sri-lanka-orders-tow-out-to-sea",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://maritime-executive.com/article/x-press-pearl-containership-begins-sinking-during-tow-attempt",
     "publisher": "The Maritime Executive",
     "title": "X-Press Pearl Containership Partially Sinks During Tow Attempt",
     "published_date": "2021-06-02",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20241114181917/https://maritime-executive.com/article/x-press-pearl-containership-begins-sinking-during-tow-attempt",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The firefighting timeline and the state of the vessel are confirmed by the Sri Lanka Ports Authority, with consistent reporting of the start of the fire and the sinking in two trade outlets."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2021/x-press-pearl-fire-colombo-2021/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": []
  },
  {
   "id": "ever-given-grounding-suez-canal-2021",
   "url_year": 2021,
   "title": "Container ship Ever Given grounds and blocks the Suez Canal",
   "event_type": "vessel-grounding",
   "status": "ended",
   "start_date": "2021-03-23",
   "start_precision": "day",
   "end_date": "2021-03-29",
   "end_precision": "day",
   "first_reported": "2021-03-23",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 4,
   "severity_basis": "Complete closure of a chokepoint for any duration; the Suez Canal was shut to transits from 2021-03-23 until 2021-03-29.",
   "scope": "chokepoint",
   "entities": {
    "ports": [],
    "chokepoints": [
     "suez-canal"
    ],
    "lanes": [
     "asia-north-europe"
    ],
    "countries": [
     "eg"
    ]
   },
   "commodities": [
    "containers"
   ],
   "vessels": [
    {
     "name": "Ever Given",
     "imo": "9811000"
    }
   ],
   "organisations": [
    "Suez Canal Authority",
    "Panama Maritime Authority"
   ],
   "summary": "On 2021-03-23 (23 March 2021) the container ship Ever Given grounded on the eastern bank of the Suez Canal at kilometre 151, in the southern section of the waterway, and came to rest across the channel. The vessel was fifth in a northbound convoy and was bound from China to Rotterdam, so the blockage sat on the Asia to North Europe route. Traffic stopped in both directions while the canal authority ran dredging and towing work. The ship was pulled clear on 2021-03-29 (29 March 2021) and taken to the Great Bitter Lake for inspection, and transits restarted the same day. The canal authority said the queue of 422 ships held by the closure finished transiting on 2021-04-03 (3 April 2021). The flag state investigation recorded no deaths or injuries.",
   "timeline": [
    {
     "date": "2021-03-23",
     "date_precision": "day",
     "text": "The Ever Given grounds at kilometre 151 at about 07:40 local time, the flag state investigation later timing it at 07:41. The ship lies across the channel and stops northbound and southbound traffic.",
     "source_ids": [
      "s3",
      "s6"
     ]
    },
    {
     "date": "2021-03-25",
     "date_precision": "day",
     "text": "The Suez Canal Authority reports that refloating work is continuing with dredgers and tugs and that navigation through the canal is suspended.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2021-03-26",
     "date_precision": "day",
     "text": "The canal authority attributes the grounding to winds of about 40 knots and a sandstorm that cut visibility.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2021-03-29",
     "date_precision": "day",
     "text": "The canal authority announces that the vessel has been refloated, with the stern moved away from the bank, and says navigation will resume once the ship is back on course. The vessel is taken to the Great Bitter Lake.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-04-03",
     "date_precision": "day",
     "text": "The canal authority says the last of the 422 ships held by the closure have completed their transits.",
     "source_ids": [
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "disputed",
    "text": "The Suez Canal Authority attributed the grounding to winds of about 40 knots and a sandstorm that reduced visibility. The Panama Maritime Authority, as flag state, found the vessel held valid certificates and set out a combination of wind, bank and squat effects, speed and bridge team and pilotage decisions as the sequence leading to the grounding.",
    "attributed_by": "Suez Canal Authority; Panama Maritime Authority",
    "source_ids": [
     "s4",
     "s6"
    ]
   },
   "casualties": {
    "deaths": 0,
    "injuries": 0,
    "as_of": "2021-03-23",
    "source_ids": [
     "s6"
    ]
   },
   "resolution": {
    "date": "2021-03-29",
    "text": "Salvage work refloated the ship and moved it to the Great Bitter Lake for inspection, and the canal reopened to traffic. The waiting queue was cleared by 2021-04-03.",
    "source_ids": [
     "s2",
     "s5"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal"
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "suez-canal"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.suezcanal.gov.eg/English/MediaCenter/News/Pages/Navigation_new25-03-2021.aspx",
     "publisher": "Suez Canal Authority",
     "title": "Continuing the Floatation Works of the Grounding Vessel in the Suez Canal",
     "published_date": "2021-03-25",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20210424204423/https://www.suezcanal.gov.eg/English/MediaCenter/News/Pages/Navigation_new25-03-2021.aspx",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.suezcanal.gov.eg/English/MediaCenter/News/Pages/nav_29-03-2021.aspx",
     "publisher": "Suez Canal Authority",
     "title": "Successful Refloating of EVER GIVEN",
     "published_date": "2021-03-29",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260912151220/https://www.suezcanal.gov.eg/English/MediaCenter/News/Pages/nav_29-03-2021.aspx",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://gcaptain.com/grounded-mega-ship-blocking-suez-canal-in-both-directions/",
     "publisher": "gCaptain",
     "title": "Grounded 'Mega Ship' Blocking Suez Canal in Both Directions",
     "published_date": "2021-03-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260810235633/https://gcaptain.com/grounded-mega-ship-blocking-suez-canal-in-both-directions/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.freightwaves.com/news/sandstorm-winds-blamed-for-container-ship-fiasco-in-suez-canal",
     "publisher": "FreightWaves",
     "title": "Sandstorm, winds blamed for container ship fiasco in Suez Canal",
     "published_date": "2021-03-26",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260420091602/https://www.freightwaves.com/news/sandstorm-winds-blamed-for-container-ship-fiasco-in-suez-canal",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.aljazeera.com/news/2021/4/3/suez-canal-shipping-backlog-to-end-on-saturday",
     "publisher": "Al Jazeera",
     "title": "Suez Canal shipping backlog cleared",
     "published_date": "2021-04-03",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260516134310/https://www.aljazeera.com/news/2021/4/3/suez-canal-shipping-backlog-to-end-on-saturday",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://gcaptain.com/wp-content/uploads/2023/07/Final-Investigation-Report-Ever-Given-23-March-2021.pdf",
     "publisher": "Panama Maritime Authority",
     "title": "Marine Safety Investigation Report: Grounding of MV Ever Given at Suez Canal Egypt on March 23, 2021 (R-026-2021-DIAM)",
     "published_date": null,
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260209091726/https://gcaptain.com/wp-content/uploads/2023/07/Final-Investigation-Report-Ever-Given-23-March-2021.pdf",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The suspension of navigation and the refloating date come from Suez Canal Authority notices, and the grounding time, position and absence of casualties from the Panama Maritime Authority investigation report."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2021/ever-given-grounding-suez-canal-2021/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "suez-canal",
     "comparison": "primary",
     "window_start": "2021-03-23",
     "window_end": "2021-03-29",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2021-01-19",
     "baseline_end": "2021-03-15",
     "baseline_days": 56,
     "baseline_value": 55.42857142857143,
     "observed_value": 16.428571428571427,
     "abs_change": -39,
     "delta_pct": -70.36082474226804,
     "z_score": -4.782752658106766,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:ede0749f94ad",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-container",
     "entity_id": "suez-canal",
     "comparison": "primary",
     "window_start": "2021-03-23",
     "window_end": "2021-03-29",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2021-01-19",
     "baseline_end": "2021-03-15",
     "baseline_days": 56,
     "baseline_value": 17.071428571428573,
     "observed_value": 6,
     "abs_change": -11.071428571428573,
     "delta_pct": -64.85355648535565,
     "z_score": -2.6852158486165436,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:1fd06450c50d",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "border-closure-dover-calais-2020",
   "url_year": 2020,
   "title": "France closes its border to freight from the United Kingdom",
   "event_type": "regulatory-or-customs-action",
   "status": "ended",
   "start_date": "2020-12-20",
   "start_precision": "day",
   "end_date": "2020-12-23",
   "end_precision": "day",
   "first_reported": "2020-12-20",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Port wide stoppage of 24 hours to seven days, with the Port of Dover closed to accompanied traffic leaving the United Kingdom from the evening of 2020-12-20 until services resumed on 2020-12-23.",
   "scope": "regional",
   "entities": {
    "ports": [
     "dover",
     "calais"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "gb",
     "fr"
    ]
   },
   "commodities": [
    "general-cargo",
    "perishables"
   ],
   "organisations": [
    "Government of France",
    "Department for Transport",
    "Port of Dover"
   ],
   "summary": "On 2020-12-20 (20 December 2020) France barred arrivals from the United Kingdom over a coronavirus variant reported there, and the Port of Dover closed to accompanied traffic leaving the country. A French decree published the following day prohibited travel from the United Kingdom until midnight on 2020-12-23. Lorries queued in Kent, with 632 on the M20 and 2,188 at Manston airfield on 2020-12-22 according to figures reported that day. The United Kingdom and France agreed a protocol on 2020-12-22 under which sea, rail and air services resumed the next morning, with drivers required to show a negative test taken in the previous 72 hours. Queues at Dover took several more days to clear.",
   "timeline": [
    {
     "date": "2020-12-20",
     "date_precision": "day",
     "text": "France stops accepting arrivals from the United Kingdom over a reported coronavirus variant. The Port of Dover closes to accompanied traffic leaving the country and Channel Tunnel services are suspended.",
     "source_ids": [
      "s3",
      "s4"
     ]
    },
    {
     "date": "2020-12-21",
     "date_precision": "day",
     "text": "A French decree prohibiting travel from the United Kingdom to France until midnight on 23 December is published in the Journal officiel.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2020-12-22",
     "date_precision": "day",
     "text": "The two governments agree a protocol to reopen the border for accompanied freight and some passenger services. Lorry drivers must take a lateral flow test, and travellers must show a negative test taken within 72 hours.",
     "source_ids": [
      "s2",
      "s3"
     ]
    },
    {
     "date": "2020-12-23",
     "date_precision": "day",
     "text": "Sea, rail and air services resume in the morning and testing of drivers begins in Kent. Reported figures that week put 632 lorries on the M20 and 2,188 at Manston airfield.",
     "source_ids": [
      "s2",
      "s3",
      "s5"
     ]
    },
    {
     "date": "2020-12-24",
     "date_precision": "day",
     "text": "Queues at Dover clear slowly as testing continues, with military personnel deployed to carry out tests.",
     "source_ids": [
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The French government restricted movements from the United Kingdom because of the health situation there after a new coronavirus variant was reported, setting the prohibition out in a decree that ran until midnight on 2020-12-23. The United Kingdom Department for Transport then agreed a protocol with France to reopen the border with testing.",
    "attributed_by": "Government of France",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2020-12-23",
    "text": "The border reopened to accompanied freight on 2020-12-23 under a protocol requiring a negative test, and ferry and tunnel services resumed that morning. Clearing the lorries held in Kent took several more days.",
    "source_ids": [
     "s2",
     "s3",
     "s4"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "dover"
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "calais"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.legifrance.gouv.fr/jorf/id/JORFTEXT000042702855",
     "publisher": "Légifrance",
     "title": "Décret n° 2020-1627 du 20 décembre 2020 modifiant le décret n° 2020-1310 du 29 octobre 2020 prescrivant les mesures générales nécessaires pour faire face à l'épidémie de covid-19 dans le cadre de l'état d'urgence sanitaire",
     "published_date": "2020-12-21",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20241208003117/https://www.legifrance.gouv.fr/jorf/id/JORFTEXT000042702855",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.gov.uk/government/news/protocol-agreed-to-reopen-french-border-to-uk-arrivals",
     "publisher": "Department for Transport",
     "title": "Protocol agreed to reopen French border to UK arrivals",
     "published_date": "2020-12-22",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260512044718/https://www.gov.uk/government/news/protocol-agreed-to-reopen-french-border-to-uk-arrivals",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.aljazeera.com/news/2020/12/22/france-to-reopen-uk-border-for-covid-clear-travellers",
     "publisher": "Al Jazeera",
     "title": "France to reopen UK borders closed over new coronavirus strain",
     "published_date": "2020-12-22",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260513222150/https://www.aljazeera.com/news/2020/12/22/france-to-reopen-uk-border-for-covid-clear-travellers",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.euronews.com/2020/12/24/dover-slowly-clearing-lorry-queues-after-france-relaxes-uk-blockade",
     "publisher": "Euronews",
     "title": "Dover slowly clearing lorry queues after France relaxes UK blockade",
     "published_date": "2020-12-24",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20240224171135/https://www.euronews.com/2020/12/24/dover-slowly-clearing-lorry-queues-after-france-relaxes-uk-blockade",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://edition.cnn.com/2020/12/23/europe/uk-border-france-travel-ban-wednesday-intl-gbr/index.html",
     "publisher": "CNN",
     "title": "UK France border: Thousands of truck drivers scramble for tests at Dover after blockade is eased",
     "published_date": "2020-12-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260201051105/https://edition.cnn.com/2020/12/23/europe/uk-border-france-travel-ban-wednesday-intl-gbr/index.html",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The prohibition and its end date are set out in the French decree, and the reopening protocol and testing requirement in a Department for Transport statement, with consistent reporting by three established outlets."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2020/border-closure-dover-calais-2020/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "calais",
     "comparison": "primary",
     "window_start": "2020-12-20",
     "window_end": "2020-12-23",
     "window_days": 4,
     "provisional": false,
     "baseline_start": "2020-10-18",
     "baseline_end": "2020-12-12",
     "baseline_days": 56,
     "baseline_value": 0.5,
     "observed_value": 0.75,
     "abs_change": 0.25,
     "delta_pct": null,
     "z_score": 0.25,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:491145c8e19b",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "dover",
     "comparison": "primary",
     "window_start": "2020-12-20",
     "window_end": "2020-12-23",
     "window_days": 4,
     "provisional": false,
     "baseline_start": "2020-10-18",
     "baseline_end": "2020-12-12",
     "baseline_days": 56,
     "baseline_value": 0.125,
     "observed_value": 0.75,
     "abs_change": 0.625,
     "delta_pct": null,
     "z_score": 0.625,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:b80e0b6ddca7",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "oilseed-workers-strike-rosario-ports-2020",
   "url_year": 2020,
   "title": "Oilseed workers strike halts grain exports at Rosario area ports",
   "event_type": "labour-action",
   "status": "ended",
   "start_date": "2020-12-09",
   "start_precision": "day",
   "end_date": "2020-12-29",
   "end_precision": "day",
   "first_reported": "2020-12-09",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port level stoppage of seven days or more, since loading at the Rosario area export terminals was halted for 21 days from 2020-12-09.",
   "scope": "regional",
   "entities": {
    "ports": [
     "rosario",
     "san-martin"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "ar"
    ]
   },
   "commodities": [
    "grain",
    "dry-bulk",
    "general-cargo"
   ],
   "organisations": [
    "Federación de Trabajadores del Complejo Industrial Oleaginoso, Desmotadores de Algodón y Afines de la República Argentina",
    "Sindicato de Obreros y Empleados Aceiteros de San Lorenzo",
    "Unión Recibidores de Granos y Anexos de la República Argentina",
    "Cámara de la Industria Aceitera de la República Argentina",
    "Centro de Exportadores de Cereales"
   ],
   "summary": "A national strike by oilseed workers and grain receivers that began at 06:00 on 2020-12-09 (9 December 2020) halted crushing plants and export loading at the Rosario area ports on the Paraná river for 21 days. The oilseed workers' federation and the grain receivers' union URGARA called the action over pay, naming the employer chambers CIARA, CEC, CARBIO, CIAVEC and CPPC. Terminals at Rosario, Puerto General San Martín, San Lorenzo, Timbúes, Arroyo Seco, General Lagos, Villa Constitución, San Nicolás, Ramallo, Zárate, Bahía Blanca and Quequén were affected. The unions announced a settlement on 2020-12-29 after talks at the national labour ministry. Press reported 173 ships waiting to load when the strike was lifted.",
   "timeline": [
    {
     "date": "2020-12-09",
     "date_precision": "day",
     "text": "The oilseed workers' federation and the grain receivers' union URGARA begin an open ended national strike at 06:00, naming the employer chambers CIARA, CEC, CARBIO, CIAVEC and CPPC and demanding a higher minimum wage.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2020-12-14",
     "date_precision": "day",
     "text": "The unions report that talks at the national labour ministry have ended without agreement and that the strike continues.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2020-12-24",
     "date_precision": "day",
     "text": "Press reports that the stoppage has run for about 15 days and that grain and oilseed exports from the Rosario ports remain halted.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2020-12-29",
     "date_precision": "day",
     "text": "After about 12 hours of talks at the national labour ministry the unions announce a settlement on day 21, with a new starting wage from 1 January 2021, an extraordinary payment and a bonus for workers who stayed on during the pandemic lockdown.",
     "source_ids": [
      "s3",
      "s5"
     ]
    },
    {
     "date": "2020-12-30",
     "date_precision": "day",
     "text": "Press reports that the oilseed unions and the grain receivers have lifted the strike, with 173 ships waiting to load. The federation says it remains on alert because the private ports chamber has not yet signed the agreement with URGARA.",
     "source_ids": [
      "s5",
      "s6"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The oilseed workers' federation, the San Lorenzo oilseed workers' union and the grain receivers' union URGARA called the strike over pay, saying they sought a minimum wage that met the standard of living set out in the Argentine constitution, after the employer chambers refused to negotiate on that basis.",
    "attributed_by": "Federación de Trabajadores del Complejo Industrial Oleaginoso, Desmotadores de Algodón y Afines de la República Argentina",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2020-12-29",
    "text": "The unions announced a settlement on 2020-12-29 after talks at the national labour ministry, ending the strike on its 21st day. Terms included a new starting wage from 1 January 2021, an extraordinary payment and a bonus for workers who continued during the pandemic lockdown. The grain receivers' agreement was formalised the next day.",
    "source_ids": [
     "s3",
     "s5",
     "s6"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls-dry-bulk",
     "entity_id": "rosario"
    },
    {
     "series_id": "portwatch-port-calls-dry-bulk",
     "entity_id": "san-martin"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://federacionaceitera.com.ar/2020/12/09/huelga-nacional-en-la-industria-aceitera-y-de-exportacion-de-granos/",
     "publisher": "Federación Aceitera",
     "title": "Huelga Nacional en la industria aceitera y de exportación de granos",
     "published_date": "2020-12-09",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260617105458/https://federacionaceitera.com.ar/2020/12/09/huelga-nacional-en-la-industria-aceitera-y-de-exportacion-de-granos/",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://federacionaceitera.com.ar/2020/12/14/sin-acuerdo-sigue-la-huelga-nacional/",
     "publisher": "Federación Aceitera",
     "title": "Sin acuerdo: sigue la Huelga Nacional",
     "published_date": "2020-12-14",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260123011946/https://federacionaceitera.com.ar/2020/12/14/sin-acuerdo-sigue-la-huelga-nacional/",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://federacionaceitera.com.ar/2020/12/29/victoria-de-la-huelga-nacional-en-la-industria-aceitera-y-de-exportacion-de-granos/",
     "publisher": "Federación Aceitera",
     "title": "Victoria de la Huelga Nacional en la Industria Aceitera y de Exportación de Granos",
     "published_date": "2020-12-29",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260515081459/https://federacionaceitera.com.ar/2020/12/29/victoria-de-la-huelga-nacional-en-la-industria-aceitera-y-de-exportacion-de-granos/",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://www.pagina12.com.ar/313440-navidad-en-paro-en-puertos-rosarinos",
     "publisher": "Página/12",
     "title": "Navidad en paro en puertos rosarinos",
     "published_date": "2020-12-24",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20210217102539/https://www.pagina12.com.ar/313440-navidad-en-paro-en-puertos-rosarinos",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.infobae.com/economia/2020/12/30/los-gremios-aceiteros-acordaron-una-mejora-salarial-y-levantaran-el-paro-en-los-puertos-exportadores-tras-21-dias-de-conflicto/",
     "publisher": "Infobae",
     "title": "Los gremios aceiteros acordaron una mejora salarial y levantarán el paro en los puertos exportadores tras 20 días de conflicto",
     "published_date": "2020-12-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251110165845/https://www.infobae.com/economia/2020/12/30/los-gremios-aceiteros-acordaron-una-mejora-salarial-y-levantaran-el-paro-en-los-puertos-exportadores-tras-21-dias-de-conflicto/",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://federacionaceitera.com.ar/2020/12/30/estado-de-alerta-por-acuerdo-de-urgara/",
     "publisher": "Federación Aceitera",
     "title": "Estado de Alerta por acuerdo de URGARA",
     "published_date": "2020-12-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260423025628/https://federacionaceitera.com.ar/2020/12/30/estado-de-alerta-por-acuerdo-de-urgara/",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The start, the continuation and the settlement are documented in statements by the unions that called the strike, with the lifting of the action and the number of ships waiting reported by Infobae."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2020/oilseed-workers-strike-rosario-ports-2020/",
   "approved_at": "2026-09-16T18:21:41Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-dry-bulk",
     "entity_id": "rosario",
     "comparison": "year_ago",
     "window_start": "2019-12-11",
     "window_end": "2019-12-31",
     "window_days": 21,
     "provisional": false,
     "baseline_start": "2019-10-09",
     "baseline_end": "2019-12-03",
     "baseline_days": 56,
     "baseline_value": 2.857142857142857,
     "observed_value": 1.8571428571428572,
     "abs_change": -1,
     "delta_pct": null,
     "z_score": -0.5773502691896258,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:950f05c537ac",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-dry-bulk",
     "entity_id": "san-martin",
     "comparison": "year_ago",
     "window_start": "2019-12-11",
     "window_end": "2019-12-31",
     "window_days": 21,
     "provisional": false,
     "baseline_start": "2019-10-09",
     "baseline_end": "2019-12-03",
     "baseline_days": 56,
     "baseline_value": 3,
     "observed_value": 2.857142857142857,
     "abs_change": -0.1428571428571428,
     "delta_pct": -4.76190476190476,
     "z_score": -0.08247860988423227,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:bad8f2652289",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-dry-bulk",
     "entity_id": "rosario",
     "comparison": "primary",
     "window_start": "2020-12-09",
     "window_end": "2020-12-29",
     "window_days": 21,
     "provisional": false,
     "baseline_start": "2020-10-07",
     "baseline_end": "2020-12-01",
     "baseline_days": 56,
     "baseline_value": 1.8571428571428572,
     "observed_value": 1.380952380952381,
     "abs_change": -0.4761904761904763,
     "delta_pct": null,
     "z_score": -0.3211860759412358,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:b0b17944448e",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls-dry-bulk",
     "entity_id": "san-martin",
     "comparison": "primary",
     "window_start": "2020-12-09",
     "window_end": "2020-12-29",
     "window_days": 21,
     "provisional": false,
     "baseline_start": "2020-10-07",
     "baseline_end": "2020-12-01",
     "baseline_days": 56,
     "baseline_value": 2.142857142857143,
     "observed_value": 0.19047619047619047,
     "abs_change": -1.9523809523809523,
     "delta_pct": null,
     "z_score": -1.3168629113590669,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-16T18:24:54Z",
     "data_revision": "1:c76f191dbb02",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "container-ship-backlog-los-angeles-long-beach-2020",
   "url_year": 2020,
   "title": "Container ship queue off Los Angeles and Long Beach",
   "event_type": "congestion-episode",
   "status": "ended",
   "start_date": "2020-10-01",
   "start_precision": "month",
   "end_date": "2022-11-22",
   "end_precision": "day",
   "first_reported": "2021-01-29",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "No closure criterion applies to a queueing episode and no measured effect is available at month precision, so Moderate is proposed for editor review.",
   "scope": "port",
   "entities": {
    "ports": [
     "los-angeles-long-beach"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "us"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Marine Exchange of Southern California",
    "Port of Los Angeles",
    "Port of Long Beach",
    "Pacific Maritime Association",
    "Pacific Merchant Shipping Association",
    "U.S. Coast Guard"
   ],
   "summary": "From October 2020 until 2022-11-22 (22 November 2022) container ships waited off San Pedro Bay for berths at the ports of Los Angeles and Long Beach. The Marine Exchange of Southern California reported 60 vessels at anchor on 2021-01-28 and began holding ships in drift areas outside the anchorage for the first time since 2004. An industry working group of the exchange, the Pacific Maritime Association and the Pacific Merchant Shipping Association replaced arrival based queueing with places assigned on departure from the last port of call, effective 2021-11-16 (16 November 2021), and asked ships to wait outside a safety and air quality area extending 150 miles from the coast. The queue peaked at 109 container ships on 2022-01-09 and the exchange declared the backup over after 25 months.",
   "timeline": [
    {
     "date": "2020-10-01",
     "date_precision": "month",
     "text": "A queue of container ships waiting for berths at Los Angeles and Long Beach begins to build, the start of the 25 month period later counted by the Marine Exchange of Southern California.",
     "source_ids": [
      "s5"
     ]
    },
    {
     "date": "2021-01-28",
     "date_precision": "day",
     "text": "The Marine Exchange reports 60 vessels at anchor and places three ships in drift areas outside the anchorage, the first such use since 2004.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2021-11-16",
     "date_precision": "day",
     "text": "The new queueing process takes effect at Los Angeles and Long Beach. Ships are given a calculated time of arrival set when they leave their last port of call, and are asked to stay outside a safety and air quality area 150 miles from the coast.",
     "source_ids": [
      "s1",
      "s3"
     ]
    },
    {
     "date": "2022-01-09",
     "date_precision": "day",
     "text": "The number of container ships waiting reaches its peak of 109.",
     "source_ids": [
      "s4",
      "s5"
     ]
    },
    {
     "date": "2022-06-24",
     "date_precision": "week",
     "text": "The Marine Exchange count falls to 16 container ships, one at anchor and 15 outside the safety and air quality area.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2022-11-22",
     "date_precision": "day",
     "text": "The Marine Exchange reports no container ships waiting and declares the backup over after 25 months, with the agreement of both ports and the two industry associations.",
     "source_ids": [
      "s5",
      "s6"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Trade reporting linked the queue to import volumes that outran berth, terminal and inland capacity from late 2020, and its end to falling volumes and to the queueing process that moved waiting ships far offshore. The sources cited do not give a single official cause.",
    "attributed_by": null,
    "source_ids": [
     "s5",
     "s6"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2022-11-22",
    "text": "The queue fell through 2022 as arriving ships slowed their Pacific crossings under the new queueing process and volumes declined. The Marine Exchange of Southern California declared the backup over on 2022-11-22 with the concurrence of both ports and the two industry associations.",
    "source_ids": [
     "s5",
     "s6"
    ]
   },
   "related_events": [],
   "no_effect_reason": "below_resolution",
   "no_effect_note": "The start is known only to the month and the episode ran for 25 months, well beyond the effect window. A daily effect on container port calls is not computed; an editor may add explicit windows, for example around the 2022-01-09 peak, with a written reason.",
   "sources": [
    {
     "id": "s1",
     "url": "https://mxsocal.org/assets/pdf/announcements/container-vessel-queuing-process-for-la-lb-oak-v-2.pdf",
     "publisher": "Marine Exchange of Southern California",
     "title": "Container Vessel Queuing Process for the Ports of Los Angeles, Long Beach, and Oakland v.2",
     "published_date": "2022-06-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260130200245/https://mxsocal.org/assets/pdf/announcements/container-vessel-queuing-process-for-la-lb-oak-v-2.pdf",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://maritime-executive.com/article/record-vessel-backlog-at-southern-california-ports",
     "publisher": "The Maritime Executive",
     "title": "Record Vessel Backlog at Southern California Ports",
     "published_date": "2021-01-29",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260419212559/https://maritime-executive.com/article/record-vessel-backlog-at-southern-california-ports",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://gcaptain.com/new-queuing-process-at-los-angeles-and-long-beach-ports-will-have-ships-waiting-far-out-at-sea/",
     "publisher": "gCaptain",
     "title": "New Queuing Process at Los Angeles and Long Beach Ports Will Have Ships Waiting Far Out at Sea",
     "published_date": "2021-11-11",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250604173207/https://gcaptain.com/new-queuing-process-at-los-angeles-and-long-beach-ports-will-have-ships-waiting-far-out-at-sea/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://gcaptain.com/checking-in-on-southern-californias-containership-backup/",
     "publisher": "gCaptain",
     "title": "Checking In On Southern California's Containership Backup",
     "published_date": "2022-06-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260613032911/https://gcaptain.com/checking-in-on-southern-californias-containership-backup/",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://maritime-executive.com/article/containership-backup-is-declared-over-in-southern-california",
     "publisher": "The Maritime Executive",
     "title": "Containership Backup is Declared Over in Southern California",
     "published_date": "2022-11-22",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260615205438/https://maritime-executive.com/article/containership-backup-is-declared-over-in-southern-california",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://www.supplychaindive.com/news/the-ship-backup-has-ended-in-los-angeles-long-beach-ports/637250/",
     "publisher": "Supply Chain Dive",
     "title": "The 'ship backup has ended' at Los Angeles, Long Beach ports",
     "published_date": "2022-11-23",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260520100403/https://www.supplychaindive.com/news/the-ship-backup-has-ended-in-los-angeles-long-beach-ports/637250/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The queueing process and its effective date come from the Marine Exchange of Southern California's own document, but the ship counts, the peak and the end of the backup rest on trade reporting of exchange figures rather than an archived primary statement."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2020/container-ship-backlog-los-angeles-long-beach-2020/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  },
  {
   "id": "explosion-port-of-beirut-2020",
   "url_year": 2020,
   "title": "Explosion at the Port of Beirut halts port operations",
   "event_type": "fire",
   "status": "ended",
   "start_date": "2020-08-04",
   "start_precision": "day",
   "end_date": "2020-08-10",
   "end_precision": "day",
   "first_reported": "2020-08-12",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Port level disruption lasting more than seven days; the United Nations reported the port working at 30 per cent capacity with two quays and five of 16 cranes nine days after the explosion.",
   "scope": "port",
   "entities": {
    "ports": [
     "beirut"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "lb"
    ]
   },
   "commodities": [
    "containers",
    "grain",
    "general-cargo"
   ],
   "organisations": [
    "Lebanese Ministry of Public Health",
    "United Nations Office for the Coordination of Humanitarian Affairs",
    "CMA CGM",
    "Hapag-Lloyd"
   ],
   "summary": "An explosion at the Port of Beirut on 2020-08-04 (4 August 2020) destroyed much of the port and stopped operations at Lebanon's main maritime gateway. The blast followed the ignition of ammonium nitrate stored in a port warehouse. Container lines diverted vessels to Tripoli while the site was cleared. The container terminal, which sits away from the blast centre, restarted on 2020-08-10 (10 August 2020), and two carriers said their services to Beirut had resumed. The United Nations Office for the Coordination of Humanitarian Affairs reported on 2020-08-13 that two quays had reopened, that five of the port's 16 cranes were working and that the port was functioning at 30 per cent of capacity. A Lebanese judicial investigation into the explosion has been suspended repeatedly and no trial has taken place.",
   "timeline": [
    {
     "date": "2020-08-04",
     "date_precision": "day",
     "text": "An explosion at the Port of Beirut destroys much of the port. Reporting attributes the blast to ammonium nitrate stored in a port warehouse.",
     "source_ids": [
      "s2",
      "s3"
     ]
    },
    {
     "date": "2020-08-10",
     "date_precision": "day",
     "text": "The container terminal restarts. One carrier reports discharging its first container vessel that day and another says the terminal suffered limited damage and has resumed working.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2020-08-12",
     "date_precision": "day",
     "text": "Carriers resume bookings for Beirut after diverting vessels to Tripoli, and the port handles cargo again for merchants.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2020-08-13",
     "date_precision": "day",
     "text": "The United Nations reports two quays open, five of 16 cranes working, two more cranes due back by 2020-08-14, and the port at 30 per cent of capacity.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2021-10-12",
     "date_precision": "day",
     "text": "Questioning in the judicial investigation is suspended again after legal complaints seeking the removal of the investigating judge.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2026-08-04",
     "date_precision": "day",
     "text": "Six years after the explosion no trial has been held. The investigating judge sealed the case file in March 2026 and referred it to the Court of Cassation.",
     "source_ids": [
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "under_investigation",
    "text": "Reporting attributes the explosion to the ignition of ammonium nitrate that had been stored at the port for years. The Lebanese judicial investigation has been suspended repeatedly by legal challenges brought by officials it sought to question, and no court has ruled on responsibility.",
    "attributed_by": "Lebanese judicial investigation at the Court of Cassation",
    "source_ids": [
     "s2",
     "s4",
     "s5"
    ]
   },
   "casualties": {
    "deaths": 178,
    "injuries": 6000,
    "as_of": "2020-08-13",
    "source_ids": [
     "s3"
    ]
   },
   "resolution": {
    "date": "2020-08-10",
    "text": "Container operations restarted on 2020-08-10 once storage areas were cleared, and carriers resumed calls at Beirut over the following days. The port was still working at reduced capacity on 2020-08-13, with two quays and five of 16 cranes in service.",
    "source_ids": [
     "s1",
     "s3"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "beirut"
    },
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "beirut"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://gcaptain.com/container-lines-resume-calls-to-beirut-as-terminal-restarts-operations/",
     "publisher": "gCaptain",
     "title": "Container Lines Resume Calls to Beirut as Terminal Restarts Operations",
     "published_date": "2020-08-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260311125123/https://gcaptain.com/container-lines-resume-calls-to-beirut-as-terminal-restarts-operations/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.aljazeera.com/news/2020/8/12/beirut-port-resumes-partial-operations-a-week-after-explosion",
     "publisher": "Al Jazeera",
     "title": "Beirut port resumes partial operations a week after explosion",
     "published_date": "2020-08-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260420164836/https://www.aljazeera.com/news/2020/8/12/beirut-port-resumes-partial-operations-a-week-after-explosion",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://reliefweb.int/report/lebanon/lebanon-beirut-port-explosions-situation-report-no-4-13-august-2020-enar",
     "publisher": "United Nations Office for the Coordination of Humanitarian Affairs",
     "title": "Lebanon: Beirut Port Explosions Situation Report No. 4 (As of 13 August 2020) [EN/AR]",
     "published_date": "2020-08-13",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260301192453/https://reliefweb.int/report/lebanon/lebanon-beirut-port-explosions-situation-report-no-4-13-august-2020-enar",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://www.aljazeera.com/news/2021/10/12/beirut-blast-investigation-suspended",
     "publisher": "Al Jazeera",
     "title": "Beirut blast probe suspended again as judge issues arrest warrant",
     "published_date": "2021-10-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260613183121/https://www.aljazeera.com/news/2021/10/12/beirut-blast-investigation-suspended",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.aljazeera.com/features/2026/8/4/six-years-after-beirut-blast-families-fight-for-truth",
     "publisher": "Al Jazeera",
     "title": "Six years after Lebanon's Beirut port blast, families fight for truth",
     "published_date": "2026-08-04",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260816094636/https://www.aljazeera.com/features/2026/8/4/six-years-after-beirut-blast-families-fight-for-truth",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The date of the explosion and the port's reduced capacity are confirmed by a United Nations situation report, while the 2020-08-10 container terminal restart rests on carrier statements reported by two outlets rather than on a port authority statement."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2020/explosion-port-of-beirut-2020/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls-container",
     "entity_id": "beirut",
     "comparison": "primary",
     "window_start": "2020-08-04",
     "window_end": "2020-08-10",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2020-06-02",
     "baseline_end": "2020-07-27",
     "baseline_days": 56,
     "baseline_value": 1.8571428571428572,
     "observed_value": 0.42857142857142855,
     "abs_change": -1.4285714285714286,
     "delta_pct": null,
     "z_score": -1.0101525445522106,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:7cb602b84bad",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "beirut",
     "comparison": "primary",
     "window_start": "2020-08-04",
     "window_end": "2020-08-10",
     "window_days": 7,
     "provisional": false,
     "baseline_start": "2020-06-02",
     "baseline_end": "2020-07-27",
     "baseline_days": 56,
     "baseline_value": 3.7857142857142856,
     "observed_value": 1,
     "abs_change": -2.7857142857142856,
     "delta_pct": -73.58490566037736,
     "z_score": -1.3928571428571428,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:777440a75e3b",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "blank-sailings-asia-north-europe-2020",
   "url_year": 2020,
   "title": "Carriers withdraw sailings on Asia to Europe and transpacific services",
   "event_type": "capacity-withdrawal",
   "status": "ended",
   "start_date": "2020-04-01",
   "start_precision": "month",
   "end_date": "2020-06-01",
   "end_precision": "month",
   "first_reported": "2020-03-27",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "No rubric closure criterion applies. Rated at level 2, the moderate band, because whole service loops on three lanes were withdrawn for a quarter without any port or chokepoint stoppage.",
   "scope": "global",
   "entities": {
    "ports": [],
    "chokepoints": [],
    "lanes": [
     "asia-north-europe",
     "asia-mediterranean",
     "transpacific-us-west-coast"
    ],
    "countries": [
     "cn",
     "nl",
     "us"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Maersk",
    "Mediterranean Shipping Company"
   ],
   "summary": "During the second quarter of 2020 container lines withdrew scheduled sailings on Asia to Europe and transpacific services as demand fell in the coronavirus pandemic. Maersk told customers on 2020-03-31 (31 March 2020) that its AE6 and AE7 Asia to North Europe loops would each miss several westbound and eastbound departures between weeks 16 and 25, on top of an announced suspension of the AE2 service for the quarter. On 2020-04-10 it announced further cancelled transpacific sailings to the United States west coast. Reporting at the time described the 2M partners Maersk and Mediterranean Shipping Company withdrawing whole Asia to Europe loops for the quarter. The withdrawals were announced as service cancellations rather than dated stoppages at any port.",
   "timeline": [
    {
     "date": "2020-03-27",
     "date_precision": "day",
     "text": "Trade press reports that carriers are cancelling sailings on transpacific and Europe services because demand has fallen, with production in China largely restarted while consuming economies are shut down.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2020-03-30",
     "date_precision": "day",
     "text": "Trade press reports that the 2M partners have withdrawn two Asia to Europe and Mediterranean loops for the whole second quarter.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2020-03-31",
     "date_precision": "day",
     "text": "Maersk tells customers that its AE6 and AE7 Asia to North Europe services will miss departures in weeks 16 to 25, on top of the announced suspension of the AE2 service for the second quarter.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2020-04-10",
     "date_precision": "day",
     "text": "Maersk announces further cancelled transpacific sailings, including a week 17 departure from Nansha to the United States west coast and a week 20 return departure from Prince Rupert.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "Maersk told customers it was cancelling sailings because demand had fallen further during the coronavirus pandemic, and that it was matching its network to reduced volumes.",
    "attributed_by": "Maersk",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2020-06-30",
    "text": "The announced withdrawals covered the second quarter of 2020, after which carriers restored the suspended loops. No single dated end to the programme was announced, so the end of the quarter is used.",
    "source_ids": [
     "s1",
     "s4"
    ]
   },
   "related_events": [],
   "no_effect_reason": "below_resolution",
   "no_effect_note": "The withdrawals are dated to months and to schedule weeks across three lanes rather than to a stoppage at any port or chokepoint, so the daily port series cannot separate them from the wider fall in demand.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.maersk.com/news/articles/2020/03/31/covid-19-blanking-announcement-asia-north-europe-services",
     "publisher": "Maersk",
     "title": "COVID-19 Blanking Announcement - Asia - North Europe Services",
     "published_date": "2020-03-31",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250327073854/https://www.maersk.com/news/articles/2020/03/31/covid-19-blanking-announcement-asia-north-europe-services",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.maersk.com/news/articles/2020/04/10/additional-blanking-announcement-on-transpacific-services",
     "publisher": "Maersk",
     "title": "Additional Blanking Announcement on Transpacific Services",
     "published_date": "2020-04-10",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20211016083251/https://www.maersk.com/news/articles/2020/04/10/additional-blanking-announcement-on-transpacific-services",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.supplychaindive.com/news/coronavirus-ocean-carriers-blank-sailings-declining-demand-china-to-europe/575018/",
     "publisher": "Supply Chain Dive",
     "title": "Ocean carriers blank sailings on Transpacific, European routes as importer demand drops",
     "published_date": "2020-03-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260515010438/https://www.supplychaindive.com/news/coronavirus-ocean-carriers-blank-sailings-declining-demand-china-to-europe/575018/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.supplychaindive.com/news/coronavirus-2M-Maersk-MSC-blank-sailing/575100/",
     "publisher": "Supply Chain Dive",
     "title": "2M Alliance announces blank sailings on 21% on Asia-Europe trade",
     "published_date": "2020-03-30",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250828105950/https://www.supplychaindive.com/news/coronavirus-2M-Maersk-MSC-blank-sailing/575100/",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The cancelled services and weeks come from Maersk's own customer advisories, but the wider scale of the withdrawals across carriers and alliances rests on trade press reporting, and no single start or end date was announced."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2020/blank-sailings-asia-north-europe-2020/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  },
  {
   "id": "golden-ray-capsize-brunswick-2019",
   "url_year": 2019,
   "title": "Vehicle carrier Golden Ray capsizes and blocks the Brunswick channel",
   "event_type": "collision-or-casualty",
   "status": "ended",
   "start_date": "2019-09-08",
   "start_precision": "day",
   "end_date": "2019-11-14",
   "end_precision": "day",
   "first_reported": "2019-09-08",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 2,
   "severity_basis": "Port wide stoppage of 24 hours to seven days; the Port of Brunswick was closed to commercial traffic from 2019-09-08 until transits resumed on a case by case basis on 2019-09-11, with one way transits until 2019-11-14.",
   "scope": "port",
   "entities": {
    "ports": [
     "brunswick"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "us"
    ]
   },
   "commodities": [
    "vehicles"
   ],
   "vessels": [
    {
     "name": "Golden Ray"
    }
   ],
   "organisations": [
    "U.S. Coast Guard",
    "National Transportation Safety Board",
    "Georgia Department of Natural Resources",
    "Georgia Ports Authority",
    "Gallagher Marine Systems"
   ],
   "summary": "On 2019-09-08 (8 September 2019) the vehicle carrier Golden Ray capsized in St. Simons Sound shortly after leaving the Port of Brunswick, Georgia, with a fire on board, closing the sound and the port to commercial traffic. The Coast Guard reported that all 24 people on board were rescued, four of them after being trapped in the hull, and set a safety zone half a mile around the wreck. Two cargo ships were allowed to leave under monitored transit late on 2019-09-11, and the port reopened on a case by case basis, with cargo that could be diverted sent to Savannah and Charleston. The channel stayed limited to one way traffic while salvage continued, and round the clock commercial transits resumed on 2019-11-14 (14 November 2019).",
   "timeline": [
    {
     "date": "2019-09-08",
     "date_precision": "day",
     "text": "The 656 foot vehicle carrier capsizes in St. Simons Sound at about 02:00 with a fire on board. The Coast Guard rescues 20 people, four crew members remain trapped, and the Captain of the Port sets a safety zone half a mile around the vessel.",
     "source_ids": [
      "s1"
     ]
    },
    {
     "date": "2019-09-09",
     "date_precision": "day",
     "text": "The four trapped crew members are rescued after nearly 40 hours in the hull, according to the safety board, bringing all 24 people on board to safety.",
     "source_ids": [
      "s2"
     ]
    },
    {
     "date": "2019-09-11",
     "date_precision": "day",
     "text": "Two cargo vessels leave the port under monitored transit past the wreck, the first movements since the capsizing.",
     "source_ids": [
      "s4"
     ]
    },
    {
     "date": "2019-09-12",
     "date_precision": "day",
     "text": "The port reopens on a case by case basis, with priority for perishable cargo and other vessels diverted to Savannah and Charleston while the unified command studies how passing ships affect the wreck.",
     "source_ids": [
      "s3",
      "s4"
     ]
    },
    {
     "date": "2019-11-14",
     "date_precision": "day",
     "text": "The unified command and the Georgia Ports Authority restore round the clock commercial transits, with vessels still passing the wreck one at a time.",
     "source_ids": [
      "s5",
      "s6"
     ]
    },
    {
     "date": "2021-09-14",
     "date_precision": "day",
     "text": "The safety board publishes its report, finding that an error in entering ballast quantities into the stability program left the ship with too little righting arm during an outbound turn.",
     "source_ids": [
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The National Transportation Safety Board determined that the probable cause was an officer's error in entering ballast quantities into the ship's stability calculation program, which led to an incorrect stability assessment and left the vessel without enough righting arm during a turn outbound from Brunswick. The operator's failure to verify stability calculations contributed.",
    "attributed_by": "National Transportation Safety Board",
    "source_ids": [
     "s2"
    ]
   },
   "casualties": {
    "deaths": 0,
    "injuries": 2,
    "as_of": "2021-09-14",
    "source_ids": [
     "s2"
    ]
   },
   "resolution": {
    "date": "2019-11-14",
    "text": "Transits past the wreck resumed on a case by case basis from 2019-09-11 and the Port of Brunswick returned to round the clock commercial traffic on 2019-11-14, with vessels passing one at a time while the Golden Ray was dismantled in place.",
    "source_ids": [
     "s5",
     "s6"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "brunswick"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://content.govdelivery.com/accounts/USDHSCG/bulletins/25ddebb",
     "publisher": "U.S. Coast Guard",
     "title": "Coast Guard, port partners conducting rescue operation for 4 aboard disabled, on fire vessel in St. Simons Sound",
     "published_date": "2019-09-08",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260517103438/https://content.govdelivery.com/accounts/USDHSCG/bulletins/25ddebb",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.ntsb.gov/news/press-releases/Pages/NR20210914b.aspx",
     "publisher": "National Transportation Safety Board",
     "title": "NTSB Determines Inaccurate Stability Calculations Caused Capsizing of Vehicle Carrier Golden Ray",
     "published_date": "2021-09-14",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20251222060920/https://www.ntsb.gov/news/press-releases/Pages/NR20210914b.aspx",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.ajc.com/news/breaking-simons-sound-opens-after-ship-capsizes/6HSXGfi9MsZuWdirDZVCFO/",
     "publisher": "The Atlanta Journal-Constitution",
     "title": "NEW DETAILS: Brunswick port reopens days after ship capsizes",
     "published_date": "2019-09-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250906202818/https://www.ajc.com/news/breaking-simons-sound-opens-after-ship-capsizes/6HSXGfi9MsZuWdirDZVCFO/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.news4jax.com/news/2019/09/12/1st-ships-allowed-to-pass-capsized-car-carrier-near-port-of-brunswick/",
     "publisher": "News4Jax",
     "title": "1st ships allowed to pass capsized car carrier near Port of Brunswick",
     "published_date": "2019-09-12",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20200417043245/https://www.news4jax.com/news/2019/09/12/1st-ships-allowed-to-pass-capsized-car-carrier-near-port-of-brunswick/",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://www.freightwaves.com/news/port-of-brunswick-open-24-hours-to-commercial-vessels",
     "publisher": "FreightWaves",
     "title": "Port of Brunswick open 24 hours to commercial vessels",
     "published_date": "2019-11-18",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260411023851/https://www.freightwaves.com/news/port-of-brunswick-open-24-hours-to-commercial-vessels",
     "type": "press"
    },
    {
     "id": "s6",
     "url": "https://www.workboat.com/bluewater/traffic-expanded-around-capsized-golden-ray",
     "publisher": "WorkBoat",
     "title": "Traffic expanded around capsized Golden Ray in Georgia",
     "published_date": "2019-11-19",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260306204404/https://www.workboat.com/bluewater/traffic-expanded-around-capsized-golden-ray",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The casualty, the rescue and the cause are documented by the Coast Guard and the safety board, but the dates on which traffic resumed rest on press reporting of unified command decisions rather than an archived official notice."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2019/golden-ray-capsize-brunswick-2019/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-port-calls",
     "entity_id": "brunswick",
     "comparison": "primary",
     "window_start": "2019-09-08",
     "window_end": "2019-11-14",
     "window_days": 68,
     "provisional": false,
     "baseline_start": "2019-07-07",
     "baseline_end": "2019-08-31",
     "baseline_days": 56,
     "baseline_value": 0.8602941176470589,
     "observed_value": 1.1764705882352942,
     "abs_change": 0.3161764705882353,
     "delta_pct": null,
     "z_score": 0.3161764705882353,
     "unit": "calls per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:cf0cab396ff2",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "tanker-seizure-strait-of-hormuz-2019",
   "url_year": 2019,
   "title": "Iran seizes the tanker Stena Impero in the Strait of Hormuz",
   "event_type": "security-incident",
   "status": "ended",
   "start_date": "2019-07-19",
   "start_precision": "day",
   "end_date": "2019-09-27",
   "end_precision": "day",
   "first_reported": "2019-07-19",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "A restriction at a chokepoint; after the seizure the United Kingdom raised the security level for British flagged shipping to level 3 and advised against all passage through the Strait of Hormuz.",
   "scope": "chokepoint",
   "entities": {
    "ports": [],
    "chokepoints": [
     "strait-of-hormuz"
    ],
    "lanes": [],
    "countries": [
     "ir",
     "gb"
    ]
   },
   "commodities": [
    "refined-products"
   ],
   "vessels": [
    {
     "name": "Stena Impero",
     "imo": null
    }
   ],
   "organisations": [
    "Islamic Revolutionary Guard Corps",
    "Department for Transport",
    "Foreign and Commonwealth Office",
    "Stena Bulk",
    "Northern Marine Management"
   ],
   "summary": "On 2019-07-19 (19 July 2019) Iranian forces boarded and seized the British flagged product tanker Stena Impero as it passed through the Strait of Hormuz, and took the ship to Bandar Abbas with its 23 crew aboard. The United Kingdom government said the vessel was intercepted in the westbound traffic lane inside Omani territorial waters by fast boats and a helicopter of the Revolutionary Guard, and called the seizure a breach of international law. Iran said the ship had committed marine violations. On 2019-07-22 (22 July 2019) the Department for Transport raised the security level for British flagged shipping to level 3 and advised against all passage through the strait. Seven crew were released in early September, and the ship left Bandar Abbas for Dubai on 2019-09-27 (27 September 2019).",
   "timeline": [
    {
     "date": "2019-07-19",
     "date_precision": "day",
     "text": "Iranian forces board the Stena Impero in the Strait of Hormuz at about 16:00 United Kingdom time and take her towards Iran. The operator reports losing contact with the ship.",
     "source_ids": [
      "s2",
      "s3"
     ]
    },
    {
     "date": "2019-07-21",
     "date_precision": "day",
     "text": "The United Kingdom government says the tanker was seized in Omani waters in contravention of international law and summons Iran's charge d'affaires in London.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2019-07-22",
     "date_precision": "day",
     "text": "The Foreign Secretary tells Parliament that the Department for Transport has raised the security level for British flagged shipping to level 3, advising against all passage in Iranian waters and in the strait as a whole.",
     "source_ids": [
      "s2",
      "s5"
     ]
    },
    {
     "date": "2019-09-04",
     "date_precision": "day",
     "text": "The operator says seven of the crew are to be released, and reports on the following day that they have left the vessel.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2019-09-27",
     "date_precision": "day",
     "text": "The vessel leaves Bandar Abbas and sails for Dubai, where the remaining crew disembark for medical checks.",
     "source_ids": [
      "s3",
      "s4"
     ]
    }
   ],
   "cause": {
    "status": "reported",
    "text": "Iran said the tanker was held for marine violations, reported to include switching off its tracking equipment and a collision with a fishing vessel. The United Kingdom government rejected that account and said the seizure was unlawful and came after the detention of an Iranian tanker off Gibraltar earlier in July 2019.",
    "attributed_by": "Government of Iran; United Kingdom government",
    "source_ids": [
     "s2",
     "s4"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2019-09-27",
    "text": "Iran released the ship after about ten weeks. The operator said the vessel had left Iranian waters and reached Dubai, where the crew disembarked.",
    "source_ids": [
     "s3",
     "s4"
    ]
   },
   "related_events": [],
   "effect_targets": [
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz"
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz"
    }
   ],
   "sources": [
    {
     "id": "s1",
     "url": "https://www.gov.uk/government/news/iran-tanker-seizure-uk-government-response",
     "publisher": "Foreign and Commonwealth Office",
     "title": "Iran tanker seizure: UK government response",
     "published_date": "2019-07-21",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260213050645/https://www.gov.uk/government/news/iran-tanker-seizure-uk-government-response",
     "type": "official"
    },
    {
     "id": "s2",
     "url": "https://www.gov.uk/government/speeches/situation-in-the-gulf-foreign-secretary-statement",
     "publisher": "Foreign and Commonwealth Office",
     "title": "Situation in the Gulf: Foreign Secretary statement",
     "published_date": "2019-07-22",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260409213429/https://www.gov.uk/government/speeches/situation-in-the-gulf-foreign-secretary-statement",
     "type": "official"
    },
    {
     "id": "s3",
     "url": "https://www.stenabulk.com/statements-archive",
     "publisher": "Stena Bulk",
     "title": "Statements archive",
     "published_date": null,
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260608085856/https://www.stenabulk.com/statements-archive",
     "type": "official"
    },
    {
     "id": "s4",
     "url": "https://www.aljazeera.com/news/2019/9/27/seized-uk-flagged-tanker-stena-impero-leaves-iranian-port",
     "publisher": "Al Jazeera",
     "title": "Seized UK-flagged tanker Stena Impero leaves Iranian port",
     "published_date": "2019-09-27",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260420030141/https://www.aljazeera.com/news/2019/9/27/seized-uk-flagged-tanker-stena-impero-leaves-iranian-port",
     "type": "press"
    },
    {
     "id": "s5",
     "url": "https://maritime-executive.com/article/uk-asks-british-ships-to-avoid-strait-of-hormuz",
     "publisher": "The Maritime Executive",
     "title": "UK Asks British Ships to Avoid Strait of Hormuz",
     "published_date": "2019-07-22",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260611221819/https://maritime-executive.com/article/uk-asks-british-ships-to-avoid-strait-of-hormuz",
     "type": "press"
    }
   ],
   "confidence": {
    "level": "high",
    "reason": "The seizure, its location and the shipping security level come from United Kingdom government statements, and the release date from the operator's own statements and consistent reporting."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2019/tanker-seizure-strait-of-hormuz-2019/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": [
    {
     "series_id": "portwatch-chokepoint-transits-tanker",
     "entity_id": "strait-of-hormuz",
     "comparison": "primary",
     "window_start": "2019-07-19",
     "window_end": "2019-09-27",
     "window_days": 71,
     "provisional": false,
     "baseline_start": "2019-05-17",
     "baseline_end": "2019-07-11",
     "baseline_days": 56,
     "baseline_value": 48.45070422535211,
     "observed_value": 46.605633802816904,
     "abs_change": -1.8450704225352084,
     "delta_pct": -3.808139534883715,
     "z_score": -0.26493667261668646,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:34a78269ac72",
     "superseded_by": null,
     "excluded_dates": []
    },
    {
     "series_id": "portwatch-chokepoint-transits-total",
     "entity_id": "strait-of-hormuz",
     "comparison": "primary",
     "window_start": "2019-07-19",
     "window_end": "2019-09-27",
     "window_days": 71,
     "provisional": false,
     "baseline_start": "2019-05-17",
     "baseline_end": "2019-07-11",
     "baseline_days": 56,
     "baseline_value": 81.19014084507042,
     "observed_value": 77.85915492957747,
     "abs_change": -3.3309859154929455,
     "delta_pct": -4.102697545320481,
     "z_score": -0.3689724941817879,
     "unit": "transits per day",
     "method_id": "wfm-effect-1.0",
     "computed_at": "2026-09-19T23:14:08Z",
     "data_revision": "1:15b4f05ba9df",
     "superseded_by": null,
     "excluded_dates": []
    }
   ]
  },
  {
   "id": "notpetya-cyberattack-maersk-2017",
   "url_year": 2017,
   "title": "NotPetya malware halts Maersk and APM Terminals port operations",
   "event_type": "cyber-incident",
   "status": "ended",
   "start_date": "2017-06-27",
   "start_precision": "day",
   "end_date": "2017-07-03",
   "end_precision": "week",
   "first_reported": "2017-06-28",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Measured effects are not available for 2017, so severity rests on the non measured criterion of simultaneous stoppages at terminals in several regions, reported at 17 of the operator's 76 terminals.",
   "scope": "global",
   "entities": {
    "ports": [
     "los-angeles-long-beach",
     "new-york-new-jersey",
     "rotterdam",
     "mumbai-jawaharlal-nehru"
    ],
    "chokepoints": [],
    "lanes": [],
    "countries": [
     "dk",
     "us",
     "nl",
     "in"
    ],
    "terminals": [
     "APM Terminals Elizabeth",
     "APM Terminals Pier 400 Los Angeles",
     "APM Terminals Maasvlakte II",
     "Gateway Terminals India"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "A.P. Moller-Maersk",
    "APM Terminals",
    "Foreign and Commonwealth Office",
    "National Cyber Security Centre"
   ],
   "summary": "On 2017-06-27 (27 June 2017) the NotPetya malware disabled the information systems of A.P. Moller-Maersk, stopping gate, crane and booking operations at container terminals run by its APM Terminals unit. Trade press reported closures or suspended gate operations the following day at Pier 400 in Los Angeles, at Elizabeth in New Jersey, at Rotterdam, at Jawaharlal Nehru near Mumbai and at other terminals, with 17 of the operator's 76 terminals affected. Terminals returned to normal working over more than a week. On 2018-02-15 (15 February 2018) the United Kingdom said the Russian military was responsible, and the White House issued a statement the same day attributing the attack to the Russian military. The malware spread from compromised Ukrainian accounting software.",
   "timeline": [
    {
     "date": "2017-06-27",
     "date_precision": "day",
     "text": "The NotPetya malware disables Maersk systems. Gate and terminal operating systems stop at APM Terminals facilities, and trucks queue outside the Elizabeth terminal in New Jersey.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2017-06-28",
     "date_precision": "day",
     "text": "Trade press reports closures or suspended gate operations at Pier 400 in Los Angeles, Elizabeth in New Jersey, Rotterdam, Jawaharlal Nehru near Mumbai and further terminals, and says Maersk could not accept electronic bookings.",
     "source_ids": [
      "s1",
      "s2"
     ]
    },
    {
     "date": "2017-07-03",
     "date_precision": "week",
     "text": "Terminals worldwide return to normal working more than a week after the infection, according to Wired.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2018-02-15",
     "date_precision": "day",
     "text": "The United Kingdom attributes the attack to the Russian military, and the White House issues a statement attributing it to the Russian military the same day.",
     "source_ids": [
      "s4",
      "s5"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "The United Kingdom government said the Russian military was responsible for the NotPetya attack of June 2017, and the White House attributed the attack to the Russian military on the same day. Reporting traces the initial spread to compromised Ukrainian accounting software.",
    "attributed_by": "Foreign and Commonwealth Office and the White House",
    "source_ids": [
     "s3",
     "s4",
     "s5"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2017-07-03",
    "text": "Maersk rebuilt its systems and worked with manual processes in the meantime. Terminals around the world resumed normal working more than a week after 2017-06-27.",
    "source_ids": [
     "s3"
    ]
   },
   "related_events": [],
   "no_effect_reason": "predates_data",
   "no_effect_note": "IMF PortWatch daily data starts on 2019-01-01, so no effect can be measured for a 2017 event.",
   "sources": [
    {
     "id": "s1",
     "url": "https://gcaptain.com/maersk-operated-port-terminals-booking-system-crippled-cyber-attack/",
     "publisher": "gCaptain",
     "title": "Maersk-Operated Port Terminals, Booking System Crippled by Cyber-Attack",
     "published_date": "2017-06-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250913141852/https://gcaptain.com/maersk-operated-port-terminals-booking-system-crippled-cyber-attack/",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://maritime-executive.com/article/maersks-cargo-operations-hit-hard-by-cyberattack",
     "publisher": "The Maritime Executive",
     "title": "Maersk's Cargo Operations Hit Hard by Cyberattack",
     "published_date": "2017-06-28",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260903151533/https://maritime-executive.com/article/maersks-cargo-operations-hit-hard-by-cyberattack",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.wired.com/story/notpetya-cyberattack-ukraine-russia-code-crashed-the-world/",
     "publisher": "Wired",
     "title": "The Untold Story of NotPetya, the Most Devastating Cyberattack in History",
     "published_date": "2018-08-22",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260902235349/https://www.wired.com/story/notpetya-cyberattack-ukraine-russia-code-crashed-the-world/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.gov.uk/government/news/foreign-office-minister-condemns-russia-for-notpetya-attacks",
     "publisher": "Foreign and Commonwealth Office",
     "title": "Foreign Office Minister condemns Russia for NotPetya attacks",
     "published_date": "2018-02-15",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260909100955/https://www.gov.uk/government/news/foreign-office-minister-condemns-russia-for-notpetya-attacks",
     "type": "official"
    },
    {
     "id": "s5",
     "url": "https://trumpwhitehouse.archives.gov/briefings-statements/statement-press-secretary-25/",
     "publisher": "The White House",
     "title": "Statement from the Press Secretary",
     "published_date": "2018-02-15",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260912033516/https://trumpwhitehouse.archives.gov/briefings-statements/statement-press-secretary-25/",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The start date and the affected terminals are reported consistently by two trade outlets and by Wired, and the attribution is official, but no statement by Maersk about its own operations could be retrieved and the end of the disruption is given only as more than a week."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2017/notpetya-cyberattack-maersk-2017/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  },
  {
   "id": "hanjin-shipping-bankruptcy-2016",
   "url_year": 2016,
   "title": "Hanjin Shipping receivership leaves container ships outside ports",
   "event_type": "capacity-withdrawal",
   "status": "ended",
   "start_date": "2016-08-31",
   "start_precision": "day",
   "end_date": "2017-02-17",
   "end_precision": "day",
   "first_reported": "2016-09-01",
   "added": "2026-09-16",
   "updated": "2026-09-16",
   "severity": 3,
   "severity_basis": "Measured effects are not available for 2016, so severity rests on the non measured criterion of vessels refused entry or arrested at ports in several regions over more than seven days.",
   "scope": "global",
   "entities": {
    "ports": [
     "busan",
     "los-angeles-long-beach"
    ],
    "chokepoints": [],
    "lanes": [
     "transpacific-us-west-coast",
     "asia-north-europe"
    ],
    "countries": [
     "kr",
     "us"
    ]
   },
   "commodities": [
    "containers"
   ],
   "organisations": [
    "Hanjin Shipping",
    "Seoul Central District Court",
    "Federal Maritime Commission"
   ],
   "summary": "On 2016-08-31 (31 August 2016) Hanjin Shipping applied to the Seoul Central District Court for receivership after its creditors withdrew support, and its container ships were left outside ports. Terminal operators, tug providers and other service providers declined to handle the vessels because they doubted payment, and ships were arrested in several countries by creditors. The United States Government Accountability Office later recorded that cargo owners faced delays and added costs while the fleet was stranded. United States courts handled the company's cross border insolvency case. The Seoul Central District Court declared Hanjin Shipping bankrupt on 2017-02-17 (17 February 2017) and appointed an administrator, ending the company's operations and moving the case to liquidation.",
   "timeline": [
    {
     "date": "2016-08-31",
     "date_precision": "day",
     "text": "Hanjin Shipping applies for court receivership in Seoul after creditor banks withdraw support. Its container ships begin to be refused service at ports.",
     "source_ids": [
      "s2",
      "s3"
     ]
    },
    {
     "date": "2016-09-01",
     "date_precision": "day",
     "text": "Trade press reports three Hanjin vessels stranded off major North American ports, with terminals and service providers unwilling to handle the ships.",
     "source_ids": [
      "s3"
     ]
    },
    {
     "date": "2017-02-17",
     "date_precision": "day",
     "text": "The Seoul Central District Court declares Hanjin Shipping bankrupt, appoints a bankruptcy administrator and sets a deadline for creditor claims.",
     "source_ids": [
      "s1",
      "s2"
     ]
    }
   ],
   "cause": {
    "status": "official",
    "text": "Hanjin Shipping applied for receivership after creditor banks declined further support, and the Seoul Central District Court later declared the company bankrupt and moved it into liquidation.",
    "attributed_by": "Seoul Central District Court",
    "source_ids": [
     "s1",
     "s2"
    ]
   },
   "casualties": null,
   "resolution": {
    "date": "2017-02-17",
    "text": "The Seoul Central District Court declared Hanjin Shipping bankrupt on 2017-02-17. Cargo was released over the preceding months through court supervised arrangements in several jurisdictions.",
    "source_ids": [
     "s1",
     "s2",
     "s4"
    ]
   },
   "related_events": [],
   "no_effect_reason": "predates_data",
   "no_effect_note": "IMF PortWatch daily data starts on 2019-01-01, so no effect can be measured for a 2016 event.",
   "sources": [
    {
     "id": "s1",
     "url": "https://www.cnbc.com/2017/02/17/skorea-court-declares-hanjin-shipping-bankrupt.html",
     "publisher": "CNBC",
     "title": "S.Korea court declares Hanjin Shipping bankrupt",
     "published_date": "2017-02-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260820022014/https://www.cnbc.com/2017/02/17/skorea-court-declares-hanjin-shipping-bankrupt.html",
     "type": "press"
    },
    {
     "id": "s2",
     "url": "https://www.seatrade-maritime.com/containers/the-end-of-hanjin-shipping-officially-declared-bankrupt",
     "publisher": "Seatrade Maritime News",
     "title": "The end of Hanjin Shipping - officially declared bankrupt",
     "published_date": "2017-02-17",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260103025807/https://www.seatrade-maritime.com/containers/the-end-of-hanjin-shipping-officially-declared-bankrupt",
     "type": "press"
    },
    {
     "id": "s3",
     "url": "https://www.porttechnology.org/news/hanjin_ships_stranded_at_major_ports/",
     "publisher": "Port Technology International",
     "title": "Hanjin Ships Stranded at Major Ports",
     "published_date": "2016-09-01",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20250811205410/https://www.porttechnology.org/news/hanjin_ships_stranded_at_major_ports/",
     "type": "press"
    },
    {
     "id": "s4",
     "url": "https://www.gao.gov/products/gao-20-353r",
     "publisher": "United States Government Accountability Office",
     "title": "Ocean Carrier Bankruptcies: Federal Agencies Have a Limited Role in Addressing Effects on Cargo",
     "published_date": "2020-01-31",
     "accessed_date": "2026-09-15",
     "archive_url": "https://web.archive.org/web/20260912041213/https://www.gao.gov/products/gao-20-353r",
     "type": "official"
    }
   ],
   "confidence": {
    "level": "medium",
    "reason": "The receivership filing and the bankruptcy declaration are confirmed by consistent trade and general press reporting and by a later United States Government Accountability Office report, but no court document or company statement could be retrieved directly."
   },
   "corrections": [],
   "url": "https://worldfreightmonitor.com/events/2016/hanjin-shipping-bankruptcy-2016/",
   "approved_at": "2026-09-16T18:59:04Z",
   "measured_effect": []
  }
 ]
}