HYROX Maastricht 2025: Open Men results

1,936 finishers on 19 Sep 2025. Typical finish 1:29:04, fastest 10% under 1:12:42. Back to the analysis.

# Athlete Age Time Behind 1st Runs Stations Rox Ski Push Pull BBJ Row Carry Lunge WB
1 Michael Odonnell 🇬🇧 GBR1st of 248 aged 16-24 16-24 58:09 29:37 24:17 4:20 3:56 1:53 3:11 3:04 3:48 1:29 3:02 3:54
2 Nik Kojc 🇸🇮 SLO1st of 403 aged 25-29 25-29 58:42 0:33 29:20 24:51 4:36 4:04 2:00 2:53 3:05 4:02 1:27 3:13 4:07
3 Dieter Schwarzkopf 🇩🇪 GER1st of 353 aged 35-39 35-39 59:28 1:19 28:23 26:50 4:21 3:53 1:55 3:26 2:38 4:10 1:25 2:54 6:29
4 Thomas Lozano 🇫🇷 FRA2nd of 248 aged 16-24 16-24 59:57 1:48 29:42 25:36 4:43 4:06 2:12 3:27 2:29 4:13 1:37 2:50 4:42
5 Hans van den Heuvel 🇧🇪 BEL1st of 419 aged 30-34 30-34 1:00:41 2:32 26:24 30:25 3:56 4:06 1:46 3:49 3:27 3:54 1:29 2:41 9:13
6 Robert Cowan 🇬🇧 GBR1st of 227 aged 40-44 40-44 1:00:47 2:38 30:10 26:02 4:38 3:59 2:03 3:03 3:26 4:06 1:53 3:27 4:05
7 Shaun Demicoli 🇲🇹 MLT2nd of 403 aged 25-29 25-29 1:01:17 3:08 30:27 26:00 4:55 4:00 2:00 3:41 3:01 4:15 1:35 3:16 4:12
8 Dave Jannenga 🇳🇱 NED2nd of 419 aged 30-34 30-34 1:01:18 3:09 30:04 26:34 4:43 3:47 2:10 3:28 3:48 4:01 1:29 3:48 4:03
9 Charles Izac 🇫🇷 FRA3rd of 248 aged 16-24 16-24 1:01:23 3:14 27:18 29:32 4:37 4:26 2:04 4:03 3:50 4:31 1:50 3:03 5:45
10 Louis Simoneau 🇫🇷 FRA3rd of 419 aged 30-34 30-34 1:01:28 3:19 31:26 25:08 4:58 3:55 2:09 3:13 3:23 3:54 1:38 3:13 3:43
11 Torsten Reuter 🇩🇪 GER2nd of 227 aged 40-44 40-44 1:02:18 4:09 29:46 27:51 4:47 4:14 2:25 3:40 3:20 4:30 1:28 3:45 4:29
12 Nico Krackl 🇩🇪 GER2nd of 353 aged 35-39 35-39 1:02:30 4:21 29:57 27:43 4:57 3:55 2:08 3:31 3:53 4:13 1:38 3:31 4:54
13 Hidde van der Ent 🇳🇱 NED4th of 248 aged 16-24 16-24 1:02:33 4:24 31:57 25:33 5:07 3:59 1:57 3:30 2:45 4:04 1:20 3:42 4:16
14 Tobias Kienle 🇩🇪 GER4th of 419 aged 30-34 30-34 1:03:12 5:03 30:33 27:45 4:59 4:01 2:28 4:54 2:56 4:12 1:36 2:47 4:51
15 Sander D'Hont 🇳🇱 NED5th of 419 aged 30-34 30-34 1:03:12 5:03 29:46 28:27 5:03 4:08 1:59 4:05 3:55 4:16 1:56 3:30 4:38
16 Jeroen van Zanten 🇳🇱 NED3rd of 353 aged 35-39 35-39 1:03:21 5:12 31:43 26:34 5:08 4:02 2:15 3:37 3:35 4:11 1:20 3:44 3:50
17 Jelani James 🇳🇱 NED5th of 248 aged 16-24 16-24 1:03:29 5:20 29:02 30:18 4:14 4:09 2:32 4:21 4:15 4:10 1:54 3:49 5:08
18 Jože Kojc 🇸🇮 SLO1st of 50 aged 55-59 55-59 1:03:34 5:25 32:17 26:03 5:18 4:05 2:04 3:39 2:25 4:10 1:34 3:10 4:56
19 Matij Mersch 🇳🇱 NED3rd of 227 aged 40-44 40-44 1:03:42 5:33 32:18 26:39 4:50 4:04 2:06 3:17 3:17 4:16 1:40 3:24 4:35
20 Kjeld Dijkstra 🇳🇱 NED3rd of 403 aged 25-29 25-29 1:03:45 5:36 32:06 26:45 4:57 4:05 2:13 3:21 2:38 4:21 1:42 3:37 4:48
21 Tomaž Gojčič 🇸🇮 SLO4th of 403 aged 25-29 25-29 1:03:46 5:37 31:52 27:20 4:39 4:10 1:53 3:21 3:04 4:15 1:42 3:10 5:45
22 Rick van Loo 🇳🇱 NED5th of 403 aged 25-29 25-29 1:03:55 5:46 31:23 27:46 4:51 3:55 2:14 3:57 3:21 4:05 1:56 3:39 4:39
23 Geert Storken 🇳🇱 NED4th of 227 aged 40-44 40-44 1:03:55 5:46 — 36:15 — 4:35 2:56 6:27 8:40 5:03 1:32 2:49 4:13
24 Twan Wolke 🇳🇱 NED6th of 403 aged 25-29 25-29 1:03:58 5:49 31:10 28:11 4:41 3:56 2:10 3:37 3:30 4:11 1:43 3:48 5:16
25 Dimitris Balis 🇬🇷 GRE4th of 353 aged 35-39 35-39 1:04:06 5:57 31:21 27:50 4:59 4:09 2:12 4:35 3:29 4:26 1:54 2:55 4:10
26 Peter Woelders 🇳🇱 NED7th of 403 aged 25-29 25-29 1:04:07 5:58 30:43 28:00 5:29 4:06 2:08 3:40 3:42 4:26 1:39 3:38 4:41
27 Tony Verneuil 🇫🇷 FRA6th of 419 aged 30-34 30-34 1:04:10 6:01 29:30 30:22 4:23 4:22 2:18 4:38 3:56 4:19 1:17 4:18 5:14
28 Jip de Jong 🇳🇱 NED6th of 248 aged 16-24 16-24 1:04:18 6:09 30:52 28:51 4:39 4:12 2:17 3:44 3:19 4:21 1:31 3:45 5:42
29 Maxime Anciaux 🇧🇪 BEL7th of 419 aged 30-34 30-34 1:04:32 6:23 31:14 28:35 4:49 4:00 1:58 3:44 4:09 4:11 1:46 3:45 5:02
30 Nick Raymaekers 🇧🇪 BEL5th of 353 aged 35-39 35-39 1:04:34 6:25 29:12 30:33 4:54 4:13 2:33 4:52 3:52 4:30 1:38 3:54 5:01
31 Gert-Jaap van Meeuwen 🇳🇱 NED8th of 403 aged 25-29 25-29 1:04:59 6:50 33:32 26:11 5:21 3:56 2:44 2:43 3:34 4:05 1:39 3:00 4:30
32 Konstantin Jünger 🇩🇪 GER6th of 353 aged 35-39 35-39 1:05:02 6:53 31:36 28:35 4:56 4:15 2:14 3:45 3:08 4:19 1:41 3:43 5:30
33 Antoine Deghorain 🇧🇪 BEL9th of 403 aged 25-29 25-29 1:05:09 7:00 31:07 29:12 4:55 4:05 2:16 3:55 3:49 4:11 1:28 3:37 5:51
34 Reno van Heiningen 🇳🇱 NED10th of 403 aged 25-29 25-29 1:05:10 7:01 33:08 27:07 4:59 4:12 2:40 3:20 3:37 4:13 1:43 3:37 3:45
35 Kay Abbing 🇳🇱 NED7th of 248 aged 16-24 16-24 1:05:12 7:03 30:38 30:04 4:34 4:19 2:19 4:11 3:38 4:33 1:41 4:00 5:23
36 Bart Janssen 🇳🇱 NED7th of 353 aged 35-39 35-39 1:05:16 7:07 29:52 29:13 6:16 3:52 2:10 3:50 5:06 4:29 1:51 3:41 4:14
37 Ferdy Verweij 🇳🇱 NED8th of 419 aged 30-34 30-34 1:05:33 7:24 30:20 30:10 5:07 4:04 2:42 3:31 4:22 4:20 2:09 3:53 5:09
38 Hamid el Aarbaoui 🇳🇱 NED5th of 227 aged 40-44 40-44 1:05:35 7:26 31:31 28:47 5:19 4:22 2:13 4:09 3:43 4:30 1:36 2:57 5:17
39 Alain Etienne 🇧🇪 BEL9th of 419 aged 30-34 30-34 1:05:43 7:34 33:03 27:27 5:17 4:15 2:11 3:51 3:48 4:19 1:25 3:39 3:59
40 Michel Rood 🇳🇱 NED8th of 248 aged 16-24 16-24 1:05:44 7:35 32:23 28:06 5:18 4:03 2:29 3:57 3:37 4:20 1:24 3:29 4:47
41 Olivier Ajamlou 🇳🇱 NED10th of 419 aged 30-34 30-34 1:05:51 7:42 32:13 28:08 5:36 3:29 1:57 3:50 3:34 4:25 2:31 3:26 4:56
42 Valentin Herrero 🇫🇷 FRA11th of 403 aged 25-29 25-29 1:05:52 7:43 31:58 29:00 4:57 4:05 2:08 3:35 4:15 4:19 1:54 3:58 4:46
43 Martijn Bakker 🇳🇱 NED9th of 248 aged 16-24 16-24 1:05:55 7:46 32:16 28:32 5:11 4:07 1:44 3:55 4:11 4:13 1:34 3:17 5:31
44 Thomas van Til 🇳🇱 NED11th of 419 aged 30-34 30-34 1:05:57 7:48 32:15 28:51 4:56 4:07 2:01 3:27 4:10 4:17 1:38 4:13 4:58
45 Vincent Martinet 🇫🇷 FRA8th of 353 aged 35-39 35-39 1:06:00 7:51 32:25 28:57 4:44 4:03 2:08 3:16 4:33 4:09 1:32 3:09 6:07
46 Boris Canu 🇫🇷 FRA12th of 419 aged 30-34 30-34 1:06:05 7:56 33:01 28:18 4:51 4:09 2:13 3:33 3:52 4:23 1:28 4:12 4:28
47 Quentin Dupuis 🇧🇪 BEL13th of 419 aged 30-34 30-34 1:06:07 7:58 31:02 30:15 4:55 3:55 2:10 3:30 3:51 4:41 1:40 3:29 6:59
48 Erben Wennemars 🇳🇱 NED1st of 139 aged 45-49 45-49 1:06:14 8:05 33:02 27:54 5:23 4:02 1:53 3:29 3:38 4:15 1:45 3:00 5:52
49 Jeroen Verbraeken 🇧🇪 BEL12th of 403 aged 25-29 25-29 1:06:16 8:07 32:23 28:31 5:29 4:11 1:52 4:06 3:48 4:24 1:39 3:26 5:05
50 Jordi Balk 🇳🇱 NED14th of 419 aged 30-34 30-34 1:06:21 8:12 29:48 30:22 6:16 4:03 2:49 3:46 4:15 4:29 1:55 3:27 5:38
51 Jack Blissett 🇬🇧 GBR2nd of 139 aged 45-49 45-49 1:06:28 8:19 34:03 27:06 5:24 3:56 1:44 3:20 4:02 4:09 1:33 3:03 5:19
52 Floris van Drunen 🇳🇱 NED15th of 419 aged 30-34 30-34 1:06:29 8:20 28:20 33:41 4:33 4:22 2:15 4:58 4:19 4:22 1:43 4:11 7:31
53 Peter de Gruijl 🇳🇱 NED16th of 419 aged 30-34 30-34 1:06:35 8:26 32:11 29:06 5:23 4:05 2:04 3:48 3:22 4:40 1:44 3:39 5:44
54 Marco Keijsers 🇳🇱 NED9th of 353 aged 35-39 35-39 1:06:41 8:32 30:21 30:53 5:31 4:18 1:54 4:39 3:21 4:45 1:49 4:19 5:48
55 Alby Blokdijk 🇳🇱 NED10th of 248 aged 16-24 16-24 1:06:43 8:34 34:43 26:46 5:19 4:08 1:54 4:25 3:48 4:19 1:32 3:08 3:32
56 Stefan Grootkarzijn 🇳🇱 NED17th of 419 aged 30-34 30-34 1:06:50 8:41 32:43 29:02 5:09 3:50 2:02 3:55 3:44 4:11 1:23 3:46 6:11
57 Paul Hesselberth 🇳🇱 NED13th of 403 aged 25-29 25-29 1:07:04 8:55 34:20 26:23 6:26 3:47 1:56 3:19 4:16 4:20 1:49 2:51 4:05
58 Aron Schalk 🇳🇱 NED10th of 353 aged 35-39 35-39 1:07:12 9:03 33:22 28:31 5:24 4:00 2:37 3:42 3:39 4:15 1:35 3:33 5:10
59 Niek Borst 🇳🇱 NED11th of 248 aged 16-24 16-24 1:07:21 9:12 32:43 29:24 5:18 4:11 2:18 3:35 4:23 4:26 1:40 4:17 4:34
60 Mark Stam 🇳🇱 NED14th of 403 aged 25-29 25-29 1:07:27 9:18 33:47 28:41 5:04 4:10 2:22 4:17 3:37 4:13 1:47 3:35 4:40
61 Camiel Pesch 🇳🇱 NED15th of 403 aged 25-29 25-29 1:07:32 9:23 32:31 29:46 5:20 4:15 2:03 3:34 4:03 4:31 1:54 4:04 5:22
62 Oliver Sinclair 🇦🇺 AUS18th of 419 aged 30-34 30-34 1:07:33 9:24 33:05 29:20 5:12 4:04 2:06 3:34 4:30 4:25 1:48 3:49 5:04
63 Niek Boom 🇳🇱 NED19th of 419 aged 30-34 30-34 1:07:33 9:24 30:59 31:11 5:27 4:10 2:02 4:55 4:16 4:28 1:52 3:48 5:40
64 Bjorn Looijen 🇳🇱 NED12th of 248 aged 16-24 16-24 1:07:39 9:30 34:10 28:25 5:09 4:08 2:07 3:37 4:13 4:11 1:36 3:25 5:08
65 Tieme de Boer 🇳🇱 NED13th of 248 aged 16-24 16-24 1:07:42 9:33 32:02 30:18 5:29 4:03 1:44 4:27 3:34 4:41 2:04 4:27 5:18
66 Jordy Snel 🇳🇱 NED16th of 403 aged 25-29 25-29 1:07:42 9:33 31:03 31:33 5:09 4:03 2:46 4:09 4:38 4:26 2:27 4:03 5:01
67 Robin van den Wijngaard 🇳🇱 NED17th of 403 aged 25-29 25-29 1:07:47 9:38 30:36 31:53 5:23 4:13 2:28 3:58 4:35 4:36 1:48 3:53 6:22
68 Mathias van Kerckhoven 🇧🇪 BEL18th of 403 aged 25-29 25-29 1:07:54 9:45 33:31 29:25 5:03 4:05 2:28 4:11 4:06 4:19 1:50 3:39 4:47
69 Sven Aerts 🇳🇱 NED14th of 248 aged 16-24 16-24 1:07:56 9:47 32:33 30:11 5:16 4:04 2:18 4:08 4:25 4:34 1:23 4:21 4:58
70 Grégory van Waeyenbergh 🇧🇪 BEL11th of 353 aged 35-39 35-39 1:07:56 9:47 31:55 30:47 5:19 4:06 2:42 4:04 4:01 4:19 1:44 3:14 6:37
71 Jasper Dijkstra 🇳🇱 NED6th of 227 aged 40-44 40-44 1:08:05 9:56 32:31 30:36 5:04 4:08 2:19 3:55 4:04 4:20 2:12 3:55 5:43
72 Jordy Paauw 🇳🇱 NED19th of 403 aged 25-29 25-29 1:08:14 10:05 32:55 30:13 5:11 4:16 2:14 4:03 3:58 4:30 1:56 4:14 5:02
73 Alan Heye 🇧🇪 BEL20th of 403 aged 25-29 25-29 1:08:18 10:09 34:53 27:43 5:46 3:47 1:50 3:52 3:44 4:16 1:47 4:01 4:26
74 Jan Tegtmeyer 🇩🇪 GER21st of 403 aged 25-29 25-29 1:08:20 10:11 33:52 28:41 5:50 4:11 2:29 3:56 4:02 4:14 1:41 3:51 4:17
75 Joris Tuit 🇳🇱 NED22nd of 403 aged 25-29 25-29 1:08:21 10:12 33:35 29:38 5:13 4:14 2:13 4:11 3:39 4:18 1:46 3:25 5:52
76 Arjen Lodewijks 🇳🇱 NED12th of 353 aged 35-39 35-39 1:08:22 10:13 33:54 28:30 6:01 4:01 2:28 3:42 3:35 4:23 1:44 3:47 4:50
77 Sverre Musz 🇳🇱 NED15th of 248 aged 16-24 16-24 1:08:28 10:19 31:49 31:16 5:26 4:34 2:27 3:57 4:04 4:35 1:50 4:02 5:47
78 Pol Minon 🇧🇪 BEL20th of 419 aged 30-34 30-34 1:08:29 10:20 32:35 30:06 5:52 4:11 1:51 4:10 4:11 4:19 1:43 3:44 5:57
79 Sven Hensbergen 🇳🇱 NED21st of 419 aged 30-34 30-34 1:08:35 10:26 32:59 27:46 7:54 4:09 2:20 3:36 4:11 4:23 1:58 — 5:15
80 Timothée Fourneau 🇧🇪 BEL22nd of 419 aged 30-34 30-34 1:08:36 10:27 32:31 30:30 5:38 4:18 1:51 3:31 5:09 4:20 1:48 3:52 5:41
81 Raf Roefs 🇳🇱 NED16th of 248 aged 16-24 16-24 1:08:39 10:30 33:07 30:28 5:10 4:07 2:33 3:53 3:36 4:30 1:48 3:56 6:05
82 Lukas Henseler 🇩🇪 GER17th of 248 aged 16-24 16-24 1:08:44 10:35 31:48 30:49 6:13 3:55 2:19 4:14 4:00 4:24 2:03 4:00 5:54
83 Timo Warnier 🇳🇱 NED23rd of 403 aged 25-29 25-29 1:08:48 10:39 34:35 28:11 6:06 3:57 2:07 3:52 4:11 4:22 1:31 3:50 4:21
84 Mike Bergmans 🇳🇱 NED7th of 227 aged 40-44 40-44 1:08:48 10:39 32:39 30:36 5:37 4:02 2:31 3:36 3:54 4:24 1:37 4:00 6:32
85 Remco Groeneveld 🇳🇱 NED8th of 227 aged 40-44 40-44 1:08:49 10:40 33:19 30:36 4:59 4:19 2:35 4:04 4:04 4:21 1:42 4:29 5:02
86 Gert-Jan Westerhout 🇳🇱 NED3rd of 139 aged 45-49 45-49 1:08:51 10:42 34:33 28:52 5:29 4:11 2:26 3:34 3:35 4:44 1:24 4:18 4:40
87 Donny Roelvink 🇳🇱 NED24th of 403 aged 25-29 25-29 1:08:53 10:44 36:27 26:27 6:02 4:04 2:25 3:25 3:37 4:17 1:34 3:33 3:32
88 Shane Paulet 🇧🇪 BEL13th of 353 aged 35-39 35-39 1:08:56 10:47 34:13 29:23 5:24 3:59 2:03 3:52 4:00 4:21 1:40 4:36 4:52
89 Roel van Ruiten 🇳🇱 NED25th of 403 aged 25-29 25-29 1:09:00 10:51 34:21 29:35 5:10 4:18 2:52 3:33 3:46 4:21 1:55 4:21 4:29
90 Quentin Deppe 🇧🇪 BEL26th of 403 aged 25-29 25-29 1:09:00 10:51 32:11 31:22 5:32 4:14 2:41 3:41 3:22 4:35 2:05 3:50 6:54
91 Jeffrey van Walle 🇧🇪 BEL23rd of 419 aged 30-34 30-34 1:09:03 10:54 34:48 28:57 5:22 4:15 2:18 3:41 3:52 4:21 1:47 3:53 4:50
92 Max Emde 🇩🇪 GER27th of 403 aged 25-29 25-29 1:09:06 10:57 32:47 31:03 5:19 4:14 2:11 3:42 5:30 4:22 1:49 4:17 4:58
93 Robin Collard 🇧🇪 BEL24th of 419 aged 30-34 30-34 1:09:08 10:59 32:27 31:10 5:35 4:18 1:58 4:29 4:20 4:32 1:49 4:04 5:40
94 Ferdy Richter 🇳🇱 NED25th of 419 aged 30-34 30-34 1:09:09 11:00 32:38 31:03 5:33 4:16 2:20 3:56 5:01 4:36 2:04 4:15 4:35
95 Luca van der Lienden 🇳🇱 NED18th of 248 aged 16-24 16-24 1:09:10 11:01 34:10 29:12 5:52 3:54 2:12 4:17 4:02 4:29 1:52 3:58 4:28
96 Taylor McCormack 🇳🇿 NZL26th of 419 aged 30-34 30-34 1:09:11 11:02 33:19 30:50 5:06 4:16 2:09 3:43 4:59 4:18 1:30 4:35 5:20
97 Niels Vermaat 🇳🇱 NED27th of 419 aged 30-34 30-34 1:09:12 11:03 33:46 30:25 5:07 4:00 2:04 4:12 4:27 4:08 1:32 4:00 6:02
98 Aaron Timmerman 🇧🇪 BEL28th of 403 aged 25-29 25-29 1:09:13 11:04 33:38 29:51 5:49 4:15 1:53 3:56 3:18 4:22 1:47 4:16 6:04
99 Florian Woiwode 🇩🇪 GER14th of 353 aged 35-39 35-39 1:09:14 11:05 36:21 27:24 5:33 4:03 1:32 3:20 4:19 4:20 1:40 3:40 4:30
100 Kaj Smeets 🇳🇱 NED28th of 419 aged 30-34 30-34 1:09:18 11:09 34:28 29:20 5:34 3:57 1:59 3:58 4:17 4:31 1:38 3:33 5:27
How to read

The place is among timed finishers in Open Men; the line under the name is the place in the age group. Behind 1st is the gap to the winning time. Tap a time for that race's full report, or a name for every race of that athlete.

The RoxHype app

Found your result? Beat it at your next race.

The RoxHype app is your training plan to race day: built from your splits, your kit and your race date, and adjusted every week.

  • A week-by-week plan that counts down to your race
  • Extra work on your slowest stations
  • Adjusts every week to what you actually did

Free to download. Used by more than 40,000 HYROX athletes.

RoxHype app home: days to your HYROX, your expected finish range and this week's sessions RoxHype workout player guiding a sled push, with the next exercise lined up
Find my result