HYROX Cologne 2026: Pro Men results
455 finishers on 16 Apr 2026. Typical finish 1:24:06, fastest 10% under 1:08:55. Back to the analysis.
| # | Athlete | Age | Time | Behind 1st | Runs | Stations | Rox | Ski | Push | Pull | BBJ | Row | Carry | Lunge | WB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Paul Weindl 🇩🇪 GER1st of 100 aged 25-29 | 25-29 | 55:55 | 27:52 | 24:23 | 3:44 | 3:48 | 2:50 | 3:15 | 2:16 | 3:59 | 1:27 | 2:57 | 3:51 | |
| 2 | MJ Sutton 🇮🇪 IRL2nd of 100 aged 25-29 | 25-29 | 1:01:13 | 5:18 | 30:37 | 26:41 | 4:00 | 3:56 | 3:04 | 3:23 | 3:06 | 4:10 | 1:35 | 3:30 | 3:57 |
| 3 | Christian Haas 🇩🇪 GER1st of 118 aged 30-34 | 30-34 | 1:01:39 | 5:44 | 29:38 | 28:22 | 3:43 | 4:01 | 3:15 | 4:32 | 3:01 | 4:15 | 1:30 | 3:41 | 4:07 |
| 4 | David Bergmann 🇩🇪 GER1st of 45 aged 16-24 | 16-24 | 1:02:03 | 6:08 | 30:59 | 27:14 | 3:54 | 3:56 | 2:56 | 3:38 | 3:01 | 4:07 | 1:24 | 3:53 | 4:19 |
| 5 | Tobias Kiefer 🇩🇪 GER2nd of 118 aged 30-34 | 30-34 | 1:02:06 | 6:11 | 31:02 | 27:15 | 3:55 | 3:53 | 3:32 | 4:00 | 3:02 | 4:14 | 1:45 | 3:15 | 3:34 |
| 6 | Moritz Kümmeler 🇩🇪 GER3rd of 118 aged 30-34 | 30-34 | 1:02:34 | 6:39 | 29:20 | 28:52 | 4:26 | 4:05 | 3:17 | 3:58 | 3:13 | 4:03 | 1:31 | 4:07 | 4:38 |
| 7 | Stefan Höcht 🇩🇪 GER4th of 118 aged 30-34 | 30-34 | 1:03:37 | 7:42 | 31:49 | 27:54 | 3:57 | 3:53 | 3:03 | 3:48 | 3:01 | 4:10 | 1:20 | 3:26 | 5:13 |
| 8 | Markus Heinrich 🇩🇪 GER3rd of 100 aged 25-29 | 25-29 | 1:03:45 | 7:50 | 29:54 | 29:31 | 4:25 | 4:03 | 2:57 | 4:28 | 3:25 | 4:12 | 1:45 | 4:04 | 4:37 |
| 9 | Sébastien Serrato 🇫🇷 FRA1st of 102 aged 35-39 | 35-39 | 1:03:52 | 7:57 | 31:47 | 28:09 | 3:59 | 4:02 | 3:33 | 3:41 | 2:44 | 4:09 | 1:32 | 3:10 | 5:18 |
| 10 | Nils David 🇩🇪 GER5th of 118 aged 30-34 | 30-34 | 1:03:56 | 8:01 | 31:10 | 28:58 | 3:50 | 3:55 | 3:04 | 4:05 | 3:31 | 4:13 | 1:51 | 3:56 | 4:23 |
| 11 | Tim Wacker 🇩🇪 GER2nd of 45 aged 16-24 | 16-24 | 1:03:57 | 8:02 | 31:36 | 28:14 | 4:12 | 4:04 | 3:30 | 3:41 | 3:08 | 4:13 | 1:44 | 3:29 | 4:25 |
| 12 | Victor Gabriel 🇫🇷 FRA4th of 100 aged 25-29 | 25-29 | 1:04:03 | 8:08 | 29:53 | 29:43 | 4:33 | 4:07 | 3:39 | 4:06 | 3:10 | 4:13 | 1:40 | 3:48 | 5:00 |
| 13 | Fabian Wesemann 🇩🇪 GER5th of 100 aged 25-29 | 25-29 | 1:04:11 | 8:16 | 33:03 | 27:01 | 4:12 | 4:04 | 2:40 | 3:57 | 2:42 | 4:13 | 1:07 | 3:24 | 4:54 |
| 14 | Julian Lehrer 🇩🇪 GER2nd of 102 aged 35-39 | 35-39 | 1:04:11 | 8:16 | 31:23 | 28:44 | 4:09 | 4:03 | 3:12 | 3:57 | 3:08 | 4:20 | 1:30 | 3:35 | 4:59 |
| 15 | Rune Dallmann 🇩🇪 GER3rd of 102 aged 35-39 | 35-39 | 1:04:11 | 8:16 | 30:37 | 29:52 | 3:46 | 4:01 | 3:35 | 3:23 | 3:04 | 4:16 | 1:45 | 3:46 | 6:02 |
| 16 | Marc Steinke 🇩🇪 GER1st of 52 aged 40-44 | 40-44 | 1:04:14 | 8:19 | 31:18 | 28:44 | 4:16 | 3:57 | 3:14 | 4:14 | 3:12 | 4:13 | 1:26 | 3:28 | 5:00 |
| 17 | Renning Elischer 🇩🇪 GER6th of 118 aged 30-34 | 30-34 | 1:04:32 | 8:37 | 30:14 | 30:28 | 3:54 | 4:15 | 3:20 | 4:19 | 3:20 | 4:27 | 1:35 | 3:35 | 5:37 |
| 18 | Ben Okeke 🇦🇹 AUT6th of 100 aged 25-29 | 25-29 | 1:05:15 | 9:20 | 31:13 | 30:04 | 4:02 | 3:56 | 3:34 | 4:49 | 3:15 | 4:12 | 1:40 | 4:01 | 4:37 |
| 19 | Kári Steinn Karlsson 🇮🇸 ISL4th of 102 aged 35-39 | 35-39 | 1:05:16 | 9:21 | 29:01 | 32:19 | 4:00 | 3:53 | 3:16 | 4:03 | 3:54 | 4:03 | 1:38 | 4:19 | 7:13 |
| 20 | David Steffes 🇱🇺 LUX2nd of 52 aged 40-44 | 40-44 | 1:05:27 | 9:32 | 30:04 | 31:38 | 3:50 | 3:56 | 3:35 | 4:32 | 3:23 | 4:15 | 1:44 | 4:11 | 6:02 |
| 21 | Fabian Schuster 🇦🇹 AUT7th of 118 aged 30-34 | 30-34 | 1:05:31 | 9:36 | 31:30 | 30:03 | 4:04 | 4:09 | 3:46 | 4:21 | 3:17 | 4:23 | 2:06 | 3:14 | 4:47 |
| 22 | Andrii Mazur 🇺🇦 UKR8th of 118 aged 30-34 | 30-34 | 1:05:36 | 9:41 | 32:21 | 28:51 | 4:28 | 3:57 | 3:35 | 4:19 | 3:29 | 4:13 | 1:33 | 3:17 | 4:28 |
| 23 | Artur Eisenbraun 🇩🇪 GER3rd of 52 aged 40-44 | 40-44 | 1:06:00 | 10:05 | 31:31 | 30:21 | 4:13 | 3:59 | 3:19 | 3:54 | 3:14 | 4:26 | 1:33 | 4:00 | 5:56 |
| 24 | Dominic Call 🇩🇪 GER7th of 100 aged 25-29 | 25-29 | 1:06:06 | 10:11 | 31:35 | 30:17 | 4:18 | 3:51 | 3:24 | 4:48 | 3:07 | 4:07 | 1:28 | 3:13 | 6:19 |
| 25 | Greg Bradley 🇮🇪 IRL5th of 102 aged 35-39 | 35-39 | 1:06:19 | 10:24 | 32:18 | 29:41 | 4:24 | 4:11 | 3:24 | 5:02 | 3:27 | 4:26 | 1:32 | 3:32 | 4:07 |
| 26 | Dennis Musche 🇩🇪 GER8th of 100 aged 25-29 | 25-29 | 1:06:24 | 10:29 | 32:05 | 30:09 | 4:16 | 4:06 | 2:58 | 4:00 | 3:39 | 4:24 | 1:26 | 4:12 | 5:24 |
| 27 | Mathéo Vincent 🇫🇷 FRA3rd of 45 aged 16-24 | 16-24 | 1:06:42 | 10:47 | 33:28 | 29:02 | 4:17 | 4:05 | 3:21 | 3:41 | 3:02 | 4:19 | 1:37 | 4:05 | 4:52 |
| 28 | Tim Schroer 🇩🇪 GER9th of 118 aged 30-34 | 30-34 | 1:06:51 | 10:56 | 30:30 | 31:13 | 5:11 | 4:14 | 3:15 | 4:21 | 4:23 | 4:35 | 1:55 | 4:01 | 4:29 |
| 29 | Alexander Steland 🇩🇪 GER10th of 118 aged 30-34 | 30-34 | 1:06:56 | 11:01 | 31:29 | 30:27 | 5:04 | 4:01 | 3:52 | 4:14 | 3:05 | 4:27 | 1:19 | 4:25 | 5:04 |
| 30 | Noel-Etienne Prietzel 🇩🇪 GER4th of 45 aged 16-24 | 16-24 | 1:07:13 | 11:18 | 33:02 | 29:20 | 4:56 | 4:03 | 2:47 | 4:42 | 3:44 | 4:19 | 1:36 | 3:29 | 4:40 |
| 31 | Michael Heinrichshofen 🇩🇪 GER11th of 118 aged 30-34 | 30-34 | 1:07:19 | 11:24 | 31:43 | 31:28 | 4:11 | 3:58 | 3:19 | 5:17 | 3:40 | 4:17 | 1:35 | 4:17 | 5:05 |
| 32 | Patrick Treiber-Grahm 🇩🇪 GER12th of 118 aged 30-34 | 30-34 | 1:07:41 | 11:46 | 33:37 | 29:37 | 4:32 | 3:57 | 3:39 | 4:07 | 3:55 | 4:11 | 1:33 | 3:40 | 4:35 |
| 33 | Houssem Saidi 🇨🇭 SUI13th of 118 aged 30-34 | 30-34 | 1:07:46 | 11:51 | 34:28 | 28:56 | 4:27 | 3:53 | 3:18 | 4:20 | 3:36 | 4:14 | 1:48 | 3:17 | 4:30 |
| 34 | Hugo dos Santos 🇫🇷 FRA14th of 118 aged 30-34 | 30-34 | 1:07:46 | 11:51 | 33:42 | 29:16 | 4:51 | 4:03 | 3:03 | 4:02 | 3:29 | 4:17 | 1:54 | 3:18 | 5:10 |
| 35 | Lukas Jochheim 🇩🇪 GER9th of 100 aged 25-29 | 25-29 | 1:07:47 | 11:52 | 32:18 | 31:23 | 4:10 | 4:04 | 3:18 | 3:29 | 3:16 | 4:21 | 1:35 | 4:09 | 7:11 |
| 36 | Mathieu Gschwandtner 🇦🇹 AUT10th of 100 aged 25-29 | 25-29 | 1:08:04 | 12:09 | 33:24 | 30:16 | 4:29 | 4:03 | 3:20 | 4:22 | 2:52 | 4:22 | 1:33 | 3:38 | 6:06 |
| 37 | Maximilian Kunert 🇩🇪 GER11th of 100 aged 25-29 | 25-29 | 1:08:05 | 12:10 | 33:12 | 30:19 | 4:39 | 3:59 | 3:52 | 4:13 | 3:20 | 4:18 | 1:40 | 3:53 | 5:04 |
| 38 | Marc Dörfer 🇩🇪 GER6th of 102 aged 35-39 | 35-39 | 1:08:12 | 12:17 | 33:14 | 30:27 | 4:36 | 4:05 | 3:24 | 4:00 | 3:07 | 4:24 | 1:45 | 3:27 | 6:15 |
| 39 | Jochen Binder 🇩🇪 GER1st of 14 aged 50-54 | 50-54 | 1:08:15 | 12:20 | 35:22 | 28:17 | 4:41 | 4:00 | 3:12 | 3:54 | 3:02 | 4:21 | 1:28 | 3:10 | 5:10 |
| 40 | Niels Kinget 🇧🇪 BEL5th of 45 aged 16-24 | 16-24 | 1:08:16 | 12:21 | 37:04 | 25:18 | 5:56 | 3:50 | 2:01 | 3:09 | 2:38 | 4:11 | 1:30 | 3:52 | 4:07 |
| 41 | Dominic Kollien 🇩🇪 GER7th of 102 aged 35-39 | 35-39 | 1:08:25 | 12:30 | 33:47 | 30:04 | 4:39 | 4:06 | 2:56 | 3:48 | 3:44 | 4:18 | 1:41 | 3:59 | 5:32 |
| 42 | Edgar Ruche 🇫🇷 FRA12th of 100 aged 25-29 | 25-29 | 1:08:37 | 12:42 | 34:18 | 29:08 | 5:17 | 4:01 | 2:53 | 4:14 | 3:56 | 4:17 | 1:27 | 3:45 | 4:35 |
| 43 | Paul Schramm 🇩🇪 GER8th of 102 aged 35-39 | 35-39 | 1:08:39 | 12:44 | 33:46 | 30:12 | 4:44 | 3:51 | 2:47 | 4:30 | 3:48 | 4:17 | 1:41 | 4:14 | 5:04 |
| 44 | Michael Vogl 🇩🇪 GER15th of 118 aged 30-34 | 30-34 | 1:08:51 | 12:56 | 34:28 | 29:25 | 5:03 | 4:11 | 3:01 | 3:55 | 3:43 | 4:14 | 1:26 | 4:13 | 4:42 |
| 45 | Peter Schreiber 🇩🇪 GER9th of 102 aged 35-39 | 35-39 | 1:08:54 | 12:59 | 34:51 | 29:38 | 4:28 | 3:59 | 3:07 | 4:08 | 4:02 | 4:13 | 1:36 | 4:13 | 4:20 |
| 46 | Jan van Binsbergen 🇳🇱 NED6th of 45 aged 16-24 | 16-24 | 1:08:54 | 12:59 | 31:48 | 32:37 | 4:33 | 4:07 | 3:32 | 5:04 | 4:13 | 4:27 | 1:46 | 3:32 | 5:56 |
| 47 | Dirk Schulke 🇩🇪 GER10th of 102 aged 35-39 | 35-39 | 1:08:56 | 13:01 | 32:31 | 30:58 | 5:33 | 4:01 | 4:06 | 4:30 | 2:56 | 4:26 | 2:17 | 4:00 | 4:42 |
| 48 | Michael Kessler 🇩🇪 GER11th of 102 aged 35-39 | 35-39 | 1:09:17 | 13:22 | 32:41 | 31:52 | 4:49 | 4:06 | 3:21 | 4:34 | 4:12 | 4:29 | 2:05 | 4:03 | 5:02 |
| 49 | Leon Samuel Berfelde 🇩🇪 GER13th of 100 aged 25-29 | 25-29 | 1:09:18 | 13:23 | 33:29 | 31:02 | 4:52 | 4:09 | 3:26 | 4:27 | 4:11 | 4:42 | 1:33 | 3:55 | 4:39 |
| 50 | Jonas Rahm 🇩🇪 GER14th of 100 aged 25-29 | 25-29 | 1:09:39 | 13:44 | 33:54 | 31:34 | 4:16 | 3:52 | 3:36 | 4:03 | 3:59 | 4:07 | 1:33 | 5:00 | 5:24 |
| 51 | Curtis Evelyn 🇬🇧 GBR15th of 100 aged 25-29 | 25-29 | 1:09:40 | 13:45 | 31:03 | 33:43 | 4:59 | 4:05 | 3:14 | 4:53 | 3:55 | 4:37 | 1:53 | 4:24 | 6:42 |
| 52 | Nathan Beuf 🇫🇷 FRA16th of 100 aged 25-29 | 25-29 | 1:09:41 | 13:46 | 34:39 | 30:17 | 4:50 | 3:55 | 3:32 | 4:25 | 3:31 | 4:25 | 1:52 | 3:41 | 4:56 |
| 53 | Jimmy Blettner 🇫🇷 FRA16th of 118 aged 30-34 | 30-34 | 1:09:43 | 13:48 | 32:42 | 32:33 | 4:32 | 4:23 | 3:43 | 4:21 | 4:43 | 4:27 | 1:50 | 4:02 | 5:04 |
| 54 | Tim Ufermann 🇩🇪 GER17th of 100 aged 25-29 | 25-29 | 1:09:47 | 13:52 | 33:44 | 31:45 | 4:21 | 4:07 | 3:35 | 4:06 | 3:47 | 4:19 | 2:15 | 4:19 | 5:17 |
| 55 | Daniel Wawrzaszek 🇩🇪 GER18th of 100 aged 25-29 | 25-29 | 1:09:51 | 13:56 | 35:35 | 29:12 | 5:08 | 3:52 | 2:30 | 3:57 | 3:55 | 4:13 | 1:39 | 4:04 | 5:02 |
| 56 | Christopher Nußbaum 🇩🇪 GER17th of 118 aged 30-34 | 30-34 | 1:09:56 | 14:01 | 34:24 | 31:03 | 4:33 | 4:11 | 3:21 | 4:37 | 3:18 | 4:22 | 1:58 | 4:18 | 4:58 |
| 57 | Yannik Wasmuth 🇩🇪 GER18th of 118 aged 30-34 | 30-34 | 1:10:09 | 14:14 | 30:48 | 34:36 | 4:48 | 4:16 | 3:52 | 4:45 | 4:55 | 4:37 | 2:04 | 4:50 | 5:17 |
| 58 | Ilja Heinzmann 🇨🇭 SUI7th of 45 aged 16-24 | 16-24 | 1:10:12 | 14:17 | 34:40 | 31:10 | 4:25 | 4:01 | 3:22 | 4:26 | 3:57 | 4:04 | 1:58 | 4:10 | 5:12 |
| 59 | Christian Bradler 🇩🇪 GER19th of 118 aged 30-34 | 30-34 | 1:10:14 | 14:19 | 33:43 | 31:32 | 5:04 | 3:49 | 3:09 | 4:15 | 3:49 | 4:17 | 1:39 | 4:36 | 5:58 |
| 60 | Tim Pendzich 🇩🇪 GER20th of 118 aged 30-34 | 30-34 | 1:10:15 | 14:20 | 33:56 | 31:57 | 4:27 | 4:15 | 3:36 | 4:23 | 3:25 | 4:28 | 1:52 | 3:59 | 5:59 |
| 61 | Artur Pauls 🇩🇪 GER21st of 118 aged 30-34 | 30-34 | 1:10:17 | 14:22 | 33:05 | 32:48 | 4:29 | 3:43 | 3:35 | 4:18 | 4:06 | 4:09 | 2:06 | 4:07 | 6:44 |
| 62 | Safouane Bazine 🇹🇳 TUN12th of 102 aged 35-39 | 35-39 | 1:10:26 | 14:31 | 33:59 | 31:52 | 4:40 | 3:59 | 3:21 | 5:36 | 3:23 | 4:13 | 2:08 | 4:13 | 4:59 |
| 63 | Andreas Fruhmann 🇩🇪 GER1st of 17 aged 45-49 | 45-49 | 1:10:38 | 14:43 | 32:27 | 33:27 | 4:48 | 4:04 | 4:49 | 4:51 | 3:33 | 4:25 | 1:48 | 3:40 | 6:17 |
| 64 | Kristjan Gläßel 🇩🇪 GER19th of 100 aged 25-29 | 25-29 | 1:10:55 | 15:00 | 34:11 | 31:52 | 4:56 | 4:05 | 3:23 | 5:10 | 3:49 | 4:19 | 2:02 | 4:06 | 4:58 |
| 65 | Moritz Gisy 🇩🇪 GER20th of 100 aged 25-29 | 25-29 | 1:11:07 | 15:12 | 36:50 | 29:48 | 4:34 | 4:03 | 2:42 | 3:50 | 3:53 | 4:07 | 1:28 | 4:19 | 5:26 |
| 66 | Kaj Jeziorski 🇩🇪 GER22nd of 118 aged 30-34 | 30-34 | 1:11:07 | 15:12 | 35:35 | 30:32 | 5:05 | 4:00 | 3:53 | 4:15 | 3:48 | 4:17 | 1:35 | 3:12 | 5:32 |
| 67 | Maximilian Zerwas 🇩🇪 GER23rd of 118 aged 30-34 | 30-34 | 1:11:07 | 15:12 | 34:49 | 31:12 | 5:10 | 4:05 | 3:28 | 4:07 | 3:58 | 4:25 | 1:41 | 4:18 | 5:10 |
| 68 | Jamie Forman 🇬🇧 GBR4th of 52 aged 40-44 | 40-44 | 1:11:09 | 15:14 | 32:35 | 34:23 | 4:15 | 3:49 | 3:09 | 4:38 | 4:42 | 4:29 | 2:07 | 4:56 | 6:33 |
| 69 | Martial Engelmann 🇩🇪 GER21st of 100 aged 25-29 | 25-29 | 1:11:11 | 15:16 | 34:58 | 32:06 | 4:12 | 4:08 | 3:34 | 3:51 | 3:40 | 4:18 | 1:40 | 4:41 | 6:14 |
| 70 | Alexander Romanov 🇩🇪 GER24th of 118 aged 30-34 | 30-34 | 1:11:17 | 15:22 | 36:39 | 29:26 | 5:16 | 3:59 | 2:40 | 4:42 | 3:14 | 4:06 | 1:31 | 4:00 | 5:14 |
| 71 | Justus Thielen 🇩🇪 GER22nd of 100 aged 25-29 | 25-29 | 1:11:17 | 15:22 | 34:14 | 32:25 | 4:41 | 4:05 | 3:21 | 4:27 | 3:30 | 4:13 | 1:29 | 4:13 | 7:07 |
| 72 | Fabian Scheidweiler 🇩🇪 GER25th of 118 aged 30-34 | 30-34 | 1:11:19 | 15:24 | 36:01 | 30:33 | 4:48 | 3:58 | 3:23 | 4:37 | 3:45 | 4:19 | 1:38 | 4:03 | 4:50 |
| 73 | Jan-Peer Martins 🇩🇪 GER23rd of 100 aged 25-29 | 25-29 | 1:11:22 | 15:27 | 33:14 | 33:35 | 4:37 | 4:14 | 3:30 | 4:26 | 4:21 | 4:37 | 1:24 | 5:25 | 5:38 |
| 74 | Dennis Konrad-Werner 🇩🇪 GER5th of 52 aged 40-44 | 40-44 | 1:11:30 | 15:35 | 37:18 | 28:57 | 5:20 | 3:50 | 2:37 | 4:17 | 3:46 | 4:12 | 1:30 | 4:06 | 4:39 |
| 75 | Matthias Fischer 🇩🇪 GER26th of 118 aged 30-34 | 30-34 | 1:11:32 | 15:37 | 36:40 | 29:43 | 5:12 | 4:01 | 3:46 | 4:06 | 3:24 | 4:20 | 1:27 | 3:55 | 4:44 |
| 76 | Manuchi Gaudes 🇩🇪 GER8th of 45 aged 16-24 | 16-24 | 1:11:35 | 15:40 | 33:57 | 32:45 | 4:57 | 4:13 | 3:56 | 4:10 | 4:12 | 4:31 | 2:02 | 4:25 | 5:16 |
| 77 | Bjarne Rogall 🇩🇪 GER13th of 102 aged 35-39 | 35-39 | 1:11:36 | 15:41 | 33:22 | 33:44 | 4:35 | 4:02 | 3:48 | 4:28 | 4:17 | 4:29 | 1:57 | 4:39 | 6:04 |
| 78 | Nils Beem 🇩🇪 GER9th of 45 aged 16-24 | 16-24 | 1:11:39 | 15:44 | 31:52 | 35:26 | 4:26 | 4:13 | 4:21 | 4:48 | 5:20 | 4:28 | 1:56 | 4:45 | 5:35 |
| 79 | Fabian Bauer 🇩🇪 GER10th of 45 aged 16-24 | 16-24 | 1:11:41 | 15:46 | 34:52 | 32:23 | 4:30 | 4:12 | 3:51 | 4:19 | 4:52 | 4:23 | 1:11 | 4:41 | 4:54 |
| 80 | Brandon Hassan 🇮🇪 IRL24th of 100 aged 25-29 | 25-29 | 1:11:55 | 16:00 | 34:17 | 33:19 | 4:25 | 4:39 | 3:59 | 4:43 | 2:52 | 4:35 | 1:46 | 4:11 | 6:34 |
| 81 | Livio Tomba 🇫🇷 FRA11th of 45 aged 16-24 | 16-24 | 1:11:55 | 16:00 | 31:39 | 36:18 | 4:02 | 4:28 | 4:06 | 5:49 | 3:43 | 4:42 | 2:27 | 4:52 | 6:11 |
| 82 | Lukas Konstantin Haimayer 🇩🇪 GER12th of 45 aged 16-24 | 16-24 | 1:12:03 | 16:08 | 33:13 | 34:22 | 4:31 | 4:05 | 3:42 | 5:19 | 2:34 | 4:18 | 1:20 | 6:59 | 6:05 |
| 83 | Karl Dollinger 🇩🇪 GER27th of 118 aged 30-34 | 30-34 | 1:12:07 | 16:12 | 33:29 | 34:03 | 4:37 | 4:07 | 2:46 | 3:52 | 3:59 | 4:31 | 1:33 | 4:01 | 9:14 |
| 84 | Daniel Schloesser 🇩🇪 GER2nd of 17 aged 45-49 | 45-49 | 1:12:08 | 16:13 | 33:40 | 32:32 | 6:01 | 4:03 | 3:53 | 4:37 | 3:26 | 4:34 | 1:40 | 4:07 | 6:12 |
| 85 | Jan-Claas Dajka 🇩🇪 GER14th of 102 aged 35-39 | 35-39 | 1:12:13 | 16:18 | 36:59 | 30:44 | 4:36 | 3:57 | 3:21 | 4:27 | 3:53 | 4:19 | 1:43 | 3:51 | 5:13 |
| 86 | Philipp Müller 🇩🇪 GER6th of 52 aged 40-44 | 40-44 | 1:12:18 | 16:23 | 32:46 | 34:26 | 5:12 | 4:15 | 3:45 | 5:08 | 4:01 | 4:46 | 1:55 | 4:28 | 6:08 |
| 87 | Christian Liegmann 🇩🇪 GER28th of 118 aged 30-34 | 30-34 | 1:12:25 | 16:30 | 36:19 | 31:21 | 4:49 | 4:06 | 3:26 | 4:07 | 3:52 | 4:18 | 1:58 | 4:12 | 5:22 |
| 88 | Jann Kulik 🇩🇪 GER25th of 100 aged 25-29 | 25-29 | 1:12:31 | 16:36 | 32:41 | 34:50 | 5:04 | 4:24 | 4:02 | 4:59 | 4:35 | 4:38 | 2:08 | 4:50 | 5:14 |
| 89 | Niklas Zeuner 🇩🇪 GER29th of 118 aged 30-34 | 30-34 | 1:12:37 | 16:42 | 37:56 | 30:01 | 4:45 | 4:07 | 3:08 | 4:10 | 3:44 | 4:13 | 1:40 | 4:06 | 4:53 |
| 90 | Matthew Wigelsworth 🇬🇧 GBR26th of 100 aged 25-29 | 25-29 | 1:12:42 | 16:47 | 31:42 | 35:45 | 5:20 | 4:17 | 4:29 | 4:42 | 4:32 | 4:47 | 2:21 | 4:04 | 6:33 |
| 91 | Matthis Weis 🇩🇪 GER27th of 100 aged 25-29 | 25-29 | 1:12:48 | 16:53 | 35:07 | 32:56 | 4:48 | 4:08 | 3:31 | 4:57 | 3:58 | 4:27 | 1:40 | 4:19 | 5:56 |
| 92 | Jan Teuber 🇩🇪 GER28th of 100 aged 25-29 | 25-29 | 1:12:49 | 16:54 | 35:00 | 33:10 | 4:44 | 4:08 | 3:46 | 4:38 | 4:10 | 4:20 | 1:51 | 4:48 | 5:29 |
| 93 | Christoph Wiesinger 🇦🇹 AUT7th of 52 aged 40-44 | 40-44 | 1:12:51 | 16:56 | 34:02 | 33:58 | 4:56 | 4:06 | 3:34 | 5:09 | 3:56 | 4:29 | 1:56 | 4:34 | 6:14 |
| 94 | Jori Persico 🇫🇷 FRA15th of 102 aged 35-39 | 35-39 | 1:12:58 | 17:03 | 37:35 | 29:53 | 5:33 | 4:14 | 3:23 | 4:08 | 3:27 | 4:16 | 1:32 | 4:18 | 4:35 |
| 95 | Tobias Kampenga 🇩🇪 GER16th of 102 aged 35-39 | 35-39 | 1:13:01 | 17:06 | 35:51 | 32:15 | 4:58 | 4:10 | 3:11 | 4:14 | 3:23 | 4:30 | 1:28 | 4:06 | 7:13 |
| 96 | Jean-Mikael Desmarais 🇨🇦 CAN17th of 102 aged 35-39 | 35-39 | 1:13:03 | 17:08 | 34:53 | 32:20 | 5:54 | 4:04 | 4:10 | 5:04 | 3:33 | 4:32 | 1:41 | 3:46 | 5:30 |
| 97 | Kilian Siara 🇩🇪 GER30th of 118 aged 30-34 | 30-34 | 1:13:15 | 17:20 | 36:27 | 32:13 | 4:39 | 4:14 | 3:25 | 4:30 | 4:01 | 4:39 | 1:48 | 4:27 | 5:09 |
| 98 | Ivan Larkow 🇩🇪 GER8th of 52 aged 40-44 | 40-44 | 1:13:17 | 17:22 | 36:01 | 32:02 | 5:18 | 4:01 | 3:27 | 4:24 | 3:54 | 4:30 | 1:49 | 4:29 | 5:28 |
| 99 | Dario Dobrolevski 🇦🇹 AUT31st of 118 aged 30-34 | 30-34 | 1:13:24 | 17:29 | 36:59 | 31:30 | 5:01 | 4:24 | 3:28 | 4:06 | 3:41 | 4:45 | 1:39 | 4:29 | 4:58 |
| 100 | Lukas Rexer 🇩🇪 GER32nd of 118 aged 30-34 | 30-34 | 1:13:25 | 17:30 | 32:03 | 35:49 | 5:37 | 4:05 | 3:44 | 4:37 | 3:45 | 4:21 | 1:45 | 4:35 | 8:57 |
How to read
The place is among timed finishers in Pro 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.