ETA accuracy benchmark · 🇮🇹 Trieste
How Port Flow's predicted ETA compares to each vessel's own broadcast ETA at Trieste, 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)
15.77 h
MAE 22.13 h · 787 voyages
Broadcast ETA (RMSE)
62.30 h
crew-declared, 473 voyages (same set)
Our advantage
74.7 %
lower error than the broadcast ETA
Broadcast ETAs more than 7 days from the actual arrival are excluded as AIS sentinel / placeholder values (285 excluded). Both figures are computed on the same remaining voyage set — apples to apples.
Closed voyages
error = predicted/broadcast minus actual arrival (hours)| 357244000 | container | 10/12, 04:26 AM UTC | 1.78 h | 0.57 h |
| 241963000 | product | 10/11, 11:34 PM UTC | 1.06 h | -15.58 h |
| 636021153 | container | 10/11, 07:16 PM UTC | 1.87 h | -12.28 h |
| 636025297 | container | 10/11, 05:43 PM UTC | -0.14 h | -589.73 h |
| 249087000 | container | 10/11, 05:41 PM UTC | 0.22 h | -991.69 h |
| 314001131 | container | 10/11, 04:05 PM UTC | 2.93 h | -0.09 h |
| 253000119 | container | 10/11, 03:08 PM UTC | 3.75 h | -368.65 h |
| 538006499 | product | 10/11, 10:30 AM UTC | 3.07 h | -1.50 h |
| 636020783 | container | 10/11, 03:53 AM UTC | 0.20 h | -0.88 h |
| 563221900 | container | 10/11, 01:20 AM UTC | 2.00 h | -610.84 h |
| 255915842 | general-cargo | 10/10, 11:46 PM UTC | 3.57 h | -494.78 h |
| 636021506 | container | 10/10, 11:16 PM UTC | 1.58 h | -391.27 h |
| 538009721 | container | 10/10, 09:19 PM UTC | 3.21 h | -404.33 h |
| 636020455 | container | 10/10, 02:11 PM UTC | 0.95 h | -154.20 h |
| 271050376 | general-cargo | 10/10, 09:46 AM UTC | 0.05 h | -168.78 h |
| 636022626 | product | 10/10, 09:17 AM UTC | -0.64 h | -122.30 h |
| 247383800 | general-cargo | 10/10, 08:40 AM UTC | -0.52 h | -182.67 h |
| 256566000 | container | 10/10, 08:07 AM UTC | 2.08 h | 1.88 h |
| 215958000 | product | 10/10, 06:56 AM UTC | 0.37 h | -2.94 h |
| 271046489 | general-cargo | 10/10, 05:14 AM UTC | -1.47 h | -85.00 h |
| 241456000 | product | 10/09, 08:31 PM UTC | 0.80 h | -11.53 h |
| 271044633 | general-cargo | 10/09, 08:13 PM UTC | 3.97 h | -184.23 h |
| 574005750 | chemical | 10/09, 04:34 PM UTC | 1.24 h | 1.43 h |
| 636021517 | container | 10/09, 04:18 PM UTC | -0.61 h | -636.32 h |
| 246519000 | container | 10/09, 03:13 PM UTC | -1.97 h | -0.73 h |
| 255815000 | general-cargo | 10/09, 07:58 AM UTC | -0.90 h | -136.97 h |
| 511101667 | container | 10/09, 12:07 AM UTC | 3.06 h | -1419.13 h |
| 477155200 | container | 10/08, 10:37 PM UTC | 3.53 h | -1550.20 h |
| 215020000 | general-cargo | 10/08, 08:58 PM UTC | 1.82 h | -77.48 h |
| 248046000 | container | 10/08, 07:44 PM UTC | 2.51 h | -26.73 h |
| 255806043 | container | 10/08, 05:35 PM UTC | 4.58 h | -359.59 h |
| 642122016 | product | 10/08, 03:45 PM UTC | 0.63 h | -21.25 h |
| 371024000 | container | 10/08, 02:28 PM UTC | 0.79 h | -23.48 h |
| 271000662 | general-cargo | 10/08, 02:02 PM UTC | 1.17 h | -8.78 h |
| 563260800 | product | 10/08, 12:28 PM UTC | 2.64 h | -2.48 h |
| 256263000 | container | 10/08, 12:19 PM UTC | -1.36 h | — |
| 352001191 | container | 10/08, 12:04 PM UTC | -1.24 h | -484.08 h |
| 636021246 | container | 10/08, 10:03 AM UTC | 0.36 h | -3048.05 h |
| 256263000 | general-cargo | 10/08, 06:54 AM UTC | 1.13 h | -83.90 h |
| 271000662 | general-cargo | 10/08, 05:53 AM UTC | -0.65 h | -82.88 h |
| 247453500 | general-cargo | 10/08, 04:43 AM UTC | 0.82 h | -192.47 h |
| 636020244 | container | 10/07, 06:21 PM UTC | 2.85 h | -0.85 h |
| 271043165 | general-cargo | 10/07, 02:41 PM UTC | -0.29 h | -75.69 h |
| 538009489 | container | 10/07, 01:50 PM UTC | 0.12 h | -325.83 h |
| 215515000 | product | 10/07, 12:49 PM UTC | 1.44 h | -6.82 h |
| 271043303 | general-cargo | 10/07, 07:23 AM UTC | 0.24 h | -89.39 h |
| 311002132 | container | 10/07, 07:03 AM UTC | 3.84 h | -1.56 h |
| 247241900 | general-cargo | 10/07, 06:46 AM UTC | 1.55 h | -90.77 h |
| 636092914 | container | 10/07, 06:12 AM UTC | 1.91 h | -617.21 h |
| 311013400 | product | 10/06, 08:12 PM UTC | 0.94 h | -383.21 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.