HYROX Hamburg 2025: Pro Doubles Men results

312 teams on 3 Oct 2025. Typical finish 1:12:11, fastest 10% under 58:52. Back to the analysis.

# Athlete Age Time Behind 1st Runs Stations Rox Ski Push Pull BBJ Row Carry Lunge WB
1 Dylan Scott, Rich Ryan 🇺🇸 USA1st of 95 aged 30-34 30-34 48:53 24:59 19:57 4:02 3:20 1:38 2:41 1:43 3:39 1:17 2:18 3:21
2 Peter Schiller, Florian Gast 🇩🇪 GER2nd of 95 aged 30-34 30-34 51:03 2:10 26:24 20:31 4:13 3:20 1:53 2:53 1:54 3:36 1:15 2:16 3:24
3 Louis Osselaer, Kwinten Verstuyft 🇧🇪 BEL1st of 64 aged 35-39 35-39 51:19 2:26 26:38 20:31 4:13 3:21 1:49 2:45 1:54 3:39 1:19 2:19 3:25
4 Marko Nicic, Alexis Bernier 🇷🇸 SRB3rd of 95 aged 30-34 30-34 51:19 2:26 25:46 21:26 4:12 3:22 1:58 3:04 2:01 3:38 1:19 2:37 3:27
5 Jeremy McConnell, Michael Stephens 🇬🇧 GBR2nd of 64 aged 35-39 35-39 51:56 3:03 26:31 21:16 4:14 3:15 1:34 2:53 2:37 3:41 1:25 2:27 3:24
6 Anders Resell, Erik Oscar Bøe 🇳🇴 NOR1st of 69 aged 25-29 25-29 53:11 4:18 26:53 21:51 4:31 3:27 1:43 2:45 2:35 3:52 1:17 2:28 3:44
7 Jannik Czapla, Nils Knuth 🇩🇪 GER1st of 29 aged 16-24 16-24 53:22 4:29 27:46 21:05 4:37 3:18 1:45 3:09 2:02 3:45 1:18 2:25 3:23
8 Niels Kinget, Joey Seetsen 🇧🇪 BEL2nd of 29 aged 16-24 16-24 54:03 5:10 28:25 21:08 4:34 3:22 1:50 3:04 1:54 3:43 1:19 2:19 3:37
9 George Martindale, Ryan Martindale 🇬🇧 GBR4th of 95 aged 30-34 30-34 54:14 5:21 27:58 21:34 4:47 3:27 1:55 3:12 1:43 3:33 1:19 2:26 3:59
10 Steffen Dachtler, Lukas Storath 🇩🇪 GER1st of 35 aged 40-44 40-44 54:50 5:57 28:39 21:46 4:29 3:30 1:57 3:19 2:08 3:50 1:10 2:30 3:22
11 Jan-Ole Martin, Ole Diringer 🇩🇪 GER2nd of 69 aged 25-29 25-29 55:19 6:26 28:43 22:08 4:32 3:26 2:00 3:02 2:03 3:52 1:30 2:40 3:35
12 John Fitzgerald, Jack Mullane 🇮🇪 IRL3rd of 69 aged 25-29 25-29 55:21 6:28 28:30 22:28 4:28 3:44 1:50 3:26 1:55 4:00 1:36 2:29 3:28
13 Mathias Lynge, Daniel Bejer 🇩🇰 DEN4th of 69 aged 25-29 25-29 55:28 6:35 29:21 21:28 4:43 3:22 1:35 3:00 2:10 3:54 1:26 2:33 3:28
14 Joshua Wichtrup, Bo Jorma Höck 🇩🇪 GER5th of 95 aged 30-34 30-34 55:33 6:40 29:42 21:04 4:51 3:22 1:45 2:53 1:47 3:44 1:29 2:32 3:32
15 PIran Asci, Gabriel Lichtenstein 🇩🇪 GER6th of 95 aged 30-34 30-34 55:39 6:46 28:46 22:28 4:30 3:35 2:07 3:22 2:04 4:01 1:21 2:23 3:35
16 Nicolas Paquay, Julien Boistaud 🇫🇷 FRA7th of 95 aged 30-34 30-34 56:07 7:14 28:47 22:50 4:36 3:33 2:12 3:34 2:12 3:51 1:26 2:31 3:31
17 Mikkel Kühne Larsen, Mathias Jul Alberg 🇩🇰 DEN5th of 69 aged 25-29 25-29 57:18 8:25 28:54 23:30 5:00 3:28 2:01 3:16 2:28 4:00 1:25 3:07 3:45
18 Patrick Benecke, Rune Dallmann 🇩🇪 GER3rd of 64 aged 35-39 35-39 57:38 8:45 29:14 23:51 4:35 3:31 2:09 3:39 2:08 3:47 1:33 3:04 4:00
19 Michael Bartsch, Timo Fraider 🇩🇪 GER8th of 95 aged 30-34 30-34 57:42 8:49 30:55 21:57 4:55 3:32 1:42 3:16 1:45 3:50 1:19 2:54 3:39
20 Daniel Stoksbjerg, Frederik Jensen 🇩🇰 DEN6th of 69 aged 25-29 25-29 57:45 8:52 29:35 23:28 4:48 3:35 2:22 3:32 2:08 3:59 1:37 2:45 3:30
21 Brendan Barclay, Max Swindells 🇬🇧 GBR9th of 95 aged 30-34 30-34 58:00 9:07 29:29 23:38 4:58 3:30 2:11 3:21 2:30 4:02 1:16 2:49 3:59
22 Leon Lücke, Daniel Benz 🇩🇪 GER7th of 69 aged 25-29 25-29 58:03 9:10 29:09 24:22 4:38 3:41 1:49 3:13 2:15 4:32 1:34 3:32 3:46
23 Ludovic Chevalier, Alain Etienne 🇧🇪 BEL10th of 95 aged 30-34 30-34 58:04 9:11 30:33 22:45 4:52 3:43 1:55 3:03 2:12 4:02 1:20 2:52 3:38
24 Marnix Kaspers, Dominic Kiewiet 🇳🇱 NED2nd of 35 aged 40-44 40-44 58:07 9:14 29:33 23:45 4:55 3:39 2:00 3:34 2:14 4:09 1:30 2:59 3:40
25 Jannik Jensen, Bo Jorma Höck 🇩🇪 GER11th of 95 aged 30-34 30-34 58:21 9:28 30:42 22:38 5:05 3:30 2:20 3:20 2:06 3:55 1:30 2:39 3:18
26 Björn Fugmann, Thore Kuenzel 🇩🇪 GER3rd of 35 aged 40-44 40-44 58:21 9:28 30:04 23:39 4:43 3:29 2:19 3:40 2:19 3:48 1:23 2:54 3:47
27 Dennis Dekker, Jordi Balk 🇳🇱 NED12th of 95 aged 30-34 30-34 58:24 9:31 28:32 24:37 5:20 3:46 2:00 3:40 2:28 4:10 1:45 2:55 3:53
28 Guido van Els, Paul de Wit 🇳🇱 NED4th of 35 aged 40-44 40-44 58:31 9:38 29:57 23:25 5:14 3:40 1:53 3:38 2:10 4:09 1:22 2:54 3:39
29 Felix Bierwirth, Gramos Halilaj 🇨🇭 SUI13th of 95 aged 30-34 30-34 58:37 9:44 32:57 20:36 5:09 3:27 1:51 2:52 — 3:47 1:18 2:11 3:44
30 Marcel Cierpial, Maximilian Beverburg 🇩🇪 GER14th of 95 aged 30-34 30-34 58:46 9:53 31:15 22:31 5:03 3:26 2:08 3:30 2:10 3:46 1:28 2:37 3:26
31 Benjamin Burkhardt, Marcel Winkler 🇩🇪 GER15th of 95 aged 30-34 30-34 58:47 9:54 30:28 23:31 4:51 3:35 1:51 3:36 2:10 3:59 1:33 2:51 3:56
32 Tim Schwenk, Filip Nikolic 🇩🇪 GER16th of 95 aged 30-34 30-34 58:51 9:58 29:55 24:06 4:55 3:26 1:57 3:12 2:57 4:07 1:23 3:25 3:39
33 Piotr Tomczyk, Lukas Kleczek 🇵🇱 POL4th of 64 aged 35-39 35-39 58:57 10:04 29:02 25:01 4:59 3:41 2:32 3:40 2:29 3:57 1:24 3:15 4:03
34 Carl Emil Brøgger Berdichevsky, Johan Brøgger Berdichevsky 🇩🇰 DEN3rd of 29 aged 16-24 16-24 59:22 10:29 28:05 26:38 4:43 3:56 2:17 4:48 2:09 4:28 1:20 3:13 4:27
35 Mads Kristensen, Pierre Axelsen 🇩🇰 DEN5th of 64 aged 35-39 35-39 59:25 10:32 31:16 23:09 5:04 3:37 1:50 3:26 2:17 3:52 1:20 3:18 3:29
36 Benjamin Neumann, Patrick Schreiner 🇩🇪 GER6th of 64 aged 35-39 35-39 59:27 10:34 29:28 24:57 5:06 3:37 2:20 3:53 2:39 4:02 1:26 3:27 3:33
37 Elliot Vandeleene, Jules Geskens 🇧🇪 BEL4th of 29 aged 16-24 16-24 59:34 10:41 29:47 24:49 5:03 3:46 2:21 4:12 2:32 4:08 1:17 2:42 3:51
38 Noel Nagel, Karl Feldmer 🇩🇪 GER8th of 69 aged 25-29 25-29 59:38 10:45 32:07 22:28 5:07 3:28 1:56 3:27 2:24 3:53 1:33 2:24 3:23
39 Jan Roggemann, Christian Vieten 🇩🇪 GER7th of 64 aged 35-39 35-39 59:45 10:52 30:25 24:26 4:58 3:33 2:19 4:03 2:21 3:57 1:33 3:08 3:32
40 Alexandre Carpentier, Xavier Gautier 🇫🇷 FRA5th of 35 aged 40-44 40-44 1:00:21 11:28 30:29 24:55 5:02 3:46 1:57 3:36 2:48 4:11 1:30 3:08 3:59
41 Jordi Walder, Jim Walder 🇩🇪 GER9th of 69 aged 25-29 25-29 1:00:28 11:35 31:11 23:43 5:38 3:31 2:04 3:30 2:30 4:03 1:27 2:28 4:10
42 Maik Techel, Mika Jagdmann 🇩🇪 GER10th of 69 aged 25-29 25-29 1:00:28 11:35 30:02 25:23 5:07 3:30 2:43 3:45 2:31 4:01 1:27 3:38 3:48
43 Mikkel Lynge Dybdahl, Magnus Holmelund Nymand 🇩🇰 DEN17th of 95 aged 30-34 30-34 1:00:30 11:37 32:18 22:55 5:22 3:30 1:58 3:18 2:28 3:49 1:23 2:48 3:41
44 Marco Hilke, Tim Decker 🇩🇪 GER8th of 64 aged 35-39 35-39 1:00:34 11:41 31:08 24:35 4:54 3:31 2:28 3:40 2:09 4:05 1:25 3:30 3:47
45 Maximilian Eschke, Felix Westphal 🇩🇪 GER18th of 95 aged 30-34 30-34 1:00:34 11:41 30:06 25:45 4:48 3:35 2:09 3:38 2:50 4:06 1:45 2:54 4:48
46 Dennis Musche, Noel Prietzel 🇩🇪 GER5th of 29 aged 16-24 16-24 1:00:37 11:44 31:05 24:33 5:04 3:34 2:10 3:40 2:41 4:05 1:34 3:09 3:40
47 Tom Jurga, Jan-Niklas Lübke 🇩🇪 GER6th of 29 aged 16-24 16-24 1:00:44 11:51 31:00 24:33 5:14 3:49 2:07 4:03 2:09 4:09 1:29 3:08 3:39
48 Rainer Winninger, Walter Dorninger 🇦🇹 AUT1st of 13 aged 45-49 45-49 1:00:45 11:52 30:44 25:07 4:59 3:31 2:42 3:42 2:11 4:10 1:17 3:25 4:09
49 Manuel Jasny, Manuel Thiel 🇩🇪 GER9th of 64 aged 35-39 35-39 1:01:23 12:30 31:07 25:05 5:16 3:34 2:24 3:38 2:54 3:53 1:34 3:25 3:43
50 Mathis Wriedt, Bosse Mildner 🇩🇪 GER7th of 29 aged 16-24 16-24 1:01:36 12:43 31:40 24:41 5:18 3:48 2:16 3:46 2:33 4:03 1:19 2:55 4:01
51 Leon Fock, Lauritz Dreeßen 🇩🇪 GER11th of 69 aged 25-29 25-29 1:01:41 12:48 31:09 25:10 5:26 3:32 2:34 3:48 2:16 4:02 1:31 3:15 4:12
52 Philipp Müller, Maik Schindler 🇩🇪 GER6th of 35 aged 40-44 40-44 1:01:54 13:01 30:57 25:37 5:26 3:34 2:50 3:45 2:38 4:15 1:26 3:12 3:57
53 Ramy Peuker, Tarek Ibrahim 🇩🇪 GER7th of 35 aged 40-44 40-44 1:01:54 13:01 30:22 26:22 5:14 3:32 2:15 4:12 3:05 4:09 1:38 3:04 4:27
54 Tom Schmidt, Michel Bornhorst 🇩🇪 GER12th of 69 aged 25-29 25-29 1:02:08 13:15 31:28 24:46 5:56 3:37 2:16 3:51 2:32 4:07 1:28 2:52 4:03
55 Benjamin Boehmer, Valentin Beaujean 🇿🇦 RSA19th of 95 aged 30-34 30-34 1:02:16 13:23 32:46 24:04 5:31 3:44 2:04 2:59 3:12 4:00 1:29 2:58 3:38
56 Alexander Meisolle, Lukas Jochheim 🇩🇪 GER20th of 95 aged 30-34 30-34 1:02:19 13:26 31:22 25:47 5:15 3:32 2:09 4:25 2:52 4:12 1:31 2:46 4:20
57 Jonas Thoben, Andrej Benner 🇩🇪 GER21st of 95 aged 30-34 30-34 1:02:45 13:52 33:43 23:28 5:38 3:31 2:05 3:23 2:15 4:04 1:19 3:00 3:51
58 Michel Dapper, Jonas Fischer 🇩🇪 GER13th of 69 aged 25-29 25-29 1:03:02 14:09 32:41 24:53 5:32 3:39 2:16 4:00 1:59 4:10 1:35 3:27 3:47
59 Eric Lampe, Danny Kusch 🇩🇪 GER10th of 64 aged 35-39 35-39 1:03:13 14:20 33:10 24:38 5:29 3:39 2:20 3:56 2:17 4:03 1:34 2:55 3:54
60 David Neidlinger, Max Anossow 🇩🇪 GER14th of 69 aged 25-29 25-29 1:03:25 14:32 32:12 26:07 5:10 3:34 2:30 4:16 2:39 4:15 1:41 3:29 3:43
61 Petter Mildner, Bosse Mildner 🇩🇪 GER15th of 69 aged 25-29 25-29 1:03:30 14:37 34:05 23:29 6:01 3:48 1:47 3:26 2:18 4:10 1:17 2:56 3:47
62 Tom Kistner, Swen Rest 🇩🇪 GER11th of 64 aged 35-39 35-39 1:03:38 14:45 32:35 25:54 5:13 3:20 2:03 4:56 2:26 4:11 1:39 3:19 4:00
63 Kevin Kaderka, David Fischer 🇩🇪 GER8th of 35 aged 40-44 40-44 1:03:43 14:50 32:24 26:07 5:15 3:47 2:18 4:16 2:31 4:17 1:29 3:34 3:55
64 Miká Hamann, Janick Niederberger 🇩🇪 GER8th of 29 aged 16-24 16-24 1:03:45 14:52 31:08 27:34 5:07 3:25 2:32 4:24 3:11 4:07 1:35 3:45 4:35
65 Björn Fischer, Christoph Masannek 🇩🇪 GER12th of 64 aged 35-39 35-39 1:03:52 14:59 33:18 25:00 5:38 3:37 2:06 4:38 2:16 4:00 1:41 3:00 3:42
66 Marco Motschenbacher, Julian Schmitt 🇩🇪 GER22nd of 95 aged 30-34 30-34 1:03:59 15:06 35:18 23:07 5:39 3:45 1:50 3:27 1:58 4:06 1:26 3:03 3:32
67 Denis Holdschick, Christian Dingeldey 🇩🇪 GER23rd of 95 aged 30-34 30-34 1:04:37 15:44 32:25 26:40 5:36 3:39 2:19 3:57 2:56 4:18 1:37 3:51 4:03
68 Christian Ophoven, Niklas Oppermann 🇩🇪 GER24th of 95 aged 30-34 30-34 1:04:49 15:56 34:45 24:31 5:38 3:44 2:12 3:40 2:12 4:12 1:36 3:06 3:49
69 Lasse Bansmann, Eike Möller 🇩🇪 GER16th of 69 aged 25-29 25-29 1:04:54 16:01 32:05 27:24 5:29 3:27 2:03 3:31 2:29 3:57 4:28 3:36 3:53
70 Henrik-Alexander Cammin, Max Degenhardt 🇩🇪 GER25th of 95 aged 30-34 30-34 1:05:02 16:09 32:16 27:08 5:41 3:40 2:09 3:36 3:14 4:06 1:42 4:12 4:29
71 Florian Rose, Christian Bartsch 🇩🇪 GER2nd of 13 aged 45-49 45-49 1:05:04 16:11 34:14 25:21 5:32 3:38 2:10 3:24 3:08 4:03 1:44 3:16 3:58
72 Kai Wohltmann, Philip Wahle 🇩🇪 GER26th of 95 aged 30-34 30-34 1:05:09 16:16 34:03 25:24 5:47 4:01 2:04 4:11 2:23 4:16 1:25 3:03 4:01
73 Karsten Ronge, Kay Bents-Hornig 🇩🇪 GER27th of 95 aged 30-34 30-34 1:05:14 16:21 34:11 25:24 5:44 3:36 2:25 3:37 3:01 3:51 1:35 3:17 4:02
74 Luca Gerken, Philipp Donschen 🇩🇪 GER17th of 69 aged 25-29 25-29 1:05:19 16:26 32:59 26:04 6:20 3:39 2:27 4:13 2:47 4:18 1:29 3:12 3:59
75 Jonathan van de Loo, Felix Oelschläger 🇩🇪 GER28th of 95 aged 30-34 30-34 1:05:20 16:27 33:28 25:54 6:02 3:35 2:21 3:45 2:48 4:14 1:39 3:13 4:19
76 Kenneth Nilausen, Martin Lerner 🇩🇰 DEN3rd of 13 aged 45-49 45-49 1:05:26 16:33 34:46 25:15 5:30 3:42 2:02 4:22 1:55 4:08 1:34 2:58 4:34
77 Romain Benech, Cedric Evina 🇩🇪 GER13th of 64 aged 35-39 35-39 1:05:36 16:43 33:58 25:50 5:52 3:38 2:33 3:56 2:46 4:08 1:30 3:34 3:45
78 Luca Junge, Daniel Dzillack 🇩🇪 GER29th of 95 aged 30-34 30-34 1:05:37 16:44 35:05 24:46 5:51 3:45 2:09 3:54 2:23 4:09 1:28 3:10 3:48
79 Jon Skriver, Søren Flintrup 🇩🇰 DEN4th of 13 aged 45-49 45-49 1:05:37 16:44 34:32 25:53 5:17 3:45 2:38 4:29 2:02 4:09 1:29 3:24 3:57
80 Steffen Mühl, Nico Kutschenko 🇩🇪 GER9th of 35 aged 40-44 40-44 1:05:51 16:58 32:02 28:22 5:31 3:47 2:20 4:41 3:39 4:23 1:40 3:50 4:02
81 Timm Krätschmann, Mathias Kapala 🇩🇪 GER14th of 64 aged 35-39 35-39 1:05:54 17:01 35:22 24:55 5:42 3:30 2:47 3:50 2:21 4:08 1:27 3:10 3:42
82 Nicolai Stempel, Justus Schmüser 🇩🇪 GER30th of 95 aged 30-34 30-34 1:06:01 17:08 32:05 28:54 5:08 3:43 2:21 5:32 3:12 4:15 1:36 4:13 4:02
83 Jay Hogan, Teo Toetzke 🇩🇪 GER9th of 29 aged 16-24 16-24 1:06:04 17:11 36:16 24:23 5:28 3:53 1:49 3:34 2:33 4:17 1:31 3:00 3:46
84 Tom Puls, Sebastian von Seelen 🇩🇪 GER31st of 95 aged 30-34 30-34 1:06:09 17:16 35:07 25:12 5:54 3:51 2:27 3:53 2:37 4:06 1:23 3:08 3:47
85 Marc-Nico Plück, Wojciech Nowinski 🇩🇪 GER15th of 64 aged 35-39 35-39 1:06:10 17:17 33:48 26:57 5:30 3:38 2:23 4:41 2:24 4:12 1:37 3:41 4:21
86 Adrian Rassau, Marty Lampe 🇩🇪 GER10th of 29 aged 16-24 16-24 1:06:16 17:23 34:37 25:53 5:51 3:44 2:43 4:16 2:18 4:12 1:38 3:14 3:48
87 Valentin Laronche, Dimitri Yaguiyan 🇫🇷 FRA18th of 69 aged 25-29 25-29 1:06:24 17:31 35:07 25:23 5:59 3:33 2:00 4:26 2:44 3:57 1:40 3:13 3:50
88 Samil Hadzic, René Marcus Griffiths 🇩🇪 GER11th of 29 aged 16-24 16-24 1:06:39 17:46 32:50 28:15 5:40 3:37 2:45 4:43 3:00 4:22 1:38 4:02 4:08
89 Steffen Wirtz, Kevin Thewes 🇩🇪 GER16th of 64 aged 35-39 35-39 1:06:44 17:51 33:55 27:23 5:31 3:44 2:26 3:59 2:59 4:28 1:35 4:04 4:08
90 Florian Brennecke, Alexander Graf 🇩🇪 GER17th of 64 aged 35-39 35-39 1:06:50 17:57 36:53 24:35 5:27 3:49 2:16 3:53 2:12 4:01 1:30 3:13 3:41
91 Dirk Raveling, Mathias Boomgaarden 🇩🇪 GER19th of 69 aged 25-29 25-29 1:06:55 18:02 35:30 25:26 6:05 3:33 1:47 3:20 3:03 4:00 2:02 3:36 4:05
92 Florian Rose, Mahmut Kiran 🇩🇪 GER10th of 35 aged 40-44 40-44 1:07:01 18:08 34:49 26:18 5:59 3:40 2:27 3:54 2:44 4:05 1:39 3:35 4:14
93 Martin Itersky, Jakub Boruvka 🇨🇿 CZE32nd of 95 aged 30-34 30-34 1:07:05 18:12 37:13 23:54 6:02 3:43 1:40 3:26 2:09 4:02 1:29 3:04 4:21
94 Gordon Strunz, Daniel Knappe 🇩🇪 GER33rd of 95 aged 30-34 30-34 1:07:11 18:18 36:40 24:41 5:54 3:48 1:47 4:19 2:10 4:03 1:31 3:10 3:53
95 Benedikt Nellessen, Sebastian Yeboah 🇩🇪 GER18th of 64 aged 35-39 35-39 1:07:25 18:32 34:59 26:50 5:40 3:40 2:23 4:20 2:39 4:08 1:35 3:51 4:14
96 Frederik Stjernholm, Magnus Kilsgaard Kristensen 🇩🇰 DEN34th of 95 aged 30-34 30-34 1:07:25 18:32 33:07 28:34 5:50 3:39 2:15 5:28 3:01 4:05 1:30 3:50 4:46
97 Jesper Schouboe, Niklas Madsen 🇩🇰 DEN11th of 35 aged 40-44 40-44 1:07:26 18:33 35:17 26:22 5:51 3:49 2:37 4:04 2:29 4:05 1:31 3:55 3:52
98 Jäger Erik, Marcel Maurer 🇩🇪 GER19th of 64 aged 35-39 35-39 1:07:28 18:35 33:46 27:18 6:29 3:44 2:27 4:22 3:01 4:17 1:49 3:36 4:02
99 Manuel Schulz, Joss Bomm 🇩🇪 GER20th of 64 aged 35-39 35-39 1:07:29 18:36 34:55 26:54 5:45 3:43 2:09 4:33 2:58 4:05 1:49 3:36 4:01
100 Alexandro Cavallaro, Finn Kasting 🇩🇪 GER12th of 29 aged 16-24 16-24 1:07:46 18:53 37:11 24:26 6:12 3:31 1:28 3:20 2:11 4:12 1:21 3:30 4:53
How to read

The place is among timed teams in Pro Doubles 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