ETA accuracy benchmark · 🇰🇷 Busan
How Port Flow's predicted ETA compares to each vessel's own broadcast ETA at Busan, 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)
4.79 h
MAE 2.10 h · 540 voyages
Broadcast ETA (RMSE)
80.94 h
crew-declared, 69 voyages (same set)
Our advantage
94.1 %
lower error than the broadcast ETA
Broadcast ETAs more than 7 days from the actual arrival are excluded as AIS sentinel / placeholder values (147 excluded). Both figures are computed on the same remaining voyage set — apples to apples.
Closed voyages
error = predicted/broadcast minus actual arrival (hours)| 440151030 | product | 07/31, 10:57 PM UTC | 0.78 h | — |
| 440101370 | product | 07/31, 10:52 PM UTC | 1.12 h | — |
| 440048210 | product | 07/31, 10:50 PM UTC | 1.10 h | — |
| 440214570 | container | 07/31, 10:21 PM UTC | -0.19 h | — |
| 440178690 | product | 07/31, 10:21 PM UTC | 0.03 h | — |
| 440172660 | product | 07/31, 10:10 PM UTC | 0.02 h | — |
| 440191790 | product | 07/31, 10:05 PM UTC | 0.50 h | — |
| 440500300 | product | 07/31, 09:58 PM UTC | 0.79 h | 3476.78 h |
| 440331080 | product | 07/31, 09:56 PM UTC | -8.24 h | -23.94 h |
| 441183000 | container | 07/31, 09:43 PM UTC | 0.57 h | -1555.73 h |
| 538009693 | container | 07/31, 09:27 PM UTC | 0.43 h | -564.46 h |
| 372604000 | general-cargo | 07/31, 09:25 PM UTC | -0.02 h | -436.43 h |
| 440103700 | product | 07/31, 09:10 PM UTC | -0.27 h | 2774.83 h |
| 440105720 | product | 07/31, 09:05 PM UTC | -0.14 h | 2160.91 h |
| 440156960 | product | 07/31, 08:57 PM UTC | -11.53 h | — |
| 440105250 | product | 07/31, 08:53 PM UTC | 0.74 h | — |
| 440400010 | product | 07/31, 08:39 PM UTC | 0.21 h | — |
| 440461000 | container | 07/31, 08:37 PM UTC | 1.14 h | -115.62 h |
| 440709700 | product | 07/31, 08:23 PM UTC | 0.32 h | 194.61 h |
| 440303500 | product | 07/31, 08:17 PM UTC | -0.07 h | -83.29 h |
| 352006235 | container | 07/31, 08:16 PM UTC | 0.31 h | 7.73 h |
| 440112380 | product | 07/31, 07:13 PM UTC | 0.87 h | — |
| 440127710 | product | 07/31, 05:59 PM UTC | -4.89 h | — |
| 440048210 | product | 07/31, 05:24 PM UTC | 0.15 h | — |
| 440505620 | product | 07/31, 05:23 PM UTC | -0.11 h | — |
| 440178690 | product | 07/31, 05:01 PM UTC | -0.31 h | — |
| 440215590 | product | 07/31, 04:56 PM UTC | 0.35 h | -119.90 h |
| 538003835 | container | 07/31, 04:50 PM UTC | 0.26 h | -945.84 h |
| 440076890 | product | 07/31, 04:27 PM UTC | 0.43 h | 3679.53 h |
| 440505620 | product | 07/31, 03:21 PM UTC | 0.22 h | — |
| 440134270 | product | 07/31, 03:14 PM UTC | -0.26 h | — |
| 538007547 | container | 07/31, 03:12 PM UTC | 0.65 h | -197.71 h |
| 440155850 | product | 07/31, 02:57 PM UTC | 0.99 h | — |
| 563157400 | general-cargo | 07/31, 02:54 PM UTC | -0.14 h | -7.92 h |
| 440312010 | product | 07/31, 02:22 PM UTC | -0.12 h | — |
| 440505620 | product | 07/31, 02:06 PM UTC | -0.03 h | — |
| 440130480 | product | 07/31, 01:58 PM UTC | 0.33 h | -919.98 h |
| 441983000 | chemical | 07/31, 01:45 PM UTC | -1.66 h | -1389.26 h |
| 440038740 | chemical | 07/31, 01:44 PM UTC | 0.33 h | 4418.76 h |
| 440385000 | container | 07/31, 12:54 PM UTC | -0.17 h | -326.91 h |
| 440139560 | product | 07/31, 12:37 PM UTC | 0.01 h | — |
| 440130790 | product | 07/31, 12:29 PM UTC | -0.06 h | 418.51 h |
| 440139560 | product | 07/31, 12:24 PM UTC | -0.50 h | — |
| 440005700 | product | 07/31, 12:22 PM UTC | -0.14 h | — |
| 376353000 | container | 07/31, 12:16 PM UTC | -0.39 h | -106.27 h |
| 440409260 | product | 07/31, 11:58 AM UTC | 0.30 h | — |
| 440114920 | product | 07/31, 11:03 AM UTC | -0.24 h | — |
| 440120270 | product | 07/31, 10:35 AM UTC | -12.27 h | 1932.91 h |
| 440154950 | product | 07/31, 10:15 AM UTC | -31.10 h | -536.26 h |
| 352006466 | container | 07/31, 10:09 AM UTC | -14.14 h | -421.66 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.