Train NS 2321 Amsterdam Centraal – Vlissingen

Amsterdam Centraal 08:06 → Vlissingen 10:50 Daily 2 h 44 min · 17 stops NS (Nederlandse Spoorwegen)

✓ Today’s run finished

Today, last fix heading to Middelburg at 11:29 No data

  1. Amsterdam Centraal08:06
  2. Heemstede-Aerdenhout08:28
  3. Den Haag Laan v NOI08:53
  4. Schiedam Centrum09:14
  5. Dordrecht09:36
  6. Middelburg10:43
  7. Vlissingen10:50

Next service: tomorrow 08:06 from Amsterdam Centraal · Sat 7 Nov

Next departure 08:06 tomorrow · Amsterdam Centraal
On-time · 30 days
96%
24/25 runs under 3 min
RT coverage: 16 full · 9 partial · 5 no data
On-time · 90 days
95%
61/64 runs under 3 min
RT coverage: 54 full · 10 partial · 25 no data
Typical delay
0min
Median at arrival, 90 days
30 days: 0 min
P90
+1min
9 in 10 runs arrive with less than this
30 days: 0 min

Last 30 days

Arrival delay at Vlissingen, in minutes. One bar per run.

  • On time (<3 min)
  • 3–10 min
  • 10–30 min
  • 30+ min
  • Partial coverage
  • No data

Worst days

  • Sun 20 Sept Max en route +12 min · last fix heading to Rotterdam Blaak +12 min
  • Fri 18 Sept Max en route +7 min · last fix heading to Rotterdam Blaak +5 min
  • Sun 11 Oct Max en route +4 min · last fix heading to Dordrecht +4 min

Distribution · 90 days

64 runs with a known final delay. On time = under 3 min, the same cut the map uses.

  • Early 3% · 2
  • On time 92% · 59
  • 3–10 min 3% · 2
  • 10–30 min 2% · 1
  • 30+ min 0% · 0

On-time by weekday

  • 100% M n=11
  • 100% T n=9
  • 100% W n=10
  • 100% T n=9
  • 90% F n=10
  • 100% S n=8
  • 71% S n=7

Stops and timetable

Timetable of the latest run from the operator’s GTFS (17 stops).

Last 90 days, 64 runs. At intermediate stops it is an estimate from the delay at origin and destination. Delays over 2 h count as “> 2 h”: our data does not measure them exactly.

StopSched.Usually 9 days in 10
08:06on time on time
08:11≈ on time ≈ +1 min
08:21 / 08:23≈ on time ≈ +1 min
08:28≈ on time ≈ +1 min
08:43 / 08:45≈ on time ≈ +1 min
08:53 / 08:55≈ on time ≈ +1 min
08:58 / 08:59≈ on time ≈ +1 min
09:06≈ on time ≈ +1 min
09:14≈ on time ≈ +1 min
09:18 / 09:21≈ on time ≈ +1 min
09:24≈ on time ≈ +1 min
09:36 / 09:37≈ on time ≈ +1 min
10:00 / 10:02≈ on time ≈ +2 min
10:12≈ on time ≈ +2 min
10:31≈ on time ≈ +2 min
10:43≈ on time ≈ +1 min
10:50on time +1 min

Each run is closed into train_runs (country, train number, service day) from the live positions. Final delay = last delay seen. Partial coverage: the feed stopped before the final stop (last value used, hatched in the chart). No data: a run without any valid delay; counts as neither on time nor late. Data collected since 11 July 2026.

Will I make my connection?

Pick where you get off and how many minutes you have until your next train. We work it out from what this train did over the last 90 days.

Include the time to change platforms. It is an estimate from past data, not a guarantee. Days more than 2 h late count as a missed connection.

Recent runs

DateLast stopFinalMax
Fri 6 NovMiddelburg 11:29No data—
Thu 5 NovMiddelburg 10:57No data—
Wed 4 NovMiddelburg 10:58Partial coverage0 min+1 min
Tue 3 NovMiddelburg 10:58Partial coverage0 min—
Mon 2 NovMiddelburg 10:59Partial coverage0 min—
Sun 1 NovDordrecht 10:010 min—
Sat 31 OctDordrecht 09:510 min—
Fri 30 OctMiddelburg 10:570 min—
Thu 29 OctMiddelburg 10:59Partial coverage0 min—
Wed 28 OctMiddelburg 10:58Partial coverage0 min—
Tue 27 OctMiddelburg 10:58Partial coverage0 min—
Mon 26 OctMiddelburg 10:58Partial coverage0 min—
Sun 25 OctVlissingen Souburg 11:21No data—
Sat 24 OctVlissingen Souburg 11:200 min—
Fri 23 OctMiddelburg 11:370 min—
Thu 22 OctMiddelburg 10:580 min—
Wed 21 OctMiddelburg 10:570 min—
Tue 20 OctMiddelburg 11:010 min—
Mon 19 OctMiddelburg 10:57Partial coverage0 min—
Sun 18 OctDordrecht 10:010 min—
Sat 17 OctDordrecht 10:010 min—
Fri 16 OctMiddelburg 10:580 min—
Thu 15 OctMiddelburg 10:58No data—
Wed 14 OctMiddelburg 10:580 min—
Tue 13 OctMiddelburg 10:58No data—
Mon 12 OctMiddelburg 10:580 min—
Sun 11 OctDordrecht 09:52+4 min+4 min
Sat 10 OctDordrecht 09:51+3 min+3 min
Fri 9 OctMiddelburg 10:58+1 min—
Thu 8 OctMiddelburg 10:57Partial coverage0 min—