MarineTraffic Live Ship Tracker
Pricing
from $30.00 / 1,000 results
MarineTraffic Live Ship Tracker
Get live ship positions from MarineTraffic for any area (center + zoom) — position, speed, course, type, size, destination — plus optional ship details (MMSI, IMO, tonnage, TEU, year built) and voyage info.
Pricing
from $30.00 / 1,000 results
Rating
0.0
(0)
Developer
Farhan Febrian Nauval
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Get live ship positions from MarineTraffic for any area of sea — position, speed, course, heading, ship type, size, and destination — with optional full ship details (MMSI, IMO, tonnage, TEU, year built, home port) and voyage info (destination, ETA, ports). No account or login required.
Why use this actor
- Live AIS positions for any area — give a center point and a zoom level.
- Optional MMSI & IMO — the unique vessel identifiers, plus call sign, ship type, gross tonnage, deadweight, TEU, year built, and home port.
- Optional voyage info — reported destination, ETA, departure/arrival ports, draught, and progress.
- Wide-area coverage — a grid radius collects many map tiles around your center and de-duplicates ships.
- Clear last-seen time — each ship includes a
lastSeenUtctimestamp. - Stable JSON output — ready for dashboards, alerts, or analysis.
How it works
- Give a center latitude/longitude and a zoom level (how big an area each tile covers).
- Optionally set a grid radius to cover more area, and turn on ship details / voyage info.
- The actor collects every ship in the area, de-duplicates them, and (optionally) looks up each ship's details.
- Each ship becomes one row — downloadable as JSON, CSV, or Excel.
Zoom levels — what area each covers
MarineTraffic's zoom controls how much sea one map tile covers (smaller number = bigger area). Approximate width of a single tile:
| Zoom | Tile width | Good for |
|---|---|---|
| 4 | ~45° (~5000 km) | ocean / continent |
| 6 | ~11° (~1250 km) | large sea region |
| 7 | ~5.6° (~620 km) | sea / gulf |
| 8 | ~2.8° (~310 km) | coastline stretch |
| 9 | ~1.4° (~155 km) | port / bay (default) |
| 10 | ~0.7° (~78 km) | harbour approach |
| 11–12 | ~0.35°–0.18° (~39–19 km) | single port / anchorage |
Use grid radius to widen coverage: radius 1 = a 3×3 block of tiles around the center, radius 2 = 5×5, and so on.
Use cases
- Port & terminal monitoring — which ships are at/approaching a port right now.
- Fleet / vessel tracking — positions and ETAs for an area of interest.
- Maritime analytics — traffic density, ship types, and flows in a region.
- Alerting — detect arrivals/departures in a watched area.
Input
{"lat": "10.1","lon": "107.7","zoom": 9,"gridRadius": 1,"fetchDetails": true,"includeVoyage": true,"maxDetails": 200,"maxItems": 0,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
| Field | Type | Description |
|---|---|---|
lat / lon | string | Center of the area (decimal degrees). |
zoom | integer | Area size per tile (see table above). Default 9. |
gridRadius | integer | Extra tiles around the center. 0 = center only, 1 = 3×3, 2 = 5×5. Default 2. |
shipTypes | array | Keep only these categories: Cargo, Tanker, Passenger, Fishing, Tug & Special Craft, High-Speed Craft, Pleasure Craft, Navigation Aid, Unspecified. Empty = all. |
fetchDetails | boolean | Add MMSI, IMO, ship type, tonnage, TEU, year built, home port (one lookup per ship). Default false. |
includeVoyage | boolean | Also add destination, ETA, ports, draught (with fetchDetails). Default false. |
maxDetails | integer | Cap how many ships get detail lookups. 0 = all. Default 200. |
maxItems | integer | Overall cap on ships. 0 = all. |
proxyConfiguration | object | Residential proxy recommended. |
Output
One record per ship. Base fields come from the live map; the rest appear when fetchDetails / includeVoyage are on.
{"_input": "lat:10.1|lon:107.7|zoom:9","_scrapedAt": "2026-06-17T17:11:00Z","recordType": "VESSEL","shipId": "9583316","shipName": "COSCO CARNATION","lat": 10.510422, "lon": 107.0091,"speed": 4.0, "course": 130.0, "heading": 191.0,"elapsedMinutes": 1,"lastSeenUtc": "2026-06-17T17:10:18Z","destinationUnlocode": "VNCMP","flag": "HK","shipTypeId": "7", "shipTypeName": "Cargo", "gtShipType": "11","lengthM": 366.0, "widthM": 51.0, "dwt": 163651.0,"tile": { "z": 9, "x": 204, "y": 120 },"url": "https://www.marinetraffic.com/en/ais/details/ships/shipid:9583316","mmsi": 477145900, "imo": 9945904, "callsign": "VRWW7","vesselType": "Cargo", "vesselTypeSpecific": "Container Ship","grossTonnage": 157741, "deadweight": 163651, "teu": 16180,"yearBuilt": 2025, "status": "Active", "homePort": "HONG KONG", "countryCode": "HK","reportedDestination": "VNCMP","etaReported": 1781708400, "etaReportedUtc": "2026-06-17T15:00:00Z","departurePort": { "name": "KAOHSIUNG", "code": "KHH", "timestampLabel": "ATD" },"arrivalPort": { "name": "CAI MEP", "code": "CMT", "timestampLabel": "ATA" },"draughtReported": 11.1, "progress": 100}
| Field | Type | Description |
|---|---|---|
shipId | string | MarineTraffic ship ID (stable; used for the detail lookups and URL). |
shipName | string | Ship name (AIS). |
lat / lon | number | Current position. |
speed / course / heading | number | Speed (knots), course, heading. |
elapsedMinutes | number | Minutes since the last position report. |
lastSeenUtc | string | Last position time (UTC), derived from the elapsed minutes. |
destinationUnlocode | string | Reported destination (UN/LOCODE). |
flag / lengthM / widthM / dwt | mixed | Flag, dimensions, deadweight. |
mmsi / imo / callsign | number/string | Identifiers (with fetchDetails). |
vesselType / vesselTypeSpecific / grossTonnage / teu / yearBuilt / homePort | mixed | Ship details. |
reportedDestination / etaReportedUtc / departurePort / arrivalPort | mixed | Voyage info (with includeVoyage). |
_raw | object | The exact raw map fields, untouched. |
Notes
lastSeenUtcprecision: the live map reports freshness in whole minutes (elapsedMinutes), solastSeenUtcis accurate to the minute. A finer position timestamp isn't published on the public map.- MMSI / IMO are only available with
fetchDetailson (the live map omits them). UsemaxDetailsto balance completeness vs run time. - Higher zoom = smaller area but more individual (un-clustered) ships; widen coverage with
gridRadius.