HYROX Rotterdam 2025: Doubles Men results

1,384 teams on 27 Feb 2025. Typical finish 1:16:00, fastest 10% under 1:04:52. Back to the analysis.

# Athlete Age Time Behind 1st Runs Stations Rox Ski Push Pull BBJ Row Carry Lunge WB
1 Niall McMeeken, John Carlisle 🇬🇧 GBR1st of 612 aged 30-39 30-39 51:03 28:33 19:18 3:15 3:20 1:28 2:01 1:59 3:39 1:27 2:15 3:09
2 Paul Meijer, Charlie Botterill 🇳🇱 NED2nd of 612 aged 30-39 30-39 53:49 2:46 31:00 19:14 3:39 3:17 1:29 2:18 1:58 3:37 1:18 2:06 3:11
3 Garry Docherty, David Hendry 🇬🇧 GBR3rd of 612 aged 30-39 30-39 54:05 3:02 29:27 21:07 3:35 3:37 1:36 2:46 2:04 3:56 1:27 2:32 3:09
4 Thomas Soler, Yannick Paquot 🇫🇷 FRA1st of 542 aged U29 U29 54:12 3:09 31:37 18:54 3:46 3:17 1:23 1:57 1:57 3:37 1:14 2:06 3:23
5 Iain Irving, Michael Molloy 🇬🇧 GBR1st of 189 aged 40-49 40-49 54:56 3:53 30:34 20:53 3:33 3:42 1:34 2:26 2:06 4:05 1:19 2:24 3:17
6 Oliver Baijings, Jasper Baijings 🇳🇱 NED2nd of 542 aged U29 U29 55:09 4:06 30:38 20:55 3:39 3:48 1:18 2:44 2:26 4:03 1:14 2:18 3:04
7 Marc Kroes, Martijn Peters 🇳🇱 NED2nd of 189 aged 40-49 40-49 55:11 4:08 31:15 20:21 3:39 3:39 1:38 2:15 2:03 4:12 1:13 2:08 3:13
8 Alexandre De Vaucleroy, Antoine Derom 🇧🇪 BEL4th of 612 aged 30-39 30-39 55:58 4:55 30:08 22:16 3:40 3:42 1:37 2:43 2:48 4:00 1:23 2:35 3:28
9 Joey Seetsen, Roman Van Eijk 🇳🇱 NED3rd of 542 aged U29 U29 56:01 4:58 31:32 20:32 4:00 3:35 1:33 2:41 2:11 3:52 1:18 2:13 3:09
10 Dennis Sölle, Asim Latifi 🇳🇱 NED5th of 612 aged 30-39 30-39 56:06 5:03 31:26 20:53 3:52 3:29 1:29 2:30 2:26 3:54 1:20 2:31 3:14
11 Jelmer Jacobs, Fabian Jacobs 🇳🇱 NED6th of 612 aged 30-39 30-39 56:09 5:06 31:59 20:30 3:44 3:44 1:24 2:19 2:02 3:59 1:14 2:25 3:23
12 Scott Shashua, Lucas Parker 🇬🇧 GBR4th of 542 aged U29 U29 56:16 5:13 30:14 22:08 3:57 3:35 1:46 2:43 2:04 4:12 1:27 2:46 3:35
13 Jack Meredith, Ollie Groombridge 🇬🇧 GBR5th of 542 aged U29 U29 56:50 5:47 32:33 20:20 4:02 3:34 1:26 2:17 2:09 3:50 1:25 2:23 3:16
14 Toby Syminton, Archie Prescot 🇺🇸 USA7th of 612 aged 30-39 30-39 57:16 6:13 31:50 21:24 4:07 3:30 1:22 2:41 2:29 4:00 1:15 2:36 3:31
15 Rafael Bouts, Rory Van Rees 🇳🇱 NED8th of 612 aged 30-39 30-39 57:25 6:22 31:55 21:50 3:44 3:55 1:39 2:39 1:59 4:06 1:21 2:18 3:53
16 Brahim Lahmiri, Charles Bouhoulle 🇧🇪 BEL9th of 612 aged 30-39 30-39 57:29 6:26 32:46 20:45 4:03 3:47 1:31 2:10 2:14 4:00 1:09 2:36 3:18
17 Jordy Snel, Kay Abbing 🇳🇱 NED6th of 542 aged U29 U29 57:42 6:39 31:57 21:57 3:54 3:44 1:32 2:32 2:22 4:18 1:20 2:40 3:29
18 Janick Schulze, Patrick Benecke 🇩🇪 GER10th of 612 aged 30-39 30-39 57:45 6:42 33:02 20:50 3:58 3:26 1:31 2:21 2:22 4:04 1:14 2:25 3:27
19 Rogier Verbaan, Ar Koolen 🇳🇱 NED3rd of 189 aged 40-49 40-49 57:47 6:44 31:12 22:51 3:49 3:45 1:38 2:30 2:47 4:21 1:22 2:54 3:34
20 Dale Crossar, Scott Allan 🇬🇧 GBR11th of 612 aged 30-39 30-39 57:49 6:46 33:23 20:28 4:02 3:32 1:21 2:36 1:51 3:51 1:18 2:21 3:38
21 Barthelemy Delecroix, Thibaud Desutter 🇫🇷 FRA12th of 612 aged 30-39 30-39 57:54 6:51 32:11 21:48 3:58 3:36 1:32 2:55 2:03 3:57 1:14 2:57 3:34
22 Maarten Smit, Wim Oosthoek 🇳🇱 NED13th of 612 aged 30-39 30-39 58:08 7:05 29:29 24:51 3:54 3:45 1:47 3:47 2:49 4:05 1:27 2:55 4:16
23 Dries Roelof, Widmer Van Der Wal 🇳🇱 NED14th of 612 aged 30-39 30-39 58:12 7:09 33:33 20:50 3:54 3:47 1:17 2:32 1:55 4:02 1:18 2:33 3:26
24 Kjeld Dijkstra, Ramon Hendricks 🇳🇱 NED7th of 542 aged U29 U29 58:13 7:10 31:51 22:17 4:10 3:46 1:30 2:41 2:43 4:15 1:35 2:27 3:20
25 Sander D’Hont, Christian De Die 🇳🇱 NED15th of 612 aged 30-39 30-39 58:20 7:17 32:10 21:59 4:16 3:41 1:36 2:16 2:32 4:00 1:31 2:50 3:33
26 Tom Schouten, Tom Van Den Berkhof 🇳🇱 NED16th of 612 aged 30-39 30-39 58:34 7:31 32:44 22:06 3:48 3:41 1:40 2:40 2:16 4:05 1:30 2:50 3:24
27 Sander Van Der Veer, Jesse Vlaskamp 🇳🇱 NED8th of 542 aged U29 U29 58:35 7:32 32:30 21:45 4:24 3:49 1:31 2:13 2:21 4:36 1:31 2:11 3:33
28 Vincent Ueberbach, Bob Driessen 🇳🇱 NED17th of 612 aged 30-39 30-39 58:36 7:33 34:11 20:21 4:09 3:46 1:30 2:03 2:02 3:58 1:19 2:14 3:29
29 Bob Van Der Marel, Youp Schreuder 🇳🇱 NED18th of 612 aged 30-39 30-39 58:41 7:38 32:09 22:36 4:01 3:25 1:14 3:50 2:45 3:53 1:21 2:32 3:36
30 Steven Knops, Sam Mees 🇳🇱 NED19th of 612 aged 30-39 30-39 58:53 7:50 32:35 21:58 4:23 3:31 1:44 2:53 2:28 4:16 1:19 2:25 3:22
31 Mourad Boudal, Sander Risseeuw 🇳🇱 NED9th of 542 aged U29 U29 58:54 7:51 32:35 21:51 4:33 3:47 1:27 2:10 3:14 4:07 1:20 2:42 3:04
32 Pepijn Van Straelen, Noud Schoenmakers 🇳🇱 NED4th of 189 aged 40-49 40-49 59:08 8:05 32:50 22:22 4:01 3:37 1:31 2:21 2:35 4:09 1:25 2:54 3:50
33 Marc Velasco, Enrique Peñaranda 🇪🇸 ESP10th of 542 aged U29 U29 59:09 8:06 33:10 22:19 3:45 3:49 1:26 2:32 2:43 4:22 1:20 2:51 3:16
34 Wouter Peters, Ruben Van Dijk 🇳🇱 NED20th of 612 aged 30-39 30-39 59:30 8:27 32:26 23:11 3:58 3:56 1:35 3:05 2:28 4:10 1:15 2:56 3:46
35 Danny Van Der Linden, Camiel Roskamp 🇳🇱 NED11th of 542 aged U29 U29 59:38 8:35 33:28 21:45 4:28 4:01 1:27 2:29 2:09 4:20 1:43 2:21 3:15
36 Jens Van Baaren, Luuk Van Baaren 🇳🇱 NED12th of 542 aged U29 U29 59:42 8:39 32:15 23:20 4:12 3:43 1:42 3:10 2:51 4:24 1:22 2:34 3:34
37 Luc Van Bokhoven, Roel Van Wijk 🇳🇱 NED13th of 542 aged U29 U29 59:45 8:42 34:34 20:47 4:27 3:48 1:09 2:24 2:29 3:51 1:30 2:28 3:08
38 Nick Straver, Yuri Van Den Brink 🇳🇱 NED21st of 612 aged 30-39 30-39 59:47 8:44 34:12 21:09 4:31 3:44 1:25 2:10 2:16 4:17 1:17 2:41 3:19
39 Robin Scholten, Sven Visser 🇳🇱 NED22nd of 612 aged 30-39 30-39 59:47 8:44 32:55 22:56 4:01 3:53 1:36 2:44 2:42 4:25 1:30 2:36 3:30
40 Nikolas Gaio, Jelle Mulder 🇦🇼 ARU14th of 542 aged U29 U29 59:54 8:51 32:28 23:19 4:11 3:50 1:47 2:55 2:33 4:09 1:26 3:06 3:33
41 Ash Zamani, Donny Nulkes 🇳🇱 NED15th of 542 aged U29 U29 59:57 8:54 34:35 20:55 4:32 3:34 1:15 2:38 2:23 3:58 1:20 2:28 3:19
42 Adrien Roger, Michaël Leconte 🇫🇷 FRA23rd of 612 aged 30-39 30-39 1:00:06 9:03 33:51 22:03 4:16 3:43 1:43 3:03 2:13 4:07 1:21 2:20 3:33
43 Reno Timmerman, Jurgen Koedijk 🇳🇱 NED24th of 612 aged 30-39 30-39 1:00:07 9:04 33:14 22:54 4:03 3:51 1:38 2:53 2:43 4:14 1:47 2:20 3:28
44 Remi Jansen, Roy Jeurissen 🇳🇱 NED5th of 189 aged 40-49 40-49 1:00:11 9:08 33:16 22:43 4:17 3:59 1:35 2:33 2:53 4:10 1:21 2:33 3:39
45 Thibaut Montay, Adrien Leroux 🇫🇷 FRA16th of 542 aged U29 U29 1:00:12 9:09 33:16 22:30 4:29 3:39 1:40 2:48 2:13 4:12 1:20 3:09 3:29
46 Wessel Van Peer, Thomas De Rover 🇳🇱 NED17th of 542 aged U29 U29 1:00:20 9:17 33:36 22:41 4:07 4:01 1:37 2:48 2:17 4:09 1:31 2:41 3:37
47 Thomas Van Til, Fedde Meijer 🇳🇱 NED18th of 542 aged U29 U29 1:00:29 9:26 32:13 24:02 4:17 3:42 1:35 3:28 3:08 4:16 1:36 3:06 3:11
48 Dominic Kiewiet, Gert-Jan Westerhout 🇳🇱 NED6th of 189 aged 40-49 40-49 1:00:33 9:30 33:50 22:38 4:09 3:32 1:50 2:37 3:10 4:06 1:16 2:53 3:14
49 Nick Penders, Robin Van Versendaal 🇳🇱 NED25th of 612 aged 30-39 30-39 1:00:34 9:31 34:49 21:24 4:25 3:48 1:32 2:22 2:18 3:54 1:29 2:51 3:10
50 Dario Mulder, Wouter Oostveen 🇳🇱 NED19th of 542 aged U29 U29 1:00:47 9:44 34:47 21:40 4:23 3:55 1:23 2:31 2:43 4:01 1:19 2:29 3:19
51 Azad Soufi, Omar Ryani 🇳🇱 NED26th of 612 aged 30-39 30-39 1:00:55 9:52 31:20 25:20 4:20 4:07 2:02 3:25 2:51 4:19 1:38 3:11 3:47
52 Darcel Henneveld, Kenneth Henneveld 🇳🇱 NED27th of 612 aged 30-39 30-39 1:01:01 9:58 34:29 22:23 4:13 3:52 1:39 2:27 2:22 4:12 1:44 2:40 3:27
53 Boet Morsink, Koen Proost 🇳🇱 NED20th of 542 aged U29 U29 1:01:03 10:00 36:40 19:46 4:44 3:32 1:23 2:13 1:53 3:56 1:17 2:20 3:12
54 Aart Brouwer, Rick Ritmeijer 🇳🇱 NED21st of 542 aged U29 U29 1:01:05 10:02 34:30 22:16 4:24 3:28 1:13 2:37 3:16 3:58 1:35 2:41 3:28
55 Wiggert Kalis, Jim Schild 🇳🇱 NED28th of 612 aged 30-39 30-39 1:01:06 10:03 34:09 22:52 4:09 3:37 1:30 2:30 2:38 4:24 1:26 2:53 3:54
56 Sven Vermeulen, Jordy Waroux 🇳🇱 NED22nd of 542 aged U29 U29 1:01:08 10:05 34:23 22:33 4:18 3:54 1:30 2:38 2:14 4:19 1:30 2:48 3:40
57 Nick Nsengiyumva, Bao-An Truong 🇧🇪 BEL29th of 612 aged 30-39 30-39 1:01:10 10:07 34:39 22:23 4:12 3:47 1:49 2:33 2:32 4:16 1:13 2:49 3:24
58 Sander Geerdink, Thijs Coppelmans 🇳🇱 NED30th of 612 aged 30-39 30-39 1:01:17 10:14 34:10 22:27 4:44 3:45 1:42 2:20 2:59 4:04 1:26 2:24 3:47
59 Mitchell Warmerdam, Tim Josten 🇳🇱 NED31st of 612 aged 30-39 30-39 1:01:17 10:14 34:03 22:49 4:30 3:56 1:39 2:32 2:32 4:10 1:50 2:44 3:26
60 Sander Kerbusch, Paul Van Mulekom 🇳🇱 NED32nd of 612 aged 30-39 30-39 1:01:17 10:14 34:02 22:50 4:31 3:44 1:39 2:32 2:52 4:18 1:30 2:52 3:23
61 Damon De Boer, Ryan Subaeswaran 🇳🇱 NED23rd of 542 aged U29 U29 1:01:20 10:17 33:59 22:45 4:42 3:53 1:23 2:25 3:29 4:28 1:10 2:28 3:29
62 Erik-Jan Mol, Jordi De Kogel 🇳🇱 NED7th of 189 aged 40-49 40-49 1:01:27 10:24 34:38 22:15 4:37 3:50 1:42 3:09 2:01 4:19 1:27 2:21 3:26
63 Marcel Noordegraaf, David Annoff 🇳🇱 NED8th of 189 aged 40-49 40-49 1:01:28 10:25 33:40 23:49 4:03 4:00 1:43 2:24 2:43 4:19 1:28 2:57 4:15
64 Valentin Maryniak, Nacim Taourit 🇫🇷 FRA33rd of 612 aged 30-39 30-39 1:01:30 10:27 34:05 23:27 4:02 3:51 1:39 2:36 2:37 4:19 1:28 3:24 3:33
65 Jos Van Toorn, Boas Titaley 🇳🇱 NED34th of 612 aged 30-39 30-39 1:01:32 10:29 35:52 20:58 4:46 3:31 1:22 2:30 2:43 3:54 1:06 2:38 3:14
66 Chris Stienenbos, Daan Jonker 🇳🇱 NED24th of 542 aged U29 U29 1:01:36 10:33 34:38 22:45 4:18 3:50 1:37 2:48 2:40 4:15 1:26 2:39 3:30
67 Jerry Raaphorst, Boy Van Erp 🇳🇱 NED25th of 542 aged U29 U29 1:01:44 10:41 35:45 21:49 4:14 3:42 1:32 2:12 2:45 4:01 1:22 2:59 3:16
68 Melle Bijstra, Patrick Rutterkamp 🇳🇱 NED35th of 612 aged 30-39 30-39 1:01:45 10:42 35:26 22:10 4:13 3:41 1:27 2:16 2:40 4:13 1:34 2:36 3:43
69 Jan Lammers, Gideon Bierdrager 🇳🇱 NED26th of 542 aged U29 U29 1:01:47 10:44 34:50 22:21 4:40 3:42 1:16 3:01 2:21 4:26 1:21 2:36 3:38
70 Justy De Bruijn, John Stuster 🇳🇱 NED36th of 612 aged 30-39 30-39 1:01:51 10:48 34:57 22:32 4:27 3:42 1:45 2:23 2:29 4:14 1:28 2:41 3:50
71 Jurre Van der meer, Mats Van Der Meer 🇳🇱 NED27th of 542 aged U29 U29 1:01:56 10:53 36:00 21:21 4:39 3:47 1:25 2:34 2:03 4:01 1:29 2:41 3:21
72 Tom Roumimper, Adam El Fattahi 🇳🇱 NED28th of 542 aged U29 U29 1:02:01 10:58 35:22 18:58 7:46 3:31 1:36 2:26 2:46 — 1:24 3:01 3:27
73 Julian Westerbaan, Ramón Stol 🇳🇱 NED37th of 612 aged 30-39 30-39 1:02:05 11:02 37:45 20:17 4:08 3:35 1:37 2:19 2:18 3:59 1:22 2:00 3:07
74 Roel Heestermans, Dennis Reinten 🇳🇱 NED38th of 612 aged 30-39 30-39 1:02:13 11:10 36:13 21:35 4:29 3:45 1:22 2:29 2:51 3:53 1:18 2:14 3:43
75 Rowan Meijer, Thomas Heyn 🇳🇱 NED29th of 542 aged U29 U29 1:02:14 11:11 35:16 22:21 4:42 3:44 1:33 2:57 2:05 4:15 1:37 2:45 3:25
76 Thijs Haasnoot, Noah Snoep 🇳🇱 NED39th of 612 aged 30-39 30-39 1:02:14 11:11 35:12 22:44 4:21 3:59 1:35 2:38 2:41 4:13 1:21 3:06 3:11
77 Victor Van Gerven, Jan-Willem Loer 🇳🇱 NED30th of 542 aged U29 U29 1:02:16 11:13 35:35 22:20 4:24 3:37 1:30 2:05 2:43 4:20 1:22 3:11 3:32
78 Julien Courtois, Jorn Van Der Steen 🇫🇷 FRA40th of 612 aged 30-39 30-39 1:02:16 11:13 34:45 23:29 4:06 3:51 1:27 2:47 2:32 4:01 1:38 3:31 3:42
79 Thomas Den Besten, Mark Fierinck 🇳🇱 NED31st of 542 aged U29 U29 1:02:17 11:14 34:40 22:37 5:05 3:33 1:34 2:21 2:45 4:07 1:42 2:38 3:57
80 Tim Dekens, Jamal Kadar Fontaine Arkema 🇳🇱 NED41st of 612 aged 30-39 30-39 1:02:23 11:20 33:54 24:15 4:19 3:51 1:35 3:01 2:57 4:11 1:38 3:27 3:35
81 Mark Stam, Roy Looman 🇳🇱 NED32nd of 542 aged U29 U29 1:02:25 11:22 35:33 22:42 4:15 3:44 1:40 2:52 2:22 4:16 1:23 2:59 3:26
82 Sven Dietrich, Ben Stiekema 🇩🇪 GER42nd of 612 aged 30-39 30-39 1:02:28 11:25 36:14 21:49 4:29 3:38 1:12 2:31 2:41 4:02 1:15 2:52 3:38
83 Sipke De Boer, Laurens Hoek 🇳🇱 NED43rd of 612 aged 30-39 30-39 1:02:31 11:28 34:15 23:40 4:40 3:47 1:33 2:41 3:07 4:14 1:30 3:00 3:48
84 Fedde Ter Punt, Tom Uivel 🇳🇱 NED33rd of 542 aged U29 U29 1:02:33 11:30 35:23 22:30 4:46 3:41 1:19 2:21 2:41 4:31 1:19 2:56 3:42
85 Rick Van De Steeg, Lars Van De Haar 🇳🇱 NED34th of 542 aged U29 U29 1:02:34 11:31 35:48 22:14 4:34 3:31 1:48 2:41 2:26 4:20 1:22 2:36 3:30
86 Daan Mulder, Bart Mulder 🇳🇱 NED44th of 612 aged 30-39 30-39 1:02:37 11:34 35:38 21:26 5:38 3:32 1:16 2:42 2:33 4:09 1:19 2:45 3:10
87 Jasper Van Breemen, Mathijs Miserus 🇳🇱 NED35th of 542 aged U29 U29 1:02:38 11:35 36:35 21:23 4:44 3:42 1:31 2:28 2:08 4:20 1:17 2:33 3:24
88 Maurice Twisk, Wessel Kooij 🇳🇱 NED45th of 612 aged 30-39 30-39 1:02:38 11:35 35:56 22:09 4:38 3:45 1:35 2:34 2:36 4:07 1:22 2:47 3:23
89 Edouard Budka, Rudy Fernane 🇫🇷 FRA46th of 612 aged 30-39 30-39 1:02:41 11:38 35:39 22:23 4:42 3:40 1:49 2:41 1:53 4:05 1:39 2:52 3:44
90 Quinten Bijwaard, Wessel De Vries 🇳🇱 NED36th of 542 aged U29 U29 1:02:41 11:38 34:39 23:49 4:19 3:39 1:28 2:55 3:12 4:00 1:31 2:51 4:13
91 Max Maas, Paul Harthoorn 🇳🇱 NED37th of 542 aged U29 U29 1:02:48 11:45 35:05 23:10 4:38 3:49 2:02 2:33 2:59 4:09 1:17 2:35 3:46
92 Kelvin Weijzen, Eljan Van Soeren 🇳🇱 NED38th of 542 aged U29 U29 1:02:50 11:47 36:19 22:12 4:23 3:37 1:31 2:24 2:25 4:25 1:33 3:04 3:13
93 Wannes Van Dooren, Sean Durinck 🇧🇪 BEL47th of 612 aged 30-39 30-39 1:02:54 11:51 34:36 24:00 4:23 3:53 1:52 2:18 2:55 4:25 1:43 3:04 3:50
94 Dennis Dekker, Bryan Lieverse 🇳🇱 NED39th of 542 aged U29 U29 1:02:56 11:53 34:03 24:14 4:44 3:45 1:46 3:02 2:54 4:17 1:32 3:16 3:42
95 Nick Jansen, Max Swinkels 🇳🇱 NED40th of 542 aged U29 U29 1:02:59 11:56 37:43 20:56 4:25 3:34 1:26 2:16 2:13 3:48 1:21 2:47 3:31
96 Martijn Bakker, Bas Van Boven 🇳🇱 NED41st of 542 aged U29 U29 1:02:59 11:56 36:09 22:16 4:39 3:24 1:24 2:29 3:05 4:03 1:32 2:52 3:27
97 Daan Goris, Mart Hogendoorn 🇳🇱 NED48th of 612 aged 30-39 30-39 1:03:02 11:59 36:06 22:38 4:22 3:47 1:10 1:53 2:49 4:11 2:32 2:29 3:47
98 Frank Van Driel, Lex Crielaars 🇳🇱 NED49th of 612 aged 30-39 30-39 1:03:03 12:00 34:27 24:17 4:25 3:47 1:32 3:07 2:54 4:21 1:47 3:21 3:28
99 Maarten Boeve, Bjorn Van Dijk 🇳🇱 NED50th of 612 aged 30-39 30-39 1:03:04 12:01 37:56 20:16 4:55 3:32 1:13 2:09 2:08 3:54 1:31 2:30 3:19
100 Gert-Jan Spierings, Nick Verhoeven 🇳🇱 NED51st of 612 aged 30-39 30-39 1:03:04 12:01 37:08 21:26 4:34 3:31 1:36 2:27 2:36 3:46 1:22 2:46 3:22
How to read

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