FULL RESULTS
HYROX Cologne 2025 Results – Open Men
1,087 finishers. Winner Kieron White in 55:06; median 1:22:24.
| Rank | Athlete | Nat | Age group | Time | Run | Workout |
|---|---|---|---|---|---|---|
| 1 | Kieron White | 25-29 | 55:06 | — | 23:23 | |
| 2 | Benito Baez Ayala | 35-39 | 56:01 | — | 23:23 | |
| 3 | Alexis Bernier | 30-34 | 56:25 | — | 24:18 | |
| 4 | Markus Heinrich | 25-29 | 58:08 | — | 25:23 | |
| 5 | David Parkin | 35-39 | 58:12 | — | 24:54 | |
| 6 | Erlaitz Cano | 25-29 | 58:41 | — | 24:32 | |
| 7 | Ralf Ulmer | 30-34 | 59:23 | — | 27:50 | |
| 8 | Christian Jacobick | 35-39 | 59:26 | — | 24:52 | |
| 9 | Sean Walsh | 25-29 | 59:27 | — | 26:05 | |
| 10 | Jan Roggemann | 35-39 | 59:30 | — | 26:09 | |
| 11 | Tom Vince | 30-34 | 59:53 | — | 26:50 | |
| 12 | Felix Swiczinsky | 40-44 | 1:00:06 | — | 26:22 | |
| 13 | Pascal Schmitt | 30-34 | 1:00:35 | — | 26:57 | |
| 14 | Jascha Potthoff | 30-34 | 1:00:39 | — | 24:43 | |
| 15 | Callum Overton | 25-29 | 1:00:41 | — | 28:42 | |
| 16 | Pawel Müller | 40-44 | 1:00:48 | — | 25:11 | |
| 17 | Dominik Runge | 30-34 | 1:00:58 | — | 23:35 | |
| 18 | Torsten Reuter | 40-44 | 1:00:59 | — | 26:53 | |
| 19 | Alexandre Pilat | 35-39 | 1:01:02 | — | 25:15 | |
| 20 | Marcel Blank | 30-34 | 1:01:05 | — | 23:52 | |
| 21 | Dennis Stricker | 30-34 | 1:01:05 | — | 25:11 | |
| 22 | Lukas Jochheim | 25-29 | 1:01:05 | — | 26:45 | |
| 23 | Benjamin Adriani | 40-44 | 1:01:05 | — | 26:19 | |
| 24 | Patrick Martens | 35-39 | 1:01:13 | — | 26:36 | |
| 25 | Piran Asci | 30-34 | 1:01:30 | — | 26:37 | |
| 26 | Mike Schifferle | 50-54 | 1:01:40 | — | 27:34 | |
| 27 | Philipp Karg | 30-34 | 1:02:03 | — | 26:10 | |
| 28 | Jonas Schulze | 25-29 | 1:02:10 | — | 25:11 | |
| 29 | Artur Eisenbraun | 40-44 | 1:02:11 | — | 27:07 | |
| 30 | Nico Krackl | 35-39 | 1:02:13 | — | 27:02 | |
| 31 | Matthias Walter | 35-39 | 1:02:19 | — | 27:36 | |
| 32 | Tim Schroer | 30-34 | 1:02:34 | — | 26:00 | |
| 33 | Patrick Schreiner | 30-34 | 1:02:34 | — | 27:55 | |
| 34 | Pascal Hatz | 25-29 | 1:02:40 | — | 26:51 | |
| 35 | Johann Frank | 35-39 | 1:02:46 | — | 27:05 | |
| 36 | Kai Patalla | 30-34 | 1:02:54 | — | 27:39 | |
| 37 | Marco Kauschka | 25-29 | 1:03:05 | — | 27:23 | |
| 38 | Matij Mersch | 40-44 | 1:03:27 | — | 25:47 | |
| 39 | René Dau | 35-39 | 1:03:32 | — | 26:04 | |
| 40 | Adrian Probst | 30-34 | 1:03:38 | — | 30:02 | |
| 41 | Wouter Van Den Hoogenband | 25-29 | 1:03:40 | — | 27:50 | |
| 42 | Robin Soppa | 35-39 | 1:03:49 | — | 27:55 | |
| 43 | Moritz Bleyer | 30-34 | 1:03:52 | — | 23:06 | |
| 44 | Thomas Heider | 55-59 | 1:03:58 | — | 26:57 | |
| 45 | Björn Fugmann | 40-44 | 1:03:59 | — | 25:29 | |
| 46 | Oliver Tesch | 30-34 | 1:03:59 | — | 29:40 | |
| 47 | Tobias Schmitt | 25-29 | 1:04:03 | — | 27:01 | |
| 48 | Michele Stancanelli | 35-39 | 1:04:07 | — | 27:26 | |
| 49 | Matthias Bendler | 40-44 | 1:04:07 | — | 24:28 | |
| 50 | Alexander Wendling | 25-29 | 1:04:10 | — | 25:01 | |
| 51 | Adam Darbyshire | 30-34 | 1:04:15 | — | 27:12 | |
| 52 | Daniel Schloesser | 45-49 | 1:04:28 | — | 27:42 | |
| 53 | Patrick Gayer | 40-44 | 1:04:35 | — | 28:35 | |
| 54 | Maad Eleiwi | 25-29 | 1:04:50 | — | 26:14 | |
| 55 | Frank Reinhard | 45-49 | 1:04:53 | — | 27:55 | |
| 56 | Charalampos Kathidjiotis | 35-39 | 1:04:53 | — | 26:33 | |
| 57 | Malik Alfousseni | 16-24 | 1:04:58 | — | 27:32 | |
| 58 | Alexander Heine | 25-29 | 1:05:02 | — | 27:48 | |
| 59 | Philipp Wandl | 25-29 | 1:05:11 | — | 27:51 | |
| 60 | Redon Schmeitz | 25-29 | 1:05:11 | — | 29:17 | |
| 61 | Nils Reckemeier | 30-34 | 1:05:43 | — | 28:59 | |
| 62 | Lukas Dreger | 40-44 | 1:05:45 | — | 28:31 | |
| 63 | Christian Lindequist | 40-44 | 1:05:54 | — | 27:57 | |
| 64 | Tim Budemann | 16-24 | 1:05:57 | — | 28:56 | |
| 65 | Christoph Baum | 40-44 | 1:05:58 | — | 27:15 | |
| 66 | Gordon Schnepel | 40-44 | 1:06:00 | — | 25:19 | |
| 67 | Max Emde | 25-29 | 1:06:01 | — | 26:50 | |
| 68 | Dominique Horlbeck | 25-29 | 1:06:07 | — | 29:58 | |
| 69 | Tim Decker | 35-39 | 1:06:07 | — | 27:22 | |
| 70 | Daniel Everett | 25-29 | 1:06:17 | — | 26:33 | |
| 71 | Erik Pomp | 30-34 | 1:06:18 | — | 27:13 | |
| 72 | Anton Hülsey | 30-34 | 1:06:19 | — | 28:30 | |
| 73 | Tim Ufermann | 16-24 | 1:06:21 | — | 26:26 | |
| 74 | Jonas Baum | 30-34 | 1:06:37 | — | 26:16 | |
| 75 | Christopher Fliegel | 35-39 | 1:06:44 | — | 30:27 | |
| 76 | Tobias M. Walter | 40-44 | 1:06:46 | — | 27:31 | |
| 77 | Fabian Wesemann | 25-29 | 1:06:46 | — | 28:03 | |
| 78 | Kai Schramm | 35-39 | 1:06:46 | — | 29:37 | |
| 79 | Björn Fischer | 35-39 | 1:06:53 | — | 27:09 | |
| 80 | Glen Chareyre | 16-24 | 1:06:54 | — | 26:52 | |
| 81 | Conor Maguire | 16-24 | 1:06:58 | — | 33:35 | |
| 82 | Juan Manuel Rodríguez Quintana | 35-39 | 1:07:03 | — | 26:58 | |
| 83 | Marco Szostok | 35-39 | 1:07:07 | — | 28:46 | |
| 84 | Kelvin Burns | 30-34 | 1:07:08 | — | 28:17 | |
| 85 | Asim Latifi | 25-29 | 1:07:09 | — | 30:42 | |
| 86 | Brun Keller | 25-29 | 1:07:12 | — | 28:43 | |
| 87 | Clark Wells | 16-24 | 1:07:20 | — | 28:48 | |
| 88 | Christian Liegmann | 30-34 | 1:07:21 | — | 27:42 | |
| 89 | Edgar Ruche | 25-29 | 1:07:22 | — | 26:41 | |
| 90 | Maxime Fallot | 16-24 | 1:07:27 | — | 29:01 | |
| 91 | Jan Killing | 30-34 | 1:07:30 | — | 27:14 | |
| 92 | Neil Speaight | 45-49 | 1:07:35 | — | 31:42 | |
| 93 | Thomas Maschitzke | 30-34 | 1:07:37 | — | 30:14 | |
| 94 | Sebastian Eickenjäger | 35-39 | 1:07:38 | — | 25:42 | |
| 95 | Peter Roberts | 30-34 | 1:07:42 | — | 30:31 | |
| 96 | Jaco Van De Wijdeven | 25-29 | 1:07:47 | — | 31:02 | |
| 97 | Dennis Konrad | 25-29 | 1:07:48 | — | 29:01 | |
| 98 | Mario Zehnter | 40-44 | 1:07:49 | — | 30:34 | |
| 99 | Kilian Werner | 25-29 | 1:07:51 | — | 27:01 | |
| 100 | Jurgen Claassen | 50-54 | 1:07:55 | — | 32:15 | |
| 101 | Ignacio Bueno Talma | 35-39 | 1:07:57 | — | 30:17 | |
| 102 | Daniel Breinig | 30-34 | 1:08:03 | — | 30:14 | |
| 103 | Nicolas Heling | 30-34 | 1:08:03 | — | 29:14 | |
| 104 | Ethan Gilbert | 16-24 | 1:08:07 | — | 30:54 | |
| 105 | Gerrit Bockey | 25-29 | 1:08:10 | — | 30:33 | |
| 106 | Marco Hilke | 35-39 | 1:08:10 | — | 28:30 | |
| 107 | Loris Sevilla | 35-39 | 1:08:11 | — | 28:21 | |
| 108 | Manuel Albrecht | 35-39 | 1:08:17 | — | 31:02 | |
| 109 | Volker Schmitz | 50-54 | 1:08:19 | — | 30:46 | |
| 110 | Dennis Musche | 16-24 | 1:08:22 | — | 30:52 | |
| 111 | Ronny Gwerder | 30-34 | 1:08:24 | — | 27:21 | |
| 112 | Benjamin Zeller | 40-44 | 1:08:25 | — | 28:45 | |
| 113 | Thaddäus Jechalik | 16-24 | 1:08:27 | — | 28:48 | |
| 114 | William Dainty | 30-34 | 1:08:31 | — | 30:54 | |
| 115 | Tom Kistner | 35-39 | 1:08:33 | — | 29:50 | |
| 116 | Raphaël Savart | 25-29 | 1:08:34 | — | 27:25 | |
| 117 | Navin Schürmann | 30-34 | 1:08:35 | — | 28:06 | |
| 118 | Luke Moore | 16-24 | 1:08:40 | — | 27:48 | |
| 119 | Ben Scarfield | 30-34 | 1:08:45 | — | 29:48 | |
| 120 | Daniel Widjaja | 40-44 | 1:08:46 | — | 29:52 | |
| 121 | Lukas Schunkert | 30-34 | 1:08:48 | — | 30:52 | |
| 122 | Christian Bröring | 45-49 | 1:08:52 | — | 30:37 | |
| 123 | Luca Kruger | 25-29 | 1:08:53 | — | 25:12 | |
| 124 | Sascha Biela | 25-29 | 1:08:57 | — | 29:44 | |
| 125 | Jason Wienhold | 30-34 | 1:08:59 | — | 29:37 | |
| 126 | Peter Scheffler | 30-34 | 1:09:01 | — | 28:18 | |
| 127 | Björn Merker | 16-24 | 1:09:02 | — | 28:40 | |
| 128 | Mathieu Letellier | 35-39 | 1:09:02 | — | 26:06 | |
| 129 | Alexander Busch | 25-29 | 1:09:06 | — | 25:28 | |
| 130 | Alex Neuling | 45-49 | 1:09:06 | — | 28:26 | |
| 131 | Yves Eisenlohr | 25-29 | 1:09:10 | — | 30:33 | |
| 132 | Andreas Hippler | 50-54 | 1:09:11 | — | 30:13 | |
| 133 | Marco Theisen | 35-39 | 1:09:12 | — | 28:18 | |
| 134 | Farshad Jaqubi | 16-24 | 1:09:14 | — | 32:03 | |
| 135 | Björn Esser | 40-44 | 1:09:16 | — | 28:19 | |
| 136 | Jacob Werner | 50-54 | 1:09:18 | — | 28:01 | |
| 137 | Camiel Pesch | 25-29 | 1:09:19 | — | 31:02 | |
| 138 | Aksel Ryustem | 30-34 | 1:09:21 | — | 30:50 | |
| 139 | Jan-Niklas Lübke | 25-29 | 1:09:22 | — | 31:05 | |
| 140 | Nils Radix Beem | 16-24 | 1:09:26 | — | 32:56 | |
| 141 | Julian Höher | 25-29 | 1:09:27 | — | 29:03 | |
| 142 | Jonas Schumacher | 35-39 | 1:09:27 | — | 30:36 | |
| 143 | Walter Dorninger | 45-49 | 1:09:28 | — | 30:57 | |
| 144 | Oliver Hoena | 25-29 | 1:09:33 | — | 28:04 | |
| 145 | Florian Beck | 25-29 | 1:09:35 | — | 31:38 | |
| 146 | Pablo Calvo Iborra | 40-44 | 1:09:36 | — | 30:46 | |
| 147 | Thorben Schmidt | 30-34 | 1:09:37 | — | 30:14 | |
| 148 | François Feys | 45-49 | 1:09:38 | — | 29:46 | |
| 149 | Joffrey Eder | 30-34 | 1:09:39 | — | 28:40 | |
| 150 | Sascha Dewald | 40-44 | 1:09:43 | — | 29:58 | |
| 151 | Maximilian Pliet | 35-39 | 1:09:43 | — | 29:58 | |
| 152 | Tiago Cristo | 35-39 | 1:09:45 | — | 29:22 | |
| 153 | Herkules Reimann | 45-49 | 1:09:47 | — | 28:53 | |
| 154 | Jamie Bantleman | 30-34 | 1:09:52 | — | 26:45 | |
| 155 | Ulrich Aschenbroich | 45-49 | 1:10:01 | — | 28:31 | |
| 156 | Christian Friedrich | 30-34 | 1:10:03 | — | 31:19 | |
| 157 | Farid Ailam | 40-44 | 1:10:13 | — | 27:00 | |
| 158 | Thilo Batta | 45-49 | 1:10:13 | — | 32:21 | |
| 159 | Thorben Rehn | 35-39 | 1:10:19 | — | 29:34 | |
| 160 | Dominik Gartner | 35-39 | 1:10:20 | — | 29:35 | |
| 161 | Christophe Marion | 45-49 | 1:10:21 | — | 31:44 | |
| 162 | Andreas Fußwinkel | 30-34 | 1:10:23 | — | 30:18 | |
| 163 | Fabian Linden | 30-34 | 1:10:25 | — | 28:59 | |
| 164 | Christopher De Vries | 30-34 | 1:10:25 | — | 32:31 | |
| 165 | Tobias Weltin | 35-39 | 1:10:28 | — | 30:37 | |
| 166 | Franz Ehrhart | 35-39 | 1:10:31 | — | 28:34 | |
| 167 | Gisbert Petters | 40-44 | 1:10:31 | — | 30:27 | |
| 168 | Nils Müller | 35-39 | 1:10:33 | — | 32:08 | |
| 169 | Frank Rafferty | 16-24 | 1:10:33 | — | 35:41 | |
| 170 | Daniel Salbach | 35-39 | 1:10:36 | — | 32:33 | |
| 171 | Cornelius Krüger | 30-34 | 1:10:38 | — | 28:06 | |
| 172 | Robin Sander | 35-39 | 1:10:42 | — | 28:19 | |
| 173 | Jan Brinkmann | 35-39 | 1:10:44 | — | 31:52 | |
| 174 | Julien Wagner | 30-34 | 1:10:49 | — | 25:47 | |
| 175 | Daniel Bei Der Hake | 40-44 | 1:10:50 | — | 30:31 | |
| 176 | Lukas Bode | 35-39 | 1:10:53 | — | 28:05 | |
| 177 | Jannis Bönninger | 30-34 | 1:10:56 | — | 31:23 | |
| 178 | Thomas Sternecker | 30-34 | 1:11:01 | — | 28:58 | |
| 179 | Markus Michel | 30-34 | 1:11:02 | — | 30:27 | |
| 180 | Maximilian Thienel | 25-29 | 1:11:04 | — | 32:43 | |
| 181 | Jonas Groothus | 16-24 | 1:11:07 | — | 32:23 | |
| 182 | Jens Rechmann | 16-24 | 1:11:10 | — | 30:19 | |
| 183 | Eduard Koch | 40-44 | 1:11:14 | — | 28:26 | |
| 184 | Jann Kulik | 25-29 | 1:11:14 | — | 32:02 | |
| 185 | Tim Thiesbrummel | 35-39 | 1:11:14 | — | 27:09 | |
| 186 | Birger Sönnichsen | 40-44 | 1:11:15 | — | 30:08 | |
| 187 | Jacob Von Seydewitz | 16-24 | 1:11:17 | — | 32:43 | |
| 188 | Xi Chang | 30-34 | 1:11:19 | — | 30:41 | |
| 189 | Doncha Hogan | 50-54 | 1:11:19 | — | 32:17 | |
| 190 | Allan Beck | 25-29 | 1:11:20 | — | 33:42 | |
| 191 | Jack Newhouse | 30-34 | 1:11:20 | — | 31:31 | |
| 192 | Phil Pendt | 30-34 | 1:11:28 | — | 31:43 | |
| 193 | Ralph Fuhrholz | 16-24 | 1:11:28 | — | 28:28 | |
| 194 | Pascal Martz | 50-54 | 1:11:28 | — | 31:35 | |
| 195 | Stefan Ansorge | 35-39 | 1:11:30 | — | 28:43 | |
| 196 | Rene Beck | 45-49 | 1:11:32 | — | 30:40 | |
| 197 | Miguel Guter | 30-34 | 1:11:33 | — | 30:30 | |
| 198 | Doğukan Çetin | 25-29 | 1:11:35 | — | 29:18 | |
| 199 | Manuel Blank | 30-34 | 1:11:36 | — | 30:57 | |
| 200 | Tore Tjørnhom | 55-59 | 1:11:37 | — | 34:05 |