HYROX Toronto 2025: Open Men results

1,771 finishers on 4 Oct 2025. Typical finish 1:34:57, fastest 10% under 1:15:39. Back to the analysis.

# Athlete Age Time Behind 1st Runs Stations Rox Ski Push Pull BBJ Row Carry Lunge WB
1 Owen Moloney 🇨🇦 CAN1st of 94 aged 16-24 16-24 1:00:17 30:03 26:44 3:34 4:21 2:41 3:21 3:01 4:20 1:30 3:07 4:23
2 Samuel Cottrell 🇺🇸 USA1st of 277 aged 25-29 25-29 1:00:39 0:22 28:44 27:52 4:06 4:04 2:17 4:24 3:24 4:06 1:42 3:19 4:36
3 Gary Jones 🇺🇸 USA1st of 393 aged 35-39 35-39 1:01:13 0:56 32:25 25:00 3:53 4:05 2:02 3:28 3:23 4:28 1:32 2:46 3:16
4 Zachary Marino 🇨🇦 CAN1st of 428 aged 30-34 30-34 1:01:20 1:03 30:24 27:04 3:56 4:16 2:00 3:17 4:31 4:27 1:38 2:56 3:59
5 Patrick Lucas 🇬🇧 GBR2nd of 277 aged 25-29 25-29 1:01:29 1:12 30:53 26:35 4:06 4:05 2:07 4:05 3:19 4:16 1:42 3:35 3:26
6 Ethan Paupst 🇨🇦 CAN2nd of 94 aged 16-24 16-24 1:02:27 2:10 30:28 28:10 3:54 4:15 2:16 3:44 3:50 4:17 1:26 2:44 5:38
7 Andrew Gillis 🇨🇦 CAN2nd of 393 aged 35-39 35-39 1:02:41 2:24 32:02 26:20 4:23 4:16 2:09 3:17 2:57 4:39 1:32 3:42 3:48
8 Reece Fallon 🇨🇦 CAN2nd of 428 aged 30-34 30-34 1:02:46 2:29 31:51 26:59 3:59 4:28 2:24 3:26 2:44 4:24 1:27 3:13 4:53
9 Marvin Thomas 🇩🇪 GER3rd of 277 aged 25-29 25-29 1:03:30 3:13 31:46 27:18 4:30 4:01 2:14 3:43 2:53 4:23 1:20 3:27 5:17
10 Jason Desjardins 🇨🇦 CAN3rd of 393 aged 35-39 35-39 1:03:42 3:25 32:29 26:38 4:39 4:17 2:08 4:32 3:18 4:27 1:13 3:08 3:35
11 Chris Fudge 🇨🇦 CAN1st of 245 aged 40-44 40-44 1:03:47 3:30 33:41 25:58 4:13 4:17 3:07 3:35 2:32 4:27 1:33 3:08 3:19
12 Asher Jones 🇨🇦 CAN3rd of 428 aged 30-34 30-34 1:04:05 3:48 32:46 26:29 4:54 4:14 2:33 3:07 3:11 4:30 1:33 2:57 4:24
13 Mario Enrique Martinez Ornelas 🇲🇽 MEX4th of 428 aged 30-34 30-34 1:04:29 4:12 32:04 28:30 3:58 4:20 2:24 3:13 3:07 4:50 1:35 3:39 5:22
14 Michael Yorfido 🇨🇦 CAN5th of 428 aged 30-34 30-34 1:04:51 4:34 34:38 25:36 4:42 4:10 2:04 3:15 2:43 4:28 1:32 3:16 4:08
15 Martin Gajardo 🇨🇱 CHI4th of 277 aged 25-29 25-29 1:05:09 4:52 30:12 30:53 4:09 4:28 2:04 3:46 3:20 5:03 2:33 3:24 6:15
16 Omid Ebrahimi 🇦🇫 AFG5th of 277 aged 25-29 25-29 1:05:15 4:58 30:17 30:41 4:22 4:15 2:31 3:27 3:52 4:35 1:55 4:04 6:02
17 Antoine Gast 🇨🇦 CAN4th of 393 aged 35-39 35-39 1:05:19 5:02 33:30 26:23 5:31 4:05 2:03 3:21 2:48 4:07 1:36 3:42 4:41
18 Yohan Plier 🇫🇷 FRA6th of 277 aged 25-29 25-29 1:05:37 5:20 32:13 29:16 4:11 4:30 2:42 3:59 3:22 4:28 1:42 3:46 4:47
19 Benjamin Joussemet 🇫🇷 FRA6th of 428 aged 30-34 30-34 1:05:48 5:31 34:56 26:37 4:19 4:41 2:12 3:10 2:57 4:25 1:39 3:24 4:09
20 Scott Knowles 🇨🇦 CAN7th of 428 aged 30-34 30-34 1:05:48 5:31 33:09 28:04 4:40 4:19 1:35 3:56 3:35 4:29 1:36 3:54 4:40
21 Michael Ceoffe 🇺🇸 USA8th of 428 aged 30-34 30-34 1:06:03 5:46 34:10 27:26 4:31 4:00 2:04 3:56 4:07 4:08 1:32 3:26 4:13
22 Isaac Fagnan 🇨🇦 CAN7th of 277 aged 25-29 25-29 1:06:22 6:05 33:17 28:31 4:38 4:30 2:26 3:18 3:33 4:34 1:39 3:24 5:07
23 Justin Scott 🇹🇹 TTO2nd of 245 aged 40-44 40-44 1:06:31 6:14 32:59 29:16 4:21 4:26 2:01 4:09 4:02 4:26 1:38 3:11 5:23
24 Kevin Arellana 🇺🇸 USA9th of 428 aged 30-34 30-34 1:06:34 6:17 33:33 28:58 4:08 4:11 2:53 4:26 2:56 4:26 1:30 3:43 4:53
25 Marcus Gordon 🇨🇦 CAN3rd of 94 aged 16-24 16-24 1:06:46 6:29 35:45 26:31 4:34 4:18 1:51 3:19 3:28 4:26 1:57 3:22 3:50
26 Dimitry Galamiyev 🇰🇿 KAZ10th of 428 aged 30-34 30-34 1:06:56 6:39 33:28 28:43 4:50 4:31 2:28 4:18 3:10 4:32 1:24 3:58 4:22
27 Chad Dawgiello 🇺🇸 USA11th of 428 aged 30-34 30-34 1:06:57 6:40 33:17 28:54 4:50 4:18 2:30 4:42 3:17 4:32 1:40 4:10 3:45
28 Andrew Schaefer 🇺🇸 USA8th of 277 aged 25-29 25-29 1:07:03 6:46 36:21 26:10 4:37 4:08 1:55 3:25 3:37 4:31 1:44 3:12 3:38
29 Ryan Wiese 🇺🇸 USA12th of 428 aged 30-34 30-34 1:07:09 6:52 35:00 27:44 4:28 4:24 2:45 3:46 2:47 4:30 1:46 3:31 4:15
30 Jake Bennett 🇨🇦 CAN9th of 277 aged 25-29 25-29 1:07:13 6:56 32:39 30:20 4:18 4:23 2:34 3:16 4:03 4:26 1:21 3:03 7:14
31 Wil Brawn 🇨🇦 CAN10th of 277 aged 25-29 25-29 1:07:32 7:15 34:48 28:20 4:28 4:11 2:08 4:00 2:54 4:41 1:46 3:35 5:05
32 Kyle Heindl 🇺🇸 USA13th of 428 aged 30-34 30-34 1:07:32 7:15 33:14 30:02 4:21 4:27 2:18 3:46 4:23 4:24 1:30 4:25 4:49
33 Colm Dawson 🇮🇪 IRL3rd of 245 aged 40-44 40-44 1:07:42 7:25 35:07 28:11 4:28 4:19 2:17 3:34 3:00 4:23 1:42 3:18 5:38
34 Kanjo Melo 🇨🇦 CAN11th of 277 aged 25-29 25-29 1:07:43 7:26 32:23 30:50 4:34 4:26 3:17 3:25 4:33 4:43 1:58 3:54 4:34
35 Noah Huyler 🇺🇸 USA12th of 277 aged 25-29 25-29 1:07:45 7:28 32:12 31:19 4:18 4:29 2:35 4:10 4:17 4:46 1:49 4:04 5:09
36 Gautier Mathieu de Fossey 🇫🇷 FRA5th of 393 aged 35-39 35-39 1:07:48 7:31 32:57 30:18 4:38 4:11 2:19 4:02 3:12 4:35 1:38 4:46 5:35
37 Danyal Amjad 🇨🇦 CAN6th of 393 aged 35-39 35-39 1:07:51 7:34 32:39 30:31 4:46 4:18 2:14 3:30 4:30 4:25 1:36 4:01 5:57
38 Marc André Fortin 🇨🇦 CAN4th of 245 aged 40-44 40-44 1:07:53 7:36 31:57 31:46 4:12 4:20 2:03 4:51 4:09 4:30 1:50 4:07 5:56
39 Michael Poole 🇨🇦 CAN5th of 245 aged 40-44 40-44 1:07:56 7:39 32:16 31:36 4:09 4:23 2:20 3:42 4:08 4:26 1:30 3:37 7:30
40 Harrison Cowden 🇨🇦 CAN13th of 277 aged 25-29 25-29 1:08:07 7:50 36:33 26:36 5:03 4:48 1:56 3:20 2:43 4:44 1:23 3:20 4:22
41 Alec Jarvis 🇨🇦 CAN14th of 277 aged 25-29 25-29 1:08:26 8:09 33:04 29:52 5:34 4:19 2:17 3:41 4:10 4:38 1:58 4:07 4:42
42 Nicholas Demetriadis 🇨🇦 CAN4th of 94 aged 16-24 16-24 1:08:45 8:28 34:54 29:19 4:38 4:30 2:56 3:37 2:19 4:35 2:02 3:28 5:52
43 Ed Foerter 🇨🇦 CAN6th of 245 aged 40-44 40-44 1:08:46 8:29 36:31 27:17 5:03 4:21 1:47 3:07 3:43 4:48 1:38 3:18 4:35
44 Luke Schindler 🇨🇦 CAN14th of 428 aged 30-34 30-34 1:08:47 8:30 34:48 29:02 5:03 4:43 2:51 3:53 3:03 4:34 1:46 3:31 4:41
45 Braeden Theriault 🇨🇦 CAN15th of 277 aged 25-29 25-29 1:08:49 8:32 34:42 29:42 4:30 4:23 2:55 3:50 3:29 4:25 1:40 3:59 5:01
46 David Worsley 🇨🇦 CAN15th of 428 aged 30-34 30-34 1:08:49 8:32 33:16 30:33 5:05 4:22 1:55 4:42 4:16 4:21 1:24 3:34 5:59
47 Vincent Martin 🇫🇷 FRA16th of 277 aged 25-29 25-29 1:08:50 8:33 34:08 30:15 4:32 4:28 2:04 4:36 3:22 4:32 2:02 3:37 5:34
48 Amir Yehia 🇱🇧 LBN5th of 94 aged 16-24 16-24 1:08:52 8:35 37:05 26:34 5:16 4:02 2:03 2:49 2:59 4:27 1:46 4:00 4:28
49 Austin Labban 🇺🇸 USA17th of 277 aged 25-29 25-29 1:08:57 8:40 36:01 28:08 4:53 4:24 2:28 4:22 3:22 4:31 1:34 3:24 4:03
50 Alec Abbott 🇨🇦 CAN7th of 393 aged 35-39 35-39 1:09:02 8:45 34:18 30:02 4:46 3:46 2:19 3:51 5:10 4:13 1:43 4:26 4:34
51 Youssef Badawy 🇨🇦 CAN16th of 428 aged 30-34 30-34 1:09:03 8:46 36:28 27:13 5:27 4:27 1:55 3:04 3:10 4:34 1:34 3:20 5:09
52 Francis Robidoux 🇨🇦 CAN18th of 277 aged 25-29 25-29 1:09:08 8:51 34:45 29:24 5:03 4:23 2:20 4:14 4:48 4:26 1:24 4:03 3:46
53 David Earl 🇬🇧 GBR7th of 245 aged 40-44 40-44 1:09:10 8:53 34:47 29:24 5:04 4:19 2:18 4:23 4:34 4:28 1:42 3:26 4:14
54 Paul Vance 🇺🇸 USA8th of 393 aged 35-39 35-39 1:09:19 9:02 33:24 31:49 4:11 4:23 3:00 4:25 3:58 5:00 1:38 4:17 5:08
55 Jorian Holka 🇺🇸 USA19th of 277 aged 25-29 25-29 1:09:23 9:06 36:15 28:51 4:21 4:31 2:43 3:21 3:38 4:36 2:00 4:00 4:02
56 Charles Donahue 🇺🇸 USA8th of 245 aged 40-44 40-44 1:09:25 9:08 36:50 27:57 4:42 4:16 2:22 3:51 4:06 4:19 1:38 3:11 4:14
57 William Tsilkas 🇨🇦 CAN20th of 277 aged 25-29 25-29 1:09:32 9:15 33:28 31:53 4:15 4:25 2:41 4:10 4:05 4:39 1:43 4:02 6:08
58 Jefte Chavez 🇲🇽 MEX17th of 428 aged 30-34 30-34 1:09:33 9:16 34:32 30:33 4:31 4:21 2:26 3:45 4:33 4:50 1:23 3:55 5:20
59 Étienne Minville 🇨🇦 CAN6th of 94 aged 16-24 16-24 1:09:36 9:19 35:03 30:02 4:36 4:28 2:46 3:52 3:50 4:40 1:34 3:50 5:02
60 Christopher Meyers 🇱🇻 LAT18th of 428 aged 30-34 30-34 1:09:48 9:31 37:26 27:44 4:42 4:26 2:09 2:54 3:39 4:30 1:49 3:41 4:36
61 Taylor Bond 🇨🇦 CAN19th of 428 aged 30-34 30-34 1:09:48 9:31 36:10 29:01 4:41 4:22 2:33 3:32 3:14 4:13 1:42 3:24 6:01
62 Noah Schwartz 🇨🇦 CAN20th of 428 aged 30-34 30-34 1:09:56 9:39 34:25 30:16 5:20 4:19 2:43 3:48 3:59 4:24 1:37 4:00 5:26
63 Joey Michaels 🇺🇸 USA21st of 428 aged 30-34 30-34 1:10:04 9:47 35:15 29:55 4:58 4:28 2:02 3:50 4:18 4:31 1:25 3:52 5:29
64 Dave Hardman 🇨🇦 CAN9th of 393 aged 35-39 35-39 1:10:10 9:53 34:42 30:38 4:55 4:15 2:14 3:46 3:46 4:18 1:32 4:19 6:28
65 Daniel Silva 🇨🇦 CAN22nd of 428 aged 30-34 30-34 1:10:13 9:56 35:57 29:21 4:59 4:21 2:18 3:46 3:21 4:37 1:50 4:09 4:59
66 Lars Elbers 🇳🇱 NED23rd of 428 aged 30-34 30-34 1:10:14 9:57 36:35 28:33 5:10 4:16 2:04 4:09 3:46 4:39 1:43 2:53 5:03
67 Jack Parry 🇬🇧 GBR21st of 277 aged 25-29 25-29 1:10:23 10:06 31:46 34:44 3:59 4:26 2:56 5:07 4:16 4:45 2:31 4:37 6:06
68 James McClellan 🇬🇧 GBR7th of 94 aged 16-24 16-24 1:10:24 10:07 34:48 31:19 4:21 4:30 2:17 4:05 4:20 4:30 1:47 3:54 5:56
69 Kevin Linker 🇨🇦 CAN8th of 94 aged 16-24 16-24 1:10:25 10:08 36:46 27:59 5:47 4:23 2:26 3:37 3:04 4:16 1:50 3:36 4:47
70 Chris Buott 🇨🇦 CAN10th of 393 aged 35-39 35-39 1:10:26 10:09 35:55 29:29 5:08 4:26 2:25 4:06 3:22 4:47 1:36 4:12 4:35
71 Austin Miele 🇺🇸 USA24th of 428 aged 30-34 30-34 1:10:32 10:15 36:03 29:24 5:08 4:23 2:13 4:21 4:08 4:29 1:40 3:31 4:39
72 Samuel Cardinal Bradette 🇨🇦 CAN25th of 428 aged 30-34 30-34 1:10:32 10:15 33:29 32:06 4:59 4:26 2:08 4:34 3:30 4:24 1:41 3:35 7:48
73 Liam McCoy 🇨🇦 CAN26th of 428 aged 30-34 30-34 1:10:34 10:17 33:32 32:43 4:24 4:25 2:50 4:00 2:39 4:47 2:03 6:54 5:05
74 Maxime Hawey 🇨🇦 CAN27th of 428 aged 30-34 30-34 1:10:38 10:21 36:02 29:14 5:26 4:29 2:01 3:29 4:11 4:40 1:46 3:42 4:56
75 Mitchell Blaine 🇨🇦 CAN1st of 153 aged 45-49 45-49 1:10:58 10:41 37:40 27:46 5:39 4:15 2:14 3:04 3:38 4:28 1:52 3:29 4:46
76 Andrew Court 🇨🇦 CAN22nd of 277 aged 25-29 25-29 1:11:01 10:44 32:58 33:25 4:43 4:42 2:57 4:02 4:22 4:51 1:44 4:49 5:58
77 Brendon Beaton 🇨🇦 CAN2nd of 153 aged 45-49 45-49 1:11:02 10:45 33:39 31:41 5:47 4:18 2:25 3:55 5:19 4:37 1:49 3:53 5:25
78 Michael Hand 🇨🇦 CAN28th of 428 aged 30-34 30-34 1:11:04 10:47 37:13 27:31 6:24 4:26 2:35 3:51 2:09 4:38 1:38 3:01 5:13
79 Matthew Steele 🇨🇦 CAN11th of 393 aged 35-39 35-39 1:11:09 10:52 37:05 29:05 5:04 4:11 1:59 3:45 4:15 4:30 1:35 4:19 4:31
80 Spencer Tredwell 🇺🇸 USA23rd of 277 aged 25-29 25-29 1:11:09 10:52 34:27 32:08 4:38 4:41 2:29 3:46 4:21 4:55 1:56 4:05 5:55
81 Rodney Fajardo 🇨🇦 CAN29th of 428 aged 30-34 30-34 1:11:13 10:56 37:35 27:55 5:48 4:18 2:01 3:38 2:45 4:22 1:37 3:21 5:53
82 Nicolas Hernandez 🇫🇷 FRA12th of 393 aged 35-39 35-39 1:11:17 11:00 33:34 33:05 4:44 4:16 2:25 4:25 4:08 4:37 2:22 3:56 6:56
83 Chad Brooks 🇨🇦 CAN9th of 245 aged 40-44 40-44 1:11:18 11:01 36:24 27:38 7:21 4:14 1:48 3:49 4:03 4:16 1:43 3:12 4:33
84 Julian Lombardo 🇨🇦 CAN13th of 393 aged 35-39 35-39 1:11:19 11:02 35:16 31:24 4:43 4:06 2:29 4:07 4:35 4:36 1:42 4:19 5:30
85 Paul Doig 🇨🇦 CAN30th of 428 aged 30-34 30-34 1:11:23 11:06 34:31 32:15 4:42 4:20 2:36 7:55 4:42 4:13 1:24 3:08 3:57
86 Jamison Buck 🇨🇦 CAN24th of 277 aged 25-29 25-29 1:11:28 11:11 34:55 31:10 5:28 4:26 2:28 4:14 4:41 4:36 1:24 4:02 5:19
87 Sean Laughlin 🇨🇦 CAN1st of 101 aged 50-54 50-54 1:11:30 11:13 35:58 30:48 4:48 4:36 2:39 3:45 4:10 4:29 1:49 4:33 4:47
88 Matthew Cumming 🇨🇦 CAN3rd of 153 aged 45-49 45-49 1:11:36 11:19 34:51 32:15 4:34 4:44 2:41 4:35 4:17 4:42 1:46 4:22 5:08
89 Killian Campbell 🇮🇪 IRL31st of 428 aged 30-34 30-34 1:11:39 11:22 36:15 30:01 5:26 4:24 2:05 4:12 4:28 4:29 1:39 3:33 5:11
90 Thomas Haight 🇨🇦 CAN14th of 393 aged 35-39 35-39 1:11:42 11:25 37:23 29:05 5:19 4:19 2:17 3:29 4:16 4:29 1:52 3:35 4:48
91 Brendan Roycroft 🇦🇺 AUS15th of 393 aged 35-39 35-39 1:11:51 11:34 34:32 30:52 6:33 4:33 3:07 3:38 3:37 4:46 1:37 4:04 5:30
92 Lucas Warfield 🇺🇸 USA9th of 94 aged 16-24 16-24 1:11:51 11:34 35:28 32:10 4:16 4:33 2:50 4:48 4:16 4:38 2:12 4:14 4:39
93 Philipp Grotrian 🇩🇪 GER32nd of 428 aged 30-34 30-34 1:11:51 11:34 31:58 35:18 4:38 4:34 3:01 4:55 4:42 4:33 2:32 4:39 6:22
94 Bryan Meraviglia 🇺🇸 USA16th of 393 aged 35-39 35-39 1:11:56 11:39 36:33 30:43 4:44 4:19 2:51 4:02 4:03 4:16 1:50 4:35 4:47
95 Kevin Pak 🇨🇦 CAN17th of 393 aged 35-39 35-39 1:11:56 11:39 34:58 32:21 4:41 4:25 2:37 3:32 3:36 4:29 2:31 5:05 6:06
96 William Leroy 🇨🇦 CAN25th of 277 aged 25-29 25-29 1:11:59 11:42 34:20 32:22 5:21 4:30 3:02 4:51 3:19 4:45 2:27 3:53 5:35
97 Marco Saccomani 🇨🇦 CAN26th of 277 aged 25-29 25-29 1:12:00 11:43 38:33 28:15 5:16 4:10 1:53 3:50 4:11 4:23 1:49 3:33 4:26
98 Josh Beech 🇨🇦 CAN33rd of 428 aged 30-34 30-34 1:12:00 11:43 35:06 31:55 5:03 4:35 2:43 4:31 3:58 4:56 2:22 4:00 4:50
99 Dale Bagdon 🇨🇦 CAN4th of 153 aged 45-49 45-49 1:12:04 11:47 35:56 31:19 4:54 4:49 2:15 4:42 4:29 4:32 1:52 4:18 4:22
100 Olivier D'Anjou 🇨🇦 CAN10th of 94 aged 16-24 16-24 1:12:05 11:48 33:08 33:19 5:43 4:34 2:54 4:39 4:01 4:45 1:33 3:13 7:40
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