ETA accuracy benchmark · 🇫🇷 Saint-Nazaire / Montoir
How Port Flow's predicted ETA compares to each vessel's own broadcast ETA at Saint-Nazaire / Montoir, measured on closed voyages over the last 30 days. We publish the number — good or bad. Lower error is better.
Port Flow predicted ETA (RMSE)
23.24 h
MAE 14.35 h · 139 voyages
Broadcast ETA (RMSE)
66.95 h
crew-declared, 92 voyages (same set)
Our advantage
65.3 %
lower error than the broadcast ETA
Broadcast ETAs more than 7 days from the actual arrival are excluded as AIS sentinel / placeholder values (36 excluded). Both figures are computed on the same remaining voyage set — apples to apples.
Closed voyages
error = predicted/broadcast minus actual arrival (hours)| MMSI | Cargo | Arrival | Our error | Broadcast error |
|---|---|---|---|---|
| 636091788 | container | 07/12, 11:47 AM UTC | -0.13 h | — |
| 236111791 | chemical | 07/12, 08:52 AM UTC | 2.29 h | 0.13 h |
| 218627000 | general-cargo | 07/12, 03:03 AM UTC | -0.16 h | -133.55 h |
| 226340000 | product | 07/12, 02:44 AM UTC | -0.07 h | -721.23 h |
| 265058000 | product | 07/11, 12:27 PM UTC | 1.52 h | -5.46 h |
| 210281000 | container | 07/11, 09:13 AM UTC | 0.26 h | -1.22 h |
| 224876000 | container | 07/10, 09:06 PM UTC | 0.42 h | -35.10 h |
| 255916315 | product | 07/10, 07:09 PM UTC | -1102.94 h | -1040.16 h |
| 228025700 | container | 07/10, 06:59 PM UTC | 1.25 h | 0.50 h |
| 229632000 | product | 07/10, 06:55 PM UTC | 2.09 h | -1042.92 h |
| 636013157 | product | 07/10, 12:39 PM UTC | 0.75 h | -78.67 h |
| 228025700 | container | 07/10, 05:45 AM UTC | 0.59 h | -393.75 h |
| 413319660 | product | 07/10, 02:41 AM UTC | 0.60 h | -124.19 h |
| 228219600 | container | 07/09, 07:26 PM UTC | -0.14 h | -23.69 h |
| 227681520 | product | 07/09, 04:49 PM UTC | 0.75 h | -26.83 h |
| 304089000 | container | 07/09, 12:59 PM UTC | -0.84 h | -643.00 h |
| 215552000 | chemical | 07/08, 10:32 PM UTC | 3.40 h | -5.05 h |
| 228219600 | container | 07/08, 07:06 PM UTC | 2.38 h | -482.10 h |
| 230185000 | container | 07/08, 04:57 PM UTC | -0.07 h | -120.96 h |
| 266002000 | product | 07/08, 04:52 PM UTC | 2.60 h | — |
| 219200000 | product | 07/08, 10:02 AM UTC | -0.12 h | -1037.04 h |
| 209351000 | product | 07/08, 08:13 AM UTC | 0.57 h | -1.98 h |
| 314902000 | container | 07/07, 07:49 PM UTC | 1.85 h | -38.83 h |
| 224876000 | container | 07/07, 07:09 PM UTC | -0.38 h | -37.15 h |
| 228024800 | container | 07/07, 05:57 PM UTC | 0.39 h | 4250.54 h |
| 271043022 | product | 07/07, 09:08 AM UTC | 2.16 h | -16.14 h |
| 636013157 | product | 07/07, 08:21 AM UTC | 2.34 h | -2.35 h |
| 266002000 | product | 07/06, 03:16 PM UTC | -0.66 h | -208.77 h |
| 305757000 | container | 07/06, 08:19 AM UTC | -0.19 h | -2.82 h |
| 228024800 | container | 07/06, 07:21 AM UTC | 1.43 h | -172.36 h |
| 249723000 | product | 07/06, 06:05 AM UTC | 2.62 h | -460.09 h |
| 636025212 | general-cargo | 07/06, 05:24 AM UTC | 0.26 h | -163.42 h |
| 256765000 | product | 07/06, 03:21 AM UTC | 0.86 h | -224.35 h |
| 210283000 | general-cargo | 07/05, 07:20 PM UTC | 0.43 h | -537.35 h |
| 228084000 | container | 07/05, 03:31 PM UTC | 0.58 h | -108.52 h |
| 244730000 | container | 07/04, 07:09 AM UTC | -0.12 h | -1.16 h |
| 538011475 | product | 07/04, 06:27 AM UTC | 2.03 h | -730.46 h |
| 244976000 | container | 07/04, 01:55 AM UTC | 1.82 h | -88.92 h |
| 224876000 | container | 07/03, 09:27 PM UTC | 0.19 h | 1.54 h |
| 218627000 | general-cargo | 07/03, 09:21 PM UTC | 0.31 h | -138.36 h |
| 227681520 | product | 07/03, 09:00 PM UTC | 0.89 h | -52.50 h |
| 258022000 | container | 07/03, 04:30 PM UTC | 0.48 h | -48.50 h |
| 230185000 | container | 07/03, 01:09 PM UTC | 0.36 h | 2.83 h |
| 311013400 | product | 07/03, 06:08 AM UTC | 1.10 h | -2.13 h |
| 256392000 | product | 07/03, 05:35 AM UTC | 1.93 h | -66.59 h |
| 256392000 | product | 07/03, 05:26 AM UTC | 1.00 h | -66.44 h |
| 236385000 | chemical | 07/03, 02:11 AM UTC | 0.65 h | -8.19 h |
| 250004612 | container | 07/03, 01:38 AM UTC | 1.19 h | -89.65 h |
| 255801490 | container | 07/02, 05:22 PM UTC | -0.23 h | -0.87 h |
| 255916581 | product | 07/02, 05:15 AM UTC | -0.19 h | -83.26 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.