Athlete · Open Men · 30-34 · ITA ITA

Matteo Petruzzelli

www.roxtimes.com/athletes/matteo-petruzzelli-a71f9718

10 HYROX races over 2 seasons: 8 solo, 2 in a team with 1 partner.

Best Open Men time1:26:31Rome 2026
Best Open Men place1541stof 2,820 · Rome 2026
Latest race1:26:31Rome 2026 · Open MenMatteo's best Open Men time so far
Strongest part of the raceRoxzonefaster than 70% of Open Men at Rome 2026
Personal bests

One best per race type

solo, doubles and relay times are different races, so each has its own best

Finish time, race by race: one race type at a time

Oldest to newest; a line going down means getting faster
1:28:001:32:001:36:001:40:00 best 1:26:31 best 1:26:31 · Rome

This line shows the finish time of Matteo Petruzzelli at each race, oldest on the left; lower is faster.The best was 1:26:31 at Rome (Sep 2026); Matteo Petruzzelli was 16:55 faster at the latest race than at the first.

See the numbers
Race Date Division Finish
Rome Sep 2025 Open Men 1:43:26
Bologna Apr 2026 Open Men 1:39:43
Warsaw Apr 2026 Open Men 1:33:28
Lisbon May 2026 Open Men 1:31:51
Berlin May 2026 Open Men 1:32:10
Rimini May 2026 Open Men 1:32:31
Rome Sep 2026 Open Men 1:26:31

Each dot is one Open Men race; click one for that race's report. From the first Open Men race to the best: 16:55 faster (1:43:26 to 1:26:31).

Every race

10 results at 10 races

Tap a result for its full report
Rome 2026 23 Sep 2026
Race results
Open Men, 30-34 1:26:31 1541st of 2,820; 390th of 648 aged 30-34 40:55 39:28 6:11 Runs 40:55 · Stations 39:28 · Roxzone 6:11

1,541st of 2,820 Open Men (faster than 45%). Against the 84 who finished around 1:26:39: most time gained on the roxzone (1:01), most lost on the eight runs (0:54). Runs 5 to 8 took 0:01 more than runs 1 to 4 (them: 0:25 more).

Matteo Petruzzelli at HYROX Rome 2026, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 2,820 Open Men finishers here who were slower on that part.
Part Time Typical here vs 2,820 Open Men here
Run 1: 5:52 5:48 faster than 46%
SkiErg: 4:53 4:31 faster than 14%
Run 2: 4:34 4:17 faster than 32%
Sled push: 4:00 3:24 faster than 25%
Run 3: 5:05 4:37 faster than 29%
Sled pull: 4:40 4:45 faster than 53%
Run 4: 4:57 4:36 faster than 33%
Burpee broad jump: 5:46 5:30 faster than 44%
Run 5: 5:07 4:46 faster than 35%
Row: 5:02 4:58 faster than 44%
Run 6: 4:48 4:40 faster than 42%
Farmers carry: 2:49 2:11 faster than 18%
Run 7: 4:56 4:41 faster than 38%
Sandbag lunges: 5:18 5:20 faster than 51%
Run 8: 5:38 5:37 faster than 50%
Wall balls: 7:00 6:51 faster than 47%
Roxzone: 6:11 6:55 faster than 70%
Runs (8 km) 40:55 39:17 faster than 39%
Stations (8) 39:28
Finish 1:26:31 1:24:37 1541st of 2,820 · faster than 45%

Full report for this race →This result as data (JSON)

Pro Men, 25-29 1:41:05 193rd of 207; 34th of 36 aged 25-29 43:32 50:35 7:03 Runs 43:32 · Stations 50:35 · Roxzone 7:03

193rd of 207 Pro Men (faster than 6%).

