TDX/AI
← All datasetsDataset Profile

PortWatch

Maritime trade monitoring (AIS-derived)

ArcGIS RESTAuth: None

PortWatch (IMF / University of Oxford)

Repository: IMF Research Department & Oxford Martin Programme (OxMarTrans) URL: https://portwatch.imf.org/ ArcGIS Hub: https://portwatch-imf-dataviz.hub.arcgis.com/ License: IMF terms — free for non-commercial/research use Update cadence: Weekly (Tuesdays 9 AM ET) Time series: January 1, 2019 to present


What This Dataset Is

Real-time global maritime trade monitoring derived from AIS (Automatic Identification System) satellite tracking of ~90,000 ships. Provides daily port call counts, import/export volume estimates (metric tons), and chokepoint transit data for 1,985 ports and 28 chokepoints worldwide.

The underlying methodology converts AIS vessel positions into economically meaningful trade indicators by tracking vessel entries/exits from port polygons and measuring draft changes to estimate cargo volumes.


Datasets

1. Daily Port Activity Data v2

ArcGIS Item ID: 959214444157458aad969389b3ebe1a0 Granularity: One row per port per day Coverage: 1,985 ports

FieldTypeDescription
ObjectIDIntegerArcGIS row ID
portidStringPortWatch port identifier (join key)
portnameStringPort name
dateDateObservation date
portcallsIntegerTotal daily port calls (all vessel types)
portcalls_cargoIntegerDaily port calls by cargo vessels
portcalls_tankerIntegerDaily port calls by tanker vessels
importDoubleTotal estimated import volume (metric tons)
import_cargoDoubleImport volume from cargo vessels (MT)
import_tankerDoubleImport volume from tanker vessels (MT)
exportDoubleTotal estimated export volume (metric tons)
export_cargoDoubleExport volume from cargo vessels (MT)
export_tankerDoubleExport volume from tanker vessels (MT)
geometryPointPort location (lat/lon)

2. Ports (Reference Table)

ArcGIS Item ID: acc668d199d1472abaaf2467133d4ca4 Granularity: One row per port (static) Coverage: ~1,854 ports

FieldTypeDescription
portidStringPortWatch port identifier (join key)
portnameStringPort name
countryStringCountry name
vessel_count_totalIntegerTotal vessel count (reference metric)
vessel_count_containerIntegerContainer vessel count
vessel_count_dry_bulkIntegerDry bulk vessel count
vessel_count_general_cargoIntegerGeneral cargo vessel count
vessel_count_RoRoIntegerRoll-on/roll-off vessel count
vessel_count_tankerIntegerTanker vessel count
industry_top1StringTop industry served
industry_top2StringSecond industry
industry_top3StringThird industry
share_country_maritime_importDoublePort's share of country maritime imports
share_country_maritime_exportDoublePort's share of country maritime exports
geometryPointPort location (lat/lon)

3. Daily Chokepoint Transit Calls

ArcGIS Item ID: 42132aa4e2fc4d41bdaf9a445f688931 Granularity: One row per chokepoint per day Coverage: 28 chokepoints (Suez Canal, Panama Canal, Strait of Hormuz, Bab el-Mandeb, Cape of Good Hope, Strait of Malacca, etc.)

FieldTypeDescription
portnameStringChokepoint name
dateDateObservation date
n_cargoIntegerDaily transit calls by cargo vessels
n_tankerIntegerDaily transit calls by tanker vessels
n_totalIntegerTotal daily transit calls
capacityDoubleEstimated transit trade volume (metric tons)
geometryPointChokepoint location

4. Chokepoints (Reference Table)

ArcGIS Item ID: fa9a5800b0ee4855af8b2944ab1e07af Coverage: 24-28 chokepoints — metadata including location and descriptive attributes.


Access Methods

ArcGIS REST API (No Authentication)

Step 1: Get item metadata
  GET https://www.arcgis.com/sharing/rest/content/items/{ITEM_ID}?f=json
  --> Extract the `url` field to get the FeatureServer URL

Step 2: Query FeatureServer
  GET {FeatureServer_URL}/0/query?where=1=1&outFields=*&f=geojson

Step 3: Filter
  ?where=portid='MOMBASA'
  &outFields=portid,portname,date,portcalls,import,export
  &resultRecordCount=100
  &resultOffset=0
  &orderByFields=date DESC
  &f=json

Download Formats

CSV, GeoJSON, KML, Shapefile, GeoTIFF, PNG — available from each dataset page on the ArcGIS Hub.

Search API

https://portwatch.imf.org/api/search/definition/


Methodology

  1. Port calls — counted when a vessel's AIS signal enters and exits a port polygon (boundaries defined via DBSCAN spatial clustering on historical AIS positions)
  2. Import/export volumes — estimated by measuring vessel draft changes before/after port call, multiplied by deadweight tonnage. Draft decrease = offloading (import); draft increase = loading (export)
  3. Cargo/tanker split — based on AIS vessel type classification codes
  4. Source papers: IMF WP/20/57 (Cerdeiro et al. 2020), IMF WP/25/93 (2025)

Key Limitations for Automation

  • Maritime only — no land transport or aviation
  • Large vessels only — AIS tracking misses smaller vessels and informal trade
  • Modelled volumes — trade estimates are derived from draft changes, not customs data
  • Port-centric — aggregated to port level; no vessel-level data exposed
  • No official data dictionary — field names were reconstructed from analysis notebooks and should be confirmed via FeatureServer metadata queries

Integration Notes

  • Join to OPSIS: Match PortWatch port IDs to OPSIS port geometries for combined maritime trade + infrastructure resilience
  • Join to World Bank: Country names enable linking port volumes to WDI indicators (container traffic TEU: IS.SHP.GOOD.TU)
  • Join to IATI/DAC: Port disruption data can contextualise transport ODA investment decisions
  • Red Sea Monitoring example: The datapartnership/red-sea-monitoring project demonstrates full integration patterns using these datasets