Train NS 3165 Den Haag Centraal – Maastricht

Den Haag Centraal 17:01 → Maastricht 20:03 Daily 3 h 02 min · 12 stops NS (Nederlandse Spoorwegen)

It has not run yet today

Last recorded run: Wednesday 4 November No data

Next service: today 17:01 from Den Haag Centraal · Thu 5 Nov

Next departure 17:01 today · Den Haag Centraal
On-time · 30 days
80%
16/20 runs under 3 min
RT coverage: 19 full · 1 partial · 9 no data
On-time · 90 days
82%
18/22 runs under 3 min
RT coverage: 21 full · 1 partial · 66 no data
Typical delay
0min
Median at arrival, 90 days
30 days: 0 min
P90
+5min
9 in 10 runs arrive with less than this
30 days: +6 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

  • Wed 28 Oct Max en route +72 min · last fix heading to Amsterdam Zuid +72 min
  • Wed 7 Oct Max en route +9 min · last fix heading to Amsterdam Bijlmer ArenA +9 min
  • Thu 29 Oct Max en route +5 min · last fix heading to Amsterdam Bijlmer ArenA +5 min
  • Mon 2 Nov Max en route +3 min · last fix heading to Amsterdam Bijlmer ArenA +3 min

Distribution · 90 days

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

  • Early 0% · 0
  • On time 82% · 18
  • 3–10 min 14% · 3
  • 10–30 min 0% · 0
  • 30+ min 5% · 1

On-time by weekday

  • 80% M n=5
  • 100% T n=2
  • 0% W n=2
  • 67% T n=3
  • 100% F n=3
  • 100% S n=4
  • 100% S n=3

Stops and timetable

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

Last 90 days, 22 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
17:01on time on time
17:12 / 17:14≈ on time ≈ on time
17:30 / 17:33≈ on time ≈ +1 min
17:39 / 17:41≈ on time ≈ +1 min
17:46 / 17:47≈ on time ≈ +1 min
18:06 / 18:09≈ on time ≈ +2 min
18:36 / 18:38≈ on time ≈ +3 min
18:58 / 19:00≈ on time ≈ +3 min
19:17≈ on time ≈ +4 min
19:30 / 19:31≈ on time ≈ +4 min
19:46 / 19:47≈ on time ≈ +5 min
20:03on time +5 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
Wed 4 NovUtrecht Centraal 19:04No data—
Tue 3 NovAmsterdam Bijlmer ArenA 19:03No data—
Mon 2 NovAmsterdam Bijlmer ArenA 19:03+3 min+3 min
Sun 1 NovSittard 20:04Partial coverage0 min—
Sat 31 OctVeenendaal-De Klomp 18:47+1 min+1 min
Fri 30 OctVeenendaal-De Klomp 18:440 min—
Thu 29 OctAmsterdam Bijlmer ArenA 18:51+5 min+5 min
Wed 28 OctAmsterdam Zuid 19:25+72 min+72 min
Tue 27 OctAmsterdam Bijlmer ArenA 18:41No data—
Mon 26 OctAmsterdam Bijlmer ArenA 18:400 min—
Sun 25 OctVeenendaal-De Klomp 18:44No data—
Sat 24 OctVeenendaal-De Klomp 18:450 min—
Fri 23 OctUtrecht Centraal 18:230 min—
Thu 22 OctUtrecht Centraal 18:240 min—
Wed 21 OctUtrecht Centraal 18:24No data—
Tue 20 OctUtrecht Centraal 18:240 min—
Mon 19 OctEde-Wageningen 19:040 min—
Sun 18 OctArnhem Centraal 19:040 min—
Sat 17 OctArnhem Centraal 19:040 min—
Fri 16 OctArnhem Centraal 19:04No data—
Thu 15 OctUtrecht Centraal 19:03No data—
Wed 14 OctArnhem Centraal 19:04No data—
Tue 13 OctEde-Wageningen 19:03No data—
Mon 12 OctEde-Wageningen 19:030 min—
Sun 11 OctSittard 20:040 min—
Sat 10 OctArnhem Centraal 19:04+2 min+2 min
Fri 9 OctEde-Wageningen 19:04+1 min+1 min
Thu 8 OctAmsterdam Bijlmer ArenA 19:040 min—
Wed 7 OctAmsterdam Bijlmer ArenA 19:10+9 min+9 min
Tue 6 OctAmsterdam Bijlmer ArenA 19:030 min—