ETA accuracy benchmark · 🇫🇷 Marseille-Fos
How Port Flow's predicted ETA compares to each vessel's own broadcast ETA at Marseille-Fos, measured on closed voyages over the last 90 days. We publish the number — good or bad. Lower error is better.
Port Flow predicted ETA (RMSE)
32.19 h
MAE 37.05 h · 689 voyages
Broadcast ETA (RMSE)
68.80 h
crew-declared, 413 voyages (same set)
Our advantage
53.2 %
lower error than the broadcast ETA
Broadcast ETAs more than 7 days from the actual arrival are excluded as AIS sentinel / placeholder values (181 excluded). Both figures are computed on the same remaining voyage set — apples to apples.
Closed voyages
error = predicted/broadcast minus actual arrival (hours)| 245060000 | container | 08/26, 09:34 PM UTC | 0.02 h | -794.57 h |
| 228292700 | product | 08/26, 08:58 PM UTC | 1.51 h | -31.32 h |
| 253592000 | container | 08/26, 06:40 PM UTC | 2.10 h | -0.68 h |
| 636022736 | product | 08/26, 05:52 PM UTC | -0.98 h | -2.38 h |
| 228306800 | chemical | 08/26, 05:28 PM UTC | -0.90 h | — |
| 563068400 | product | 08/26, 04:58 PM UTC | 2.88 h | — |
| 357558000 | product | 08/26, 04:03 PM UTC | 0.75 h | — |
| 672248000 | container | 08/26, 02:44 PM UTC | 12.97 h | -599.74 h |
| 241859000 | container | 08/26, 12:12 PM UTC | -8.61 h | -1976.20 h |
| 636023127 | general-cargo | 08/26, 11:19 AM UTC | 11.17 h | -1339.83 h |
| 226014040 | product | 08/26, 11:05 AM UTC | 0.05 h | -603.94 h |
| 228292700 | product | 08/26, 10:18 AM UTC | -1.37 h | -20.64 h |
| 227681050 | product | 08/26, 09:58 AM UTC | -0.04 h | — |
| 352003000 | container | 08/26, 09:51 AM UTC | -171.64 h | -507.06 h |
| 219061000 | chemical | 08/26, 06:57 AM UTC | 2.01 h | -640.95 h |
| 255806341 | product | 08/26, 04:16 AM UTC | -5.28 h | -125.27 h |
| 255917357 | product | 08/26, 03:29 AM UTC | -0.66 h | 6121.50 h |
| 258047000 | product | 08/25, 09:57 PM UTC | 1.54 h | -3.96 h |
| 241490000 | product | 08/25, 07:52 PM UTC | 1.49 h | — |
| 244790522 | product | 08/25, 06:47 PM UTC | -0.26 h | -1261.80 h |
| 228292700 | product | 08/25, 06:17 PM UTC | -0.10 h | -4.62 h |
| 304036000 | container | 08/25, 05:14 PM UTC | 4.00 h | -79.24 h |
| 354670000 | container | 08/25, 02:20 PM UTC | -1171.55 h | -1161.34 h |
| 227096210 | container | 08/25, 01:02 PM UTC | -0.30 h | — |
| 228292700 | product | 08/25, 12:51 PM UTC | -0.28 h | -4.87 h |
| 538009327 | container | 08/25, 11:58 AM UTC | 2.18 h | -100.97 h |
| 311000134 | product | 08/25, 10:39 AM UTC | -0.59 h | -46.65 h |
| 228003800 | product | 08/25, 10:38 AM UTC | -0.45 h | — |
| 352002015 | product | 08/25, 08:45 AM UTC | -24.23 h | — |
| 563068400 | product | 08/25, 06:58 AM UTC | 0.21 h | -25.97 h |
| 228003800 | product | 08/25, 06:46 AM UTC | -1.12 h | 3023.22 h |
| 255806316 | container | 08/25, 06:18 AM UTC | 0.88 h | -12.82 h |
| 636018704 | general-cargo | 08/25, 03:27 AM UTC | 6.09 h | -891.46 h |
| 215872000 | product | 08/25, 12:27 AM UTC | -1.48 h | -1902.47 h |
| 248011000 | chemical | 08/24, 11:04 PM UTC | -0.32 h | -41.08 h |
| 255917246 | container | 08/24, 05:27 PM UTC | 1.47 h | -33.46 h |
| 228292700 | product | 08/24, 05:00 PM UTC | -0.01 h | 0.99 h |
| 244549000 | container | 08/24, 03:22 PM UTC | -2.73 h | — |
| 357558000 | product | 08/24, 02:16 PM UTC | -0.10 h | -1.27 h |
| 258047000 | product | 08/24, 12:24 PM UTC | -0.47 h | -0.91 h |
| 228003800 | product | 08/24, 11:04 AM UTC | -2.33 h | — |
| 228003800 | product | 08/24, 09:17 AM UTC | 0.34 h | 3044.70 h |
| 563243800 | product | 08/24, 07:37 AM UTC | -0.01 h | -1.12 h |
| 249973000 | container | 08/24, 07:28 AM UTC | 5.06 h | -482.47 h |
| 228003800 | product | 08/24, 06:57 AM UTC | 0.31 h | 3047.03 h |
| 636093329 | general-cargo | 08/24, 06:44 AM UTC | 5.49 h | -505.75 h |
| 672747000 | container | 08/24, 06:37 AM UTC | 3.12 h | -760.62 h |
| 249230000 | product | 08/24, 03:45 AM UTC | -0.07 h | -1310.76 h |
| 419001224 | product | 08/24, 03:10 AM UTC | 4.15 h | -913.17 h |
| 256764000 | chemical | 08/24, 01:20 AM UTC | -0.85 h | -6.34 h |
See it on a live desk
Predicted ETAs, congestion and sanctions screening across 51 ports — try it in one click, no signup.
How it's measured
- Predicted ETA: distance-to-berth over speed-made-good, refreshed on every AIS position, with a seasonal correction from rolling medians.
- Broadcast ETA: the crew-entered ETA in the vessel's AIS message — the de-facto industry default.
- Both are compared to the actual arrival timestamp on the same closed voyages. We report RMSE (penalises large misses) and MAE (typical error).
- Broadcast ETAs more than 7 days off are dropped as AIS sentinel / placeholder values, and our model is scored on that same set — so the comparison is honest, not cherry-picked.
- Coverage is public AIS only; ports with weak coverage show fewer closed voyages. We'd rather show a small honest sample than a big misleading one.