Train NS 3660 Roosendaal – Zwolle

Roosendaal 17:57 → Zwolle 20:40 Daily 2 h 43 min · 14 stops NS (Nederlandse Spoorwegen)

It has not run yet today

Last recorded run: Friday 13 November 0 min

Next service: today 17:57 from Roosendaal · Sat 14 Nov

Next departure 17:57 today · Roosendaal
On-time · 30 days
61%
11/18 runs under 3 min
RT coverage: 16 full · 2 partial · 9 no data
On-time · 90 days
69%
18/26 runs under 3 min
RT coverage: 24 full · 2 partial · 60 no data
Typical delay
+1min
Median at arrival, 90 days
30 days: +1 min
P90
+13min
9 in 10 runs arrive with less than this
30 days: +18 min

Last 30 days

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

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

Worst days

  • Thu 12 Nov Max en route +24 min · last fix heading to Breda +24 min
  • Fri 23 Oct Max en route +23 min · last fix heading to Nijmegen +23 min
  • Tue 10 Nov Max en route +16 min · last fix heading to Breda +16 min
  • Wed 4 Nov Max en route +11 min · last fix heading to Etten-Leur +10 min
  • Sat 31 Oct Max en route +10 min · last fix heading to Wijhe +10 min

Distribution · 90 days

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

  • Early 0% · 0
  • On time 69% · 18
  • 3–10 min 19% · 5
  • 10–30 min 12% · 3
  • 30+ min 0% · 0

On-time by weekday

  • 100% M n=5
  • 67% T n=3
  • 75% W n=4
  • 50% T n=2
  • 60% F n=5
  • 33% S n=3
  • 75% S n=4

Stops and timetable

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

Last 90 days, 26 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:57on time on time
18:07≈ on time ≈ +1 min
18:15 / 18:19≈ on time ≈ +2 min
18:32 / 18:34≈ on time ≈ +5 min
18:49 / 18:55≈ on time ≈ +7 min
19:06≈ on time ≈ +8 min
19:23 / 19:24≈ on time ≈ +8 min
19:37 / 19:41≈ +1 min ≈ +9 min
19:52 / 19:53≈ +1 min ≈ +11 min
20:02 / 20:03≈ +1 min ≈ +11 min
20:15 / 20:16≈ +1 min ≈ +12 min
20:23≈ +1 min ≈ +13 min
20:29≈ +1 min ≈ +13 min
20:40+1 min +14 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 13 Nov's-Hertogenbosch 20:23Partial coverage0 min—
Thu 12 NovBreda 21:19+24 min+24 min
Wed 11 NovEtten-Leur 20:44+2 min+3 min
Tue 10 NovBreda 21:04+16 min+16 min
Mon 9 NovEtten-Leur 18:19Partial coverage0 min—
Sun 8 NovWijhe 20:44+1 min—
Sat 7 NovWijhe 20:430 min—
Fri 6 NovTilburg 20:48+6 min+8 min
Thu 5 NovEtten-Leur 20:45No data—
Wed 4 NovEtten-Leur 20:52+10 min+11 min
Tue 3 NovEtten-Leur 20:42No data—
Mon 2 NovEtten-Leur 20:44No data—
Sun 1 NovWijhe 20:44+1 min+2 min
Sat 31 OctWijhe 20:52+10 min+10 min
Fri 30 OctTilburg 20:19No data—
Thu 29 OctRoosendaal 18:11No data—
Wed 28 OctEtten-Leur 19:460 min—
Tue 27 OctRoosendaal 19:58No data—
Mon 26 OctEtten-Leur 19:440 min—
Fri 23 OctNijmegen 20:26+23 min+23 min
Thu 22 OctTilburg 19:45No data—
Wed 21 OctTilburg 19:41No data—
Tue 20 OctTilburg 19:470 min—
Mon 19 OctTilburg 18:510 min—
Sun 18 OctWijhe 20:52+8 min+9 min
Sat 17 OctWijhe 20:55No data—
Fri 16 OctDieren 20:44+1 min+1 min
Thu 15 OctBreda 18:55No data—
Wed 14 OctArnhem Centraal 20:46No data—
Tue 13 OctTilburg 20:42No data—