Matteo Petruzzelli at HYROX Athens 2026, Pro Men: every split in race order, the typical split of Pro Men at this race, and the share of the 207 Pro Men finishers here who were slower on that part.
Part Time Typical here vs 207 Pro Men here
Run 1: 5:46 4:35 faster than 4%
SkiErg: 5:01 4:09 faster than 0%
Run 2: 5:02 3:56 faster than 8%
Sled push: 4:28 3:21 faster than 13%
Run 3: 5:27 4:10 faster than 11%
Sled pull: 7:42 4:46 faster than 9%
Run 4: 5:25 4:13 faster than 8%
Burpee broad jump: 6:03 3:57 faster than 11%
Run 5: 5:20 4:15 faster than 10%
Row: 5:01 4:22 faster than 4%
Run 6: 5:20 4:09 faster than 9%
Farmers carry: 3:56 1:56 faster than 2%
Run 7: 5:33 4:13 faster than 5%
Sandbag lunges: 7:25 4:23 faster than 4%
Run 8: 5:41 4:21 faster than 14%
Wall balls: 10:59 5:39 faster than 4%
Roxzone: 7:03 5:46 faster than 24%
Runs (8 km) 43:32 33:56 faster than 8%
Stations (8) 50:35
Finish 1:41:05 1:13:05 193rd of 207 · faster than 6%

Full report for this race →This result as data (JSON)

Open Men, 25-29 1:32:31 1616th of 2,685; 375th of 551 aged 25-29 45:21 41:17 5:57 Runs 45:21 · Stations 41:17 · Roxzone 5:57

1,616th of 2,685 Open Men (faster than 39%). Against the 81 who finished around 1:32:27: most time gained on the roxzone (1:27), most lost on the eight runs (4:02). Runs 5 to 8 took 1:51 more than runs 1 to 4 (them: 1:21 more).

Matteo Petruzzelli at HYROX Rimini 2026, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 2,685 Open Men finishers here who were slower on that part.
Part Time Typical here vs 2,685 Open Men here
Run 1: 4:49 4:41 faster than 41%
SkiErg: 4:40 4:33 faster than 36%
Run 2: 5:17 4:38 faster than 20%
Sled push: 3:52 4:01 faster than 57%
Run 3: 5:49 5:10 faster than 23%
Sled pull: 5:44 5:31 faster than 43%
Run 4: 5:52 5:04 faster than 20%
Burpee broad jump: 6:08 5:41 faster than 39%
Run 5: 5:52 5:07 faster than 22%
Row: 4:55 4:53 faster than 46%
Run 6: 5:34 5:01 faster than 27%
Farmers carry: 2:17 2:19 faster than 52%
Run 7: 5:44 4:59 faster than 20%
Sandbag lunges: 6:50 5:17 faster than 19%
Run 8: 6:28 5:50 faster than 29%
Wall balls: 6:51 7:35 faster than 63%
Roxzone: 5:57 6:39 faster than 67%
Runs (8 km) 45:21 40:52 faster than 26%
Stations (8) 41:17
Finish 1:32:31 1:28:26 1616th of 2,685 · faster than 39%

Full report for this race →This result as data (JSON)

Open Men, 25-29 1:32:10 2687th of 4,143; 500th of 720 aged 25-29 36:31* 41:53* 13:50 Runs 36:31 · Stations 41:53 · Roxzone 13:50

2,687th of 4,143 Open Men (faster than 35%). Against the 124 who finished around 1:32:15: most time gained on the roxzone (1:15), most lost on farmers carry (0:59). Runs 5 to 8 took 4:14 more than runs 1 to 4 (them: 3:36 more).

Matteo Petruzzelli at HYROX Berlin 2026, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 4,143 Open Men finishers here who were slower on that part.
Part Time Typical here vs 4,143 Open Men here
Run 1: 3:20 3:29 faster than 63%
SkiErg: 4:42 4:32 faster than 31%
Run 2: 4:01 3:48 faster than 35%
Sled push: 3:42 3:20 faster than 31%
Run 3: 4:24 4:02 faster than 30%
Sled pull: 5:33 4:20 faster than 16%
Run 4: 4:25 4:03 faster than 31%
Burpee broad jump: 5:28 5:39 faster than 55%
Run 5: 4:41 4:11 faster than 26%
Row: 5:13 4:49 faster than 20%
Run 6: 4:36 4:07 faster than 26%
Farmers carry: 3:29 2:16 faster than 7%
Run 7: 4:39 4:10 faster than 27%
Sandbag lunges: 6:12 5:20 faster than 28%
Run 8: 6:28 6:06 faster than 39%
Wall balls: 7:34 7:00 faster than 41%
Roxzone: 13:50 13:57 faster than 51%
Runs (8 km) 36:31 34:04 faster than 34%
Stations (8) 41:53
Finish 1:32:10 1:26:03 2687th of 4,143 · faster than 35%

