10 min read

Case Study: Reconstructing a Vessel's Movements From Public Data

A worked example of building a defensible vessel history from ship registers, transponder data, port records and satellite imagery — and where the gaps have to be admitted.

This is a worked example rather than a report on a specific vessel: a walk-through of how a movement history is assembled from open sources, what each source can and cannot prove, and how the holes in the record are handled honestly. The same structure applies to shipping, aviation, and freight investigations.

The question, stated narrowly

A vague ask — 'where has this ship been?' — cannot be answered. The usable version is bounded: which ports did this vessel call at between two dates, and what can be shown about each call. Narrowing the claim this way is what makes the result checkable, and it protects you from the temptation to fill gaps with inference.

Step 1 — Fix the identity of the hull

Vessel identity is a moving target. Ships are renamed, re-flagged, and re-registered, and a name alone identifies nothing. The stable anchors are the IMO number, where one exists, and the call sign — but a call sign travels with a registration, not a hull, and is reassigned. Build an identity chain: every name, flag, and call sign this hull has carried, with the dates each began. Everything downstream depends on that chain being right, and a single misattributed voyage contaminates the whole timeline.

Step 2 — Position data, and its silence

Automatic identification system positions are the obvious source, and they are far weaker than they look. Coverage comes from terrestrial receivers and satellites, so it thins in coastal shadows and polar regions and goes stale in crowded anchorages. Crucially, transponders can be switched off legitimately — for security in piracy-risk areas, or to protect crew — so a gap in the record is not evidence of concealment. Treat silence as an unknown, never as a finding, and state the coverage limits of the exact region and period you are reporting on.

  • Record the reception source and timestamp for each position you cite; a satellite-received position can be hours old when it appears.
  • Distinguish a gap in transmission from a gap in your data feed — the two look identical and mean different things.
  • Do not infer speed or course from two distant points; that is interpolation, not observation.

Step 3 — Independent confirmation from shore

Port calls can be corroborated by sources that do not depend on the vessel transmitting: harbour-authority arrival lists, pilotage and agency records where published, port-radios logs, and the timestamps of container movements in shipping schedules. Local maritime enthusiast networks often photograph and log calls that never reach a commercial dataset. Where two independent sources — one from the ship, one from the shore — put the same hull in the same berth in the same window, that call is solid.

Step 4 — Satellite imagery as a hard check

Archive satellite imagery over a berth is the closest thing to a photograph of the answer. It resolves the question a transponder cannot: was there a vessel of the right length in this specific berth at this time? It has real limits — cloud cover, revisit intervals measured in days, and the fact that hull length and superstructure profile identify a class, not a ship. Imagery should be used to confirm or contradict a position-derived claim, not as a stand-alone identification.

Step 5 — Report with the gaps visible

The finished product is a timeline with a confidence marker on every line and an explicit list of what is unknown: the days with no coverage, the calls supported by only one source, the identifications that rest on hull shape alone. A reader who cannot see the gaps cannot judge the work, and a report that hides them will eventually be contradicted by someone who finds them.

In maritime research, the honest sentence is 'no position was received for this period', not a straight line drawn between the last known and the next known point.

The discipline that makes this defensible is boring: every claim tied to a dated, named source; every inference labelled as an inference; and a scope agreed in advance so the report answers the question that was actually asked.

case studymaritimeverification