Train NS 2151 Amsterdam Centraal – Haarlem

Amsterdam Centraal 15:50 → Haarlem 16:05 Daily 0 h 15 min · 3 stops NS (Nederlandse Spoorwegen)

It has not run yet today

Last recorded run: Sunday 11 October 0 min

Next service: today 15:50 from Amsterdam Centraal · Mon 12 Oct

Next departure 15:50 today · Amsterdam Centraal
On-time · 30 days
100%
26/26 runs under 3 min
RT coverage: 24 full · 2 partial · 3 no data
On-time · 90 days
97%
62/64 runs under 3 min
RT coverage: 62 full · 2 partial · 24 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: +1 min

Last 30 days

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

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

Worst days

  • Mon 3 Aug Max en route +65 min · last fix heading to Amsterdam Centraal +65 min
  • Sat 15 Aug Max en route +10 min · last fix heading to Amsterdam Centraal +10 min

Distribution · 90 days

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

  • Early 25% · 16
  • On time 72% · 46
  • 3–10 min 0% · 0
  • 10–30 min 2% · 1
  • 30+ min 2% · 1

On-time by weekday

  • 89% M n=9
  • 100% T n=8
  • 100% W n=9
  • 100% T n=9
  • 100% F n=11
  • 89% S n=9
  • 100% S n=9

Stops and timetable

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

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.

Recent runs

DateLast stopFinalMax
Sun 11 OctAmsterdam Sloterdijk 16:09Partial coverage0 min—
Sat 10 OctAmsterdam Sloterdijk 16:11Partial coverage+1 min+1 min
Fri 9 OctLeiden Centraal 16:460 min—
Thu 8 OctLeiden Centraal 16:42+1 min+1 min
Wed 7 OctLeiden Centraal 16:42+1 min+1 min
Tue 6 OctLeiden Centraal 16:420 min+1 min
Mon 5 OctLeiden Centraal 16:420 min—
Sun 4 OctAmsterdam Centraal 00:17−1 min+1 min
Sat 3 OctAmsterdam Sloterdijk 00:270 min—
Fri 2 OctAmsterdam Centraal 00:210 min+1 min
Thu 1 OctAmsterdam Centraal 00:230 min—
Wed 30 SeptAmsterdam Centraal 00:540 min+5 min
Tue 29 SeptAmsterdam Centraal 19:440 min—
Mon 28 SeptAmsterdam Centraal 00:230 min+1 min
Sun 27 SeptAmsterdam Centraal 19:470 min—
Sat 26 SeptAmsterdam Centraal 20:180 min—
Fri 25 SeptAmsterdam Centraal 00:130 min+3 min
Thu 24 SeptAmsterdam Centraal 00:230 min—
Wed 23 SeptAmsterdam Centraal 01:01−1 min—
Tue 22 SeptAmsterdam Centraal 00:11−1 min+3 min
Mon 21 SeptAmsterdam Centraal 00:210 min+1 min
Sun 20 SeptLeiden Centraal 16:47No data—
Sat 19 SeptLeiden Centraal 16:47No data—
Fri 18 SeptAmsterdam Centraal 20:090 min+1 min
Thu 17 SeptAmsterdam Centraal 00:430 min+5 min
Wed 16 SeptLeiden Centraal 16:43No data—
Tue 15 SeptAmsterdam Centraal 19:44−1 min+1 min
Mon 14 SeptAmsterdam Centraal 00:230 min—
Sun 13 SeptAmsterdam Centraal 00:090 min+3 min
Sat 12 SeptAmsterdam Centraal 00:430 min+1 min