Full report for this race →This result as data (JSON)

Open Men, 25-29 1:31:51 896th of 1,304; 206th of 275 aged 25-29 44:47 41:34 5:33 Runs 44:47 · Stations 41:34 · Roxzone 5:33

896th of 1,304 Open Men (faster than 31%). Against the 40 who finished around 1:32:36: most time gained on wall balls (1:26), most lost on the eight runs (1:10). Runs 5 to 8 took 2:50 more than runs 1 to 4 (them: 2:51 more).

Matteo Petruzzelli at HYROX Lisbon 2026, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 1,304 Open Men finishers here who were slower on that part.
Part Time Typical here vs 1,304 Open Men here
Run 1: 4:08 3:45 faster than 28%
SkiErg: 4:54 4:33 faster than 15%
Run 2: 5:17 4:42 faster than 22%
Sled push: 4:00 3:22 faster than 24%
Run 3: 5:46 5:03 faster than 21%
Sled pull: 5:46 4:56 faster than 26%
Run 4: 5:49 5:05 faster than 21%
Burpee broad jump: 5:23 5:20 faster than 48%
Run 5: 5:44 5:12 faster than 30%
Row: 5:03 4:50 faster than 30%
Run 6: 6:06 5:08 faster than 17%
Farmers carry: 3:11 2:19 faster than 14%
Run 7: 5:52 5:07 faster than 22%
Sandbag lunges: 6:45 5:01 faster than 13%
Run 8: 6:08 5:36 faster than 32%
Wall balls: 6:32 6:49 faster than 55%
Roxzone: 5:33 5:50 faster than 56%
Runs (8 km) 44:47 39:57 faster than 25%
Stations (8) 41:34
Finish 1:31:51 1:23:50 896th of 1,304 · faster than 31%

Full report for this race →This result as data (JSON)

Open Men, 25-29 1:33:28 1878th of 2,561; 330th of 416 aged 25-29 49:46 38:22 5:26 Runs 49:46 · Stations 38:22 · Roxzone 5:26

1,878th of 2,561 Open Men (faster than 26%). Against the 77 who finished around 1:34:24: most time gained on burpee broad jump (1:31), most lost on the eight runs (3:12). Runs 5 to 8 took 1:53 more than runs 1 to 4 (them: 1:46 more).

Matteo Petruzzelli at HYROX Warsaw 2026, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 2,561 Open Men finishers here who were slower on that part.
Part Time Typical here vs 2,561 Open Men here
Run 1: 4:28 3:56 faster than 25%
SkiErg: 4:35 4:26 faster than 35%
Run 2: 6:07 5:13 faster than 16%
Sled push: 3:14 2:49 faster than 26%
Run 3: 6:41 5:32 faster than 15%
Sled pull: 5:16 4:21 faster than 19%
Run 4: 6:42 5:31 faster than 13%
Burpee broad jump: 4:44 5:21 faster than 66%
Run 5: 6:48 5:40 faster than 16%
Row: 5:03 4:50 faster than 30%
Run 6: 6:28 5:32 faster than 19%
Farmers carry: 2:39 1:54 faster than 7%
Run 7: 6:47 5:31 faster than 13%
Sandbag lunges: 5:56 4:58 faster than 24%
Run 8: 5:48 4:54 faster than 24%
Wall balls: 6:55 6:24 faster than 40%
Roxzone: 5:26 5:43 faster than 56%
Runs (8 km) 49:46 42:15 faster than 17%
Stations (8) 38:22
Finish 1:33:28 1:23:58 1878th of 2,561 · faster than 26%

Full report for this race →This result as data (JSON)

Open Men, 25-29 1:39:43 1595th of 1,805; 324th of 365 aged 25-29 50:10 42:22 7:15 Runs 50:10 · Stations 42:22 · Roxzone 7:15

