HYROX Stockholm 2025: Open Men results

1,805 finishers on 18 Dec 2025. Typical finish 1:24:46, fastest 10% under 1:09:13. Back to the analysis.

#AthleteAgeTimeRunsStationsRoxSkiPushPullBBJRowCarryLungeWB
1 Erik Woodward 🇳🇴 NOR 30-34 1/347 0:55:44 28:0623:144:28 3:521:552:532:573:591:062:413:51
2 Aljaž Ploj 🇸🇮 SLO 25-29 1/280 0:55:54 25:2526:104:23 3:592:003:213:164:091:332:584:54
3 Reece Mc Ginley 🇮🇪 IRL 25-29 2/280 0:55:59 28:0323:284:33 4:082:052:522:524:081:202:433:20
4 Oskar Karlsson 🇸🇪 SWE 16-24 1/190 0:57:05 28:3323:454:52 3:542:113:012:494:021:242:533:31
5 Adrian Lindgren 🇳🇴 NOR 25-29 3/280 0:57:34 28:3924:274:33 4:001:583:003:173:581:182:534:03
6 Matas Gedziunas 🇱🇹 LTU 16-24 2/190 0:57:42 28:4724:154:45 3:592:053:083:094:041:152:593:36
7 Burak Edis Emiroğlu 🇹🇷 TUR 30-34 2/347 0:58:17 28:3024:475:06 4:042:162:592:334:111:312:594:14
8 Tom Jones 🇬🇧 GBR 30-34 3/347 0:58:54 29:0923:565:53 3:421:462:253:403:551:083:184:02
9 Pontus Petrelius Risberg 🇸🇪 SWE 30-34 4/347 0:59:05 28:5725:115:02 3:571:183:004:024:071:253:004:22
10 Iain Irving 🇬🇧 GBR 40-44 1/234 0:59:23 30:0724:105:10 4:081:593:012:424:171:302:413:52
11 David Queiroz 🇵🇹 POR 30-34 5/347 0:59:38 29:4325:034:55 3:552:123:012:524:141:403:084:01
12 Tyler Spence 🇬🇧 GBR 30-34 6/347 0:59:44 29:0026:084:41 4:062:013:243:524:111:302:294:35
13 Johan el Bitar 🇫🇷 FRA 25-29 4/280 0:59:52 29:0326:054:49 4:041:503:073:514:181:203:234:12
13 Andreas Fransén 🇸🇪 SWE 16-24 3/190 0:59:52 29:0126:144:42 4:071:463:433:394:131:183:333:55
15 Fabian Schuster 🇦🇹 AUT 30-34 7/347 1:00:04 29:2726:024:40 4:051:513:273:324:161:213:154:15
16 Owen Drew 🇬🇧 GBR 30-34 8/347 1:00:09 28:5326:324:48 3:551:523:193:534:021:563:174:18
17 Ryan Waterhouse 🇬🇧 GBR 25-29 5/280 1:01:02 29:5826:244:44 3:552:113:383:434:041:293:114:13
18 Sam Dewar 🇬🇧 GBR 35-39 1/324 1:01:17 30:4625:434:53 4:092:233:093:184:111:442:494:00
19 Joshua Lewis 🇬🇧 GBR 16-24 4/190 1:01:33 28:3828:064:52 4:111:523:263:264:201:212:496:41
20 William Samuelsson 🇸🇪 SWE 30-34 9/347 1:01:36 30:4925:574:55 3:511:473:023:324:121:213:194:53
21 Julian Lehrer 🇩🇪 GER 35-39 2/324 1:01:38 30:2525:575:21 3:532:022:503:484:221:273:304:05
22 Julien Demarteau 🇧🇪 BEL 30-34 10/347 1:01:55 30:4025:525:27 4:162:043:542:534:141:143:313:46
23 Antoine Boulai 🇫🇷 FRA 30-34 11/347 1:02:00 29:5627:065:02 4:102:023:323:364:091:223:065:09
24 Daire Plunkett 🇮🇪 IRL 35-39 3/324 1:02:04 29:0327:505:15 4:072:153:494:034:261:193:244:27
24 Adam Treschow 🇸🇪 SWE 45-49 1/198 1:02:04 29:1227:315:24 4:051:433:293:184:101:193:256:02
26 Joona Karonen 🇫🇮 FIN 30-34 12/347 1:02:06 30:1626:345:21 4:071:383:113:554:151:243:384:26
27 Marcus Karlsson 🇸🇪 SWE 30-34 13/347 1:02:08 31:2625:554:51 4:052:203:053:324:091:283:183:58
28 Jérémy Espagnol 🇫🇷 FRA 30-34 14/347 1:02:09 29:4327:125:18 4:111:573:233:234:241:433:544:17
29 Djibril Diallo 🇫🇷 FRA 35-39 4/324 1:02:25 31:5024:505:50 3:572:103:103:074:151:363:253:10
30 Linus Holmsäter 🇸🇪 SWE 40-44 2/234 1:02:27 29:1028:294:54 4:041:493:363:484:151:343:375:46
31 Andre Sødlund 🇳🇴 NOR 25-29 6/280 1:02:30 31:0526:354:56 4:141:513:303:374:231:283:204:12
32 Dirk Schulke 🇩🇪 GER 35-39 5/324 1:02:35 31:4725:265:28 4:042:183:163:104:151:263:323:25
33 Tor Leander 🇸🇪 SWE 25-29 7/280 1:02:37 31:5125:125:38 3:471:523:153:434:091:213:073:58
34 Gordon Bieling 🇩🇪 GER 40-44 3/234 1:02:41 30:5226:505:05 4:002:052:573:444:201:373:554:12
35 Gustav Bertelsen 🇩🇰 DEN 16-24 5/190 1:02:45 31:3326:045:13 4:021:593:223:434:101:423:333:33
35 Guille Mariscal 🇪🇸 ESP 35-39 6/324 1:02:45 31:0826:255:17 4:052:283:183:144:231:473:233:47
37 Jack Mullane 🇮🇪 IRL 25-29 8/280 1:02:57 31:0726:545:01 4:152:113:263:234:171:462:584:38
38 Vinzent Torstensson 🇸🇪 SWE 25-29 9/280 1:03:02 33:1024:345:23 3:562:043:053:073:491:283:253:40
39 Sylvianno Lortal 🇫🇷 FRA 25-29 10/280 1:03:05 31:0727:094:53 4:062:303:073:304:161:253:484:27
40 Valerio Sicurella 🇮🇹 ITA 40-44 4/234 1:03:13 29:0529:324:41 4:142:124:164:334:291:224:234:03
41 Simon Foss Jensen 🇩🇰 DEN 35-39 7/324 1:03:15 28:1330:124:54 4:192:044:064:344:031:594:314:36
42 Loïc Manine 🇫🇷 FRA 25-29 11/280 1:03:16 29:2528:574:59 4:002:183:254:084:151:333:485:30
43 Hippolyte Goueslain 🇫🇷 FRA 16-24 6/190 1:03:19 30:3527:455:04 4:222:473:283:034:201:433:524:10
44 Damien Brenard 🇧🇪 BEL 30-34 15/347 1:03:25 29:3229:124:46 4:132:003:053:384:221:295:105:15
45 Tobias Jäger 🇸🇪 SWE 35-39 8/324 1:03:27 28:3529:395:18 4:021:583:253:534:131:174:086:43
46 Jan Agertoft Nielsen 🇩🇰 DEN 40-44 5/234 1:03:31 30:4627:075:43 3:532:193:144:024:331:223:264:18
46 Alexander Aristia Rojas 🇸🇪 SWE 30-34 16/347 1:03:31 32:3025:375:26 4:001:413:033:074:111:503:463:59
48 Robin Forest 🇫🇷 FRA 25-29 12/280 1:03:46 31:0327:335:14 4:122:513:273:024:281:273:434:23
49 Teun Alberts 🇳🇱 NED 30-34 17/347 1:03:53 31:2227:135:21 4:032:073:214:354:181:333:303:46
50 Anders Lillhager 🇸🇪 SWE 35-39 9/324 1:03:56 30:4427:495:28 4:012:133:153:474:131:443:514:45
51 Kristoffer Hjärtström 🇸🇪 SWE 35-39 10/324 1:04:04 31:3027:275:12 4:062:023:204:304:141:323:234:20
52 Jad Cherqaoui 🇲🇦 MAR 16-24 7/190 1:04:06 30:1428:485:08 4:142:313:513:104:251:443:544:59
53 Fredrik Olsson 🇸🇪 SWE 40-44 6/234 1:04:10 30:4927:545:33 4:052:113:423:544:141:183:534:37
54 Callum Crosby 🇬🇧 GBR 25-29 13/280 1:04:14 32:1326:335:33 4:072:103:223:374:181:303:234:06
54 Ludvig Nilheim 🇸🇪 SWE 45-49 2/198 1:04:14 30:5428:225:04 3:581:463:304:114:311:273:555:04
56 Markus Norberg Väyrynen 🇸🇪 SWE 25-29 14/280 1:04:19 32:3625:156:34 4:072:123:243:164:221:313:033:20
57 Romain Maleuvre 🇫🇷 FRA 25-29 15/280 1:04:24 32:1227:145:03 4:012:143:393:344:201:403:414:05
57 Jakob Sande 🇳🇴 NOR 35-39 11/324 1:04:24 30:4128:385:10 4:092:213:574:334:201:203:364:22
59 Søren Sandager Petersen 🇩🇰 DEN 35-39 12/324 1:04:26 33:2625:415:25 4:092:143:023:254:091:223:493:31
60 Romain Marchese 🇫🇷 FRA 35-39 13/324 1:04:36 30:1229:294:59 4:182:203:293:374:281:453:435:49
61 Michael Girvan 🇬🇧 GBR 30-34 18/347 1:04:40 31:5627:485:02 4:042:173:363:134:311:413:294:57
62 Mark Abbott 🇮🇪 IRL 25-29 16/280 1:04:48 30:1229:205:20 4:222:213:513:434:491:334:014:40
63 Charel Tanson 🇱🇺 LUX 16-24 8/190 1:04:50 32:2527:045:24 4:051:573:263:534:151:523:034:33
64 Jordan Douglas Peters 🇦🇺 AUS 30-34 19/347 1:04:51 30:3328:535:30 4:062:024:123:294:311:443:045:45
65 Brandon Hassan 🇮🇪 IRL 16-24 9/190 1:04:52 32:0027:525:06 4:302:063:293:144:341:293:454:45
66 Daniel Widjaja 🇨🇭 SUI 40-44 7/234 1:05:02 32:0527:425:20 4:242:403:263:274:161:373:404:12
67 Brun Keller 🇩🇪 GER 30-34 20/347 1:05:08 32:1827:235:32 4:092:263:074:024:191:423:314:07
68 William Briend 🇫🇷 FRA 25-29 17/280 1:05:10 30:2828:575:50 4:012:024:054:094:111:143:475:28
69 Louis Belson 🇬🇧 GBR 30-34 21/347 1:05:11 31:3628:175:24 4:002:183:533:264:141:313:455:10
70 Mantas Jencius 🇱🇹 LTU 30-34 22/347 1:05:13 33:1726:265:35 4:011:523:233:424:071:243:064:51
71 Sam Unsworth 🇬🇧 GBR 30-34 23/347 1:05:20 31:2228:055:58 4:192:233:293:544:331:293:454:13
72 Andrey Kalinin HYROX 45-49 3/198 1:05:26 29:1930:225:50 4:042:483:564:404:261:193:555:14
73 Enzo Jacomino 🇫🇷 FRA 25-29 18/280 1:05:28 33:4326:105:41 4:042:143:113:424:161:273:303:46
74 Hampus Ericson 🇸🇪 SWE 25-29 19/280 1:05:29 31:1028:505:35 4:082:203:444:364:211:443:374:20
75 Alex Rodríguez Tynninen 🇸🇪 SWE 25-29 20/280 1:05:31 28:5830:575:41 4:043:033:144:214:241:284:066:17
76 Ioannis Papikas 🇬🇷 GRE 35-39 14/324 1:05:36 32:3726:376:26 4:062:023:423:104:161:282:445:09
77 Joacim Lundqvist 🇸🇪 SWE 35-39 15/324 1:05:41 31:2728:495:30 4:072:333:463:404:221:124:374:32
78 Mohammad Jafar 🇰🇼 KUW 35-39 16/324 1:05:42 31:4028:585:09 4:022:504:044:194:201:443:094:30
79 Patrick Paul 🇩🇪 GER 40-44 8/234 1:05:46 31:0829:275:16 4:062:063:123:324:281:423:406:41
80 Marcel Arnold 🇨🇭 SUI 40-44 9/234 1:05:48 31:4628:555:12 4:132:333:444:074:271:263:304:55
81 Kyle Whitelaw 🇬🇧 GBR 25-29 21/280 1:05:51 30:2330:265:06 4:132:313:323:424:151:344:336:06
82 Calum Hepworth 🇬🇧 GBR 25-29 22/280 1:05:52 32:1827:495:50 3:562:143:474:114:352:042:424:20
83 Olly Luck 🇬🇧 GBR 16-24 10/190 1:05:55 31:1029:345:14 4:172:443:543:264:251:563:584:54
84 Per-Johan Svensson 🇸🇪 SWE 55-59 1/65 1:05:57 30:0830:375:16 4:112:103:584:524:311:493:545:12
85 Max Åberg 🇸🇪 SWE 16-24 11/190 1:06:01 31:4028:545:31 4:282:313:313:314:291:503:255:09
86 Anders Kjellen 🇳🇴 NOR 45-49 4/198 1:06:06 33:0227:365:32 3:591:593:134:114:031:283:524:51
87 Alberto Palacios 🇲🇽 MEX 16-24 12/190 1:06:12 31:0029:535:24 4:322:204:213:384:321:244:144:52
88 Jossian Doignon 🇫🇷 FRA 25-29 23/280 1:06:13 32:2628:405:13 4:232:133:243:354:241:354:184:48
88 Markus Kainberger 🇦🇹 AUT 25-29 23/280 1:06:13 32:4027:475:50 4:052:023:234:014:091:194:164:32
90 Guy Estoppey 🇨🇭 SUI 35-39 17/324 1:06:16 30:1330:505:16 4:042:373:504:134:161:304:435:37
90 Bosse Mildner 🇩🇪 GER 16-24 13/190 1:06:16 32:2428:315:25 4:192:303:194:034:171:393:334:51
92 Floris van Drunen 🇳🇱 NED 30-34 24/347 1:06:17 30:1131:105:00 4:182:224:214:094:221:324:215:45
93 Benedikt Seeger 🇩🇪 GER 35-39 18/324 1:06:18 31:5228:515:39 4:112:333:413:314:271:333:405:15
94 David Bustos 🇸🇪 SWE 45-49 5/198 1:06:23 32:5827:186:10 3:592:173:303:384:081:233:334:50
95 Sami Kiehelä 🇫🇮 FIN 40-44 10/234 1:06:26 31:5129:075:32 4:022:233:354:014:181:374:085:03
96 Daniel Schmitt 🇩🇪 GER 30-34 25/347 1:06:30 31:1029:515:33 4:242:273:374:274:261:343:475:09
97 Patrik Bohman 🇸🇪 SWE 45-49 6/198 1:06:31 31:3928:416:14 3:571:543:104:124:061:464:315:05
97 Sebastian Karlsson 🇸🇪 SWE 30-34 26/347 1:06:31 31:2330:134:59 4:052:083:544:044:251:223:376:38
97 Martin Puumalainen 🇸🇪 SWE 50-54 1/117 1:06:31 32:2527:586:13 4:102:273:204:294:161:223:514:03
100 Nikolaus Kalina 🇦🇹 AUT 30-34 27/347 1:06:32 33:0427:595:34 4:021:473:324:184:121:503:544:24

Rank is the finishing position within Open Men among timed finishers. The number after the age group is the position within that age group. Station splits are in minutes:seconds.

The RoxHype app

Found your line? Now make it faster.

The app reads your splits, your kit and your next race date and builds the weeks between.

  • Every session written for your weak station, not a generic plan
  • Rebuilt each week from what you actually did
  • Race-day pacing from your own splits

Free to download. Used by more than 40,000 HYROX athletes.

The RoxHype app: today's session and the race countdown The RoxHype app: the workout library
Find my result