Train NS 3151 Den Haag Centraal – Maastricht

Den Haag Centraal 13:31 → Maastricht 16:33 Daily 3 h 02 min · 12 stops NS (Nederlandse Spoorwegen)

Running now · updated 13:39

Heading to Maastricht No data

Estimated arrival at Maastricht 16:33 · 136 km/h

  1. Den Haag Centraal13:31
  2. Schiphol Airport14:00
  3. Amsterdam Bijlmer ArenA14:16
  4. 's-Hertogenbosch15:06
  5. Eindhoven Centraal15:28
  6. Roermond16:00
  7. Maastricht16:33
On-time · 30 days
86%
6/7 runs under 3 min
RT coverage: 6 full · 1 partial · 23 no data
On-time · 90 days
86%
6/7 runs under 3 min
RT coverage: 6 full · 1 partial · 82 no data
Typical delay
+1min
Median at arrival, 90 days
30 days: +1 min
P90
+4min
9 in 10 runs arrive with less than this
30 days: +4 min

Last 30 days

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

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

Worst days

  • Fri 9 Oct Max en route +8 min · last fix heading to Arnhem Centraal +8 min

Distribution · 90 days

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

  • Early 0% · 0
  • On time 86% · 6
  • 3–10 min 14% · 1
  • 10–30 min 0% · 0
  • 30+ min 0% · 0

On-time by weekday

  • 100% M n=1
  • 100% T n=1
  • 100% W n=1
  • 100% T n=1
  • 0% F n=1
  • 100% S n=1
  • 100% S n=1

Stops and timetable

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

StopSched.Today
13:31
13:42 / 13:44
14:00 / 14:03
14:09 / 14:11
14:16 / 14:17
14:33 / 14:39
15:06 / 15:08
15:28 / 15:30
15:47
16:00 / 16:01
16:16 / 16:17
16:33

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
Mon 12 OctDen Haag Centraal 13:34No data—
Sun 11 OctSittard 16:35Partial coverage+1 min—
Sat 10 OctArnhem Centraal 15:35+1 min+1 min
Fri 9 OctArnhem Centraal 15:42+8 min+8 min
Thu 8 OctArnhem Centraal 15:350 min—
Wed 7 OctArnhem Centraal 15:350 min—
Tue 6 OctArnhem Centraal 15:41+1 min+2 min
Mon 5 OctArnhem Centraal 15:350 min—
Sun 4 OctArnhem Centraal 15:34No data—
Sat 3 OctArnhem Centraal 15:35No data—
Fri 2 OctArnhem Centraal 15:36No data—
Thu 1 OctArnhem Centraal 15:35No data—
Wed 30 SeptArnhem Centraal 15:35No data—
Tue 29 SeptArnhem Centraal 15:38No data—
Mon 28 SeptArnhem Centraal 15:37No data—
Sun 27 SeptArnhem Centraal 15:34No data—
Sat 26 SeptArnhem Centraal 15:35No data—
Fri 25 SeptArnhem Centraal 15:35No data—
Thu 24 SeptArnhem Centraal 15:35No data—
Wed 23 SeptArnhem Centraal 15:35No data—
Tue 22 SeptArnhem Centraal 15:35No data—
Mon 21 SeptArnhem Centraal 15:35No data—
Sun 20 SeptArnhem Centraal 15:36No data—
Sat 19 SeptArnhem Centraal 15:36No data—
Fri 18 SeptArnhem Centraal 15:36No data—
Thu 17 SeptArnhem Centraal 15:35No data—
Wed 16 SeptArnhem Centraal 15:36No data—
Tue 15 SeptArnhem Centraal 15:35No data—
Mon 14 SeptArnhem Centraal 15:35No data—
Sun 13 SeptArnhem Centraal 15:34No data—