1,595th of 1,805 Open Men (faster than 11%). Against the 55 who finished around 1:42:06: most time gained on burpee broad jump (2:15), most lost on the eight runs (4:03). Runs 5 to 8 took 2:15 more than runs 1 to 4 (them: 2:17 more).

Matteo Petruzzelli at HYROX Bologna 2026, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 1,805 Open Men finishers here who were slower on that part.
Part Time Typical here vs 1,805 Open Men here
Run 1: 5:31 4:28 faster than 7%
SkiErg: 4:43 4:33 faster than 31%
Run 2: 5:52 4:33 faster than 5%
Sled push: 3:26 3:00 faster than 24%
Run 3: 6:16 4:57 faster than 9%
Sled pull: 6:04 4:23 faster than 8%
Run 4: 6:20 4:52 faster than 6%
Burpee broad jump: 4:50 5:05 faster than 56%
Run 5: 6:35 4:57 faster than 5%
Row: 5:30 4:46 faster than 5%
Run 6: 6:20 4:50 faster than 6%
Farmers carry: 2:55 2:11 faster than 11%
Run 7: 6:20 4:48 faster than 5%
Sandbag lunges: 7:52 5:07 faster than 6%
Run 8: 7:00 5:23 faster than 10%
Wall balls: 7:02 6:28 faster than 39%
Roxzone: 7:15 6:45 faster than 39%
Runs (8 km) 50:10 38:58 faster than 6%
Stations (8) 42:22
Finish 1:39:43 1:22:04 1595th of 1,805 · faster than 11%

Full report for this race →This result as data (JSON)

Turin 2026 31 Jan 2026
Race results
Doubles Mixed, team 25-29, with Valentina Zamponi 1:23:15 699th of 1,157; 169th of 278 aged 25-29 44:43 31:53 6:44 Runs 44:43 · Stations 31:53 · Roxzone 6:44

699th of 1,157 Doubles Mixed (faster than 39%). Against the 34 who finished around 1:23:11: most time gained on the eight runs (0:58), most lost on sandbag lunges (1:02). Runs 5 to 8 took 2:47 more than runs 1 to 4 (them: 2:29 more).

Matteo Petruzzelli at HYROX Turin 2026, Doubles Mixed: every split in race order, the typical split of Doubles Mixed at this race, and the share of the 1,157 Doubles Mixed finishers here who were slower on that part.
Part Time Typical here vs 1,157 Doubles Mixed here
Run 1: 4:07 4:14 faster than 56%
SkiErg: 4:20 4:19 faster than 48%
Run 2: 5:23 5:20 faster than 48%
Sled push: 2:19 2:19 faster than 51%
Run 3: 5:50 5:34 faster than 38%
Sled pull: 5:00 4:16 faster than 23%
Run 4: 5:40 5:35 faster than 45%
Burpee broad jump: 3:32 3:20 faster than 41%
Run 5: 5:55 5:42 faster than 40%
Row: 5:01 4:54 faster than 39%
Run 6: 5:47 5:37 faster than 43%
Farmers carry: 2:13 1:45 faster than 6%
Run 7: 5:53 5:40 faster than 39%
Sandbag lunges: 5:01 3:54 faster than 14%
Run 8: 6:12 6:03 faster than 44%
Wall balls: 4:27 4:25 faster than 48%
Roxzone: 6:44 6:55 faster than 56%
Runs (8 km) 44:43 44:01 faster than 45%
Stations (8) 31:53
Finish 1:23:15 1:20:39 699th of 1,157 · faster than 39%

Full report for this race →This result as data (JSON)

Doubles Mixed, team 25-29, with Valentina Zamponi 1:23:12 939th of 1,457; 236th of 329 aged 25-29 45:46 30:08 7:23 Runs 45:46 · Stations 30:08 · Roxzone 7:23

939th of 1,457 Doubles Mixed (faster than 35%). Against the 45 who finished around 1:23:21: most time gained on the roxzone (0:38), most lost on sled pull (0:38). Runs 5 to 8 took 1:01 more than runs 1 to 4 (them: 1:22 more).

Matteo Petruzzelli at HYROX Stockholm 2025, Doubles Mixed: every split in race order, the typical split of Doubles Mixed at this race, and the share of the 1,457 Doubles Mixed finishers here who were slower on that part.
Part Time Typical here vs 1,457 Doubles Mixed here
Run 1: 5:28 5:07 faster than 35%
SkiErg: 4:15 4:10 faster than 39%
Run 2: 5:34 5:08 faster than 29%
Sled push: 1:54 1:53 faster than 48%
Run 3: 5:49 5:22 faster than 29%
Sled pull: 4:30 3:40 faster than 15%
Run 4: 5:33 5:24 faster than 41%
Burpee broad jump: 3:29 3:31 faster than 53%
Run 5: 5:45 5:31 faster than 40%
Row: 4:56 4:37 faster than 20%
Run 6: 5:51 5:27 faster than 32%
Farmers carry: 1:56 1:39 faster than 19%
Run 7: 5:48 5:27 faster than 34%
Sandbag lunges: 4:31 3:48 faster than 24%
Run 8: 6:02 5:46 faster than 40%
Wall balls: 4:37 4:34 faster than 48%
Roxzone: 7:23 7:22 faster than 49%
Runs (8 km) 45:46 43:17 faster than 35%
Stations (8) 30:08
Finish 1:23:12 1:19:08 939th of 1,457 · faster than 35%

Full report for this race →This result as data (JSON)

Rome 2025 27 Sep 2025
Race results
Open Men, 25-29 1:43:26 1756th of 1,999; 355th of 396 aged 25-29 49:11 46:42 7:37 Runs 49:11 · Stations 46:42 · Roxzone 7:37

1,756th of 1,999 Open Men (faster than 12%). Against the 60 who finished around 1:45:58: most time gained on wall balls (3:06), most lost on sled pull (1:15). Runs 5 to 8 took 0:45 more than runs 1 to 4 (them: 2:26 more).

Matteo Petruzzelli at HYROX Rome 2025, Open Men: every split in race order, the typical split of Open Men at this race, and the share of the 1,999 Open Men finishers here who were slower on that part.
Part Time Typical here vs 1,999 Open Men here
Run 1: 7:06 5:41 faster than 5%
SkiErg: 4:39 4:29 faster than 32%
Run 2: 5:14 4:15 faster than 10%
Sled push: 2:54 2:56 faster than 52%
Run 3: 5:58 4:34 faster than 7%
Sled pull: 7:41 4:58 faster than 4%
Run 4: 5:57 4:34 faster than 8%
Burpee broad jump: 7:12 5:11 faster than 14%
Run 5: 6:03 4:44 faster than 10%
Row: 5:13 4:53 faster than 23%
Run 6: 5:46 4:36 faster than 11%
Farmers carry: 2:54 2:02 faster than 8%
Run 7: 6:08 4:38 faster than 7%
Sandbag lunges: 8:16 5:19 faster than 6%
Run 8: 7:03 5:30 faster than 15%
Wall balls: 7:53 6:59 faster than 34%
Roxzone: 7:37 6:44 faster than 32%
Runs (8 km) 49:11 38:40 faster than 9%
Stations (8) 46:42
Finish 1:43:26 1:23:07 1756th of 1,999 · faster than 12%

Full report for this race →This result as data (JSON)

How to read

Place is the position among timed finishers in the same race, division and gender; a doubles place is the team's. Runs is the organiser's official run total (it can differ from the eight laps added up by a few seconds), stations the eight stations added up, and roxzone the time moving between them. The age group is the one entered for that race; for a team it is the team’s age group. * At that edition running was under 44% of the typical finish (48% is normal): the timing mats counted some running as station time, so its runs look faster and its stations slower than they were.

Best splits · Open Men

The fastest Matteo has done each station

Part Best Race Typical
SkiErg 4:35 Warsaw 2026 · best of 7 4:34
Sled push 2:54 Rome 2025 · best of 7 3:04
Sled pull 4:40 Rome 2026 · best of 7 4:57
Burpee broad jump 4:44 Warsaw 2026 · best of 7 5:38
Row 4:55 Rimini 2026 · best of 7 4:53
Farmers carry 2:17 Rimini 2026 · best of 7 2:11
Sandbag lunges 5:18 Rome 2026 · best of 7 5:20
Wall balls 6:32 Lisbon 2026 · best of 7 7:03
Runs (8 km) 36:31 Berlin 2026 · best of 7 41:47
Roxzone 5:26 Warsaw 2026 · best of 7 7:23
How to read

Each station's best across Matteo's Open Men races, from different races, against the typical Open Men split. Venues differ (sled carpets, run laps, where the mats sit), so a best can owe something to the venue.

Raced with

1 team partner

From the team results above. A name opens the search: a partner can have more than one page.

Station profile · best Open Men race

Rome 2026, against 2,820 Open Men

Full race report →

Shape of the race

50% top SkiPushPullBBJRowCarryLungesWall ballsRoxzoneRuns
Matteoedge = faster than everyone, centre = slowest

This chart shows where Matteo sat in the field on each part of the race: the edge is faster than everyone, the centre is the slowest.Strongest on Roxzone (faster than 70% of the field), weakest on Ski (faster than 15%).

See the numbers
Part Matteo: faster than
Ski 15%
Push 26%
Pull 53%
BBJ 44%
Row 44%
Carry 19%
Lunges 52%
Wall balls 47%
Roxzone 70%
Runs 40%

Further out means you beat more of the field on that part. A dent is a weak spot.

How you ranked on each station

SkiErg faster than 15%
Sled push faster than 26%
Sled pull faster than 53%
Burpee broad jump faster than 44%
Row faster than 44%
Farmers carry faster than 19%
Sandbag lunges faster than 52%
Wall balls faster than 47%
Roxzone faster than 70%
Runs (8 km) faster than 40%

How much of the field Matteo beat on each part of the race, at this race.Best: Roxzone (faster than 70%); weakest: SkiErg (faster than 15%).

Longer is better: the share of the field you beat.

Minutes against the typical finisher

SkiErg 0:22 slower
Sled push 0:36 slower
Sled pull 0:05 faster
Burpee broad jump 0:16 slower
Row 0:04 slower
Farmers carry 0:38 slower
Sandbag lunges 0:02 faster
Wall balls 0:09 slower
Roxzone 0:44 faster
Runs (8 km) 1:38 slower

Matteo's time on each part against the typical Open Men finisher at this race.Best: Roxzone (0:44 faster); weakest: Runs (8 km) (1:38 slower).

Green, left of centre: faster than the typical Open Men finisher at this race. Orange, right: slower, and by how much.

The race as one bar: Matteo against the typical Open Men finisher

Matteo1:26:31
5:524:534:344:005:054:404:575:465:075:024:482:494:565:185:387:006:11
Typical Open Men1:23:27
5:484:314:173:244:374:454:365:304:464:584:402:114:415:205:376:516:55
RunsStationsRoxzone (moving between stations)

This chart draws the race in order, left to right: each 1 km run (blue), each station (yellow) and the roxzone (grey), sized by its time.Matteo: 40:57 running, 39:28 at the stations and 6:11 in the roxzone; the longest station was the wall balls (7:00).Below, Typical Open Men: 39:02 running, 37:30 at the stations and 6:55 in the roxzone; the longest station was the wall balls (6:51).

See the numbers
Part Matteo Typical Open Men
Run 1 5:52 5:48
SkiErg 4:53 4:31
Run 2 4:34 4:17
Sled push 4:00 3:24
Run 3 5:05 4:37
Sled pull 4:40 4:45
Run 4 4:57 4:36
Burpee broad jump 5:46 5:30
Run 5 5:07 4:46
Row 5:02 4:58
Run 6 4:48 4:40
Farmers carry 2:49 2:11
Run 7 4:56 4:41
Sandbag lunges 5:18 5:20
Run 8 5:38 5:37
Wall balls 7:00 6:51
Roxzone 6:11 6:55
Finish 1:26:31 1:24:37

The race in order, left to right. A wider block than the one below is slower than typical.

Farmers carry cost 0:38 against the typical Open Men finisher at Rome 2026. The farmers carry guide shows whether that is strength or pacing, and the workouts that fix it.

Is this you?

Get your next race report by email

One email the night your next race is processed, with your full report. Nothing else, unsubscribe with one tap.

The RoxHype app

Fix farmers carry. Then beat 1:26:31.

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
See my race report