{
  "$type": "site.standard.document",
  "coverImage": {
    "$type": "blob",
    "ref": {
      "$link": "bafkreihvflyhjknzmf3r2lwf2e4lii4ejinvl3tcwjku7wzry3xbawepva"
    },
    "mimeType": "image/jpeg",
    "size": 154485
  },
  "description": "My last dance in St. George turned out to be the hardest race I've done so far.",
  "path": "/2025/05/13/race-report-2025-ironman-70-3-st-george/",
  "publishedAt": "2025-05-13T18:00:00.000Z",
  "site": "at://did:plc:vmxpdybfbj3ogs4w6p5pjhhs/site.standard.publication/self",
  "tags": [
    "Ironman 70.3",
    "Race Reports",
    "Triathlon"
  ],
  "textContent": "I wish I had known at the time how good I had it the first time I raced in St. George. I struggled with the ice-cold swim and knee pain on the run, but the weather was absolutely perfect that day and I cruised to a sub-6 finish, in spite of the challenging course. It quickly became my favorite race. I got a taste of the real St. George last year. I went with an aggressive goal of improving on that sub-6 result; I was confident I could achieve that despite the sweltering heat on race day, with just some minor tweaks to my pacing plan. I was wrong, so wrong. The heat clobbered me on the bike and I completely fell apart on the run---it was my worst result in a 70.3 to date. Of course, I immediately signed up for this year's edition, which as it turns out, will be the last one for now. So, one last dance in St. George. I hoped for cool weather again, but as race day approached it became clear that wasn't in the cards---the weather forecast for race week saw steadily rising temperatures, with a blistering high of 34.4ºC on race day, even worse than last year. With that, my race goals went from \"personal best\" to \"just finish,\" with a stretch goal of \"no regrets.\" Read on for my last race report from the final edition of Ironman 70.3 St. George. Pre-race preparations I arrived in St. George the Thursday before the race, and stayed at the Best Western Coral Hills, just a couple blocks away from the Ironman Village. After checking into the hotel and dropping off my stuff, I walked over to check in for the race and do some shopping at the race expo. By the time I was done, it was still light out and fairly warm, at 29ºC, so I went back to my room to change into running clothes and do a quick thirty-minute shakedown run in the sun. That got my heat adaptation score in Garmin Connect to a whopping 16%, which made me wish I could have traveled to St. George a few days earlier to get a little bit more heat training. Race day promised to be even warmer; by now the high in the forecast had risen to 35ºC, but other than occasionally training indoors over the winter with base layers on, and spending some time in the sauna and hot tub at the gym, that one run was the full extent of my heat training, and it would have to do. This race does a split transition, with T1 in Sand Hollow State Park and T2 in downtown St. George, so as part of the check-in process I received morning clothes and gear bags, similar to a full-distance Ironman. I spent the next morning getting my bags ready, which I packed as such: Morning clothes bag Two pairs of Roka R1 swim goggles (one as a spare, just in case) Swim cap Two bottles of Maurten Drink Mix 320 for the bike leg An aero bottle with water for the bike leg A bottle of water to rinse my feet in T1 A small Pelican case to stash my phone and hotel room key TriSlide spray A Maurten Gel 100 to eat before the swim Two Maurten Gel 160 to stash in my bike's bento box Garmin Edge 1050 bike computer Polar H10 heart rate monitor Timing chip Headlamp Bike gear bag Giro Aerohead helmet Shimano S-Phyre SH-TR903 shoes Socks Rapha Pro Team gloves A sports towel A travel-size can of SPF 50 sunscreen Run gear bag Race belt with my bib Hat Hoka Cielo X1 2.0 shoes Roka Matador Air sunglasses An extra pair of socks A sports towel A travel-size can of SPF 50 sunscreen Later in the afternoon, I walked over to the Ironman Village to listen to the pre-race briefing and drop off my run gear bag, and then drove to Sand Hollow State Park to check in my bike and gear bag in T1, same process as in previous years. As I drove there, my car’s thermometer said it was 36ºC outside; I wondered what it would be like to run in that heat. It was so hot in Sand Hollow, after I racked my bike I kneeled down to let some air out of the tires and burned myself on the pavement almost instantly. Ouch. My bike, racked in T1. It was tight there on race day. After scoping out the layout of the transition area and memorizing the location of my bike, I hung around for a few minutes talking to some folks and checking out the pros’ bikes---Sam Long’s bike looks incredible in person. I also took the opportunity to chat with the referees and ask them about the new World Triathlon hydration rules, since my front hydration setup had been rendered illegal. They confirmed that Ironman would adopt them and start enforcing them on May 25th, so I was in the clear for now, but I'll have to come up with a solution before my next race. Afterwards, I picked up my timing chip before heading back to the hotel to have dinner, double-check the rest of my gear, prepare my bottles of Maurten, take a relaxing bath, and try to get a good night’s sleep. Thankfully, I slept like a rock. I woke up at 3:00 AM on race morning, had my usual breakfast of a plain bagel with jam and a cup of coffee, and killed some time before heading out to catch one of the shuttles to Sand Hollow. I arrived there shortly before 6:00 AM, and found transition far more crowded than in the past two years; the announcer said there were 2,400 age group athletes. I’ve never had trouble pumping up my tires before a race, but this time every single pump around the perimeter of the transition area had at least a dozen people in line---if an spectator hadn’t generously offered me his pump, I probably wouldn’t have had time to do it before transition closed. T1 at Sand Hollow State Park, 6:35 AM, 16.7ºC. After setting up my bike and putting on my wetsuit, I handed over my morning clothes bag to a volunteer and lined up with the 43–46 minute group in the staging area, which was packed so tightly I could barely move. It took me about an hour to get down to the water, and by then I was sweating profusely under my wetsuit, which made me really look forward to a nice, cold swim for once. The swim I always come to this early-season race less prepared than I’d like for the swim. It’s just hard for me to swim consistently in the winter; the only lap pool in town, at the Teton County Rec Center, is about a thirty-minute drive away, its hours are limited, it closes for two weeks over spring break, and there’s always something else, like lifeguard shortages or construction or whatever. This year was no exception---a month before the race, the lap pool closed until further notice due to a mechanical failure, leaving me without a place to swim. I almost pulled out of the race altogether, but I found out that the Athletic Club, one of the fancy gyms in Jackson, has an Endless Pool, so for the past month I’ve been swimming there a few times a week. It’s expensive, but it may have been a blessing in disguise; the hours are more flexible, so I’ve been swimming more often and more consistently than if I had kept using the lap pool. I was curious if that additional volume and consistency would have an effect on my race day pace. It was time to find out. My race started at 7:48 AM, and the water felt great as soon as I dived in; if there’s one silver lining to this year’s hot weather it’s that the water at Sand Hollow had warmed up to a lovely 19.2ºC. I wore my Roka Maverick Pro II sleeveless wetsuit, but it only took me a few strokes to get used to the cold and get to work. Sighting on the outbound leg was as difficult as usual, with the buoys aligned with the rising sun, so for the most part I followed other swimmers and hoped they could see better than me, and with a race this crowded, there was no shortage of people to follow. The \"washing machine\" effect was non-stop from start to finish. I had a hard time swimming through the crowd, which slowed me down quite a bit---I need to get more comfortable swimming over people, but it is what it is. Things got a little easier after the first turn buoy; it was still crowded, but without the sun in my face, I had an easier time sighting the buoys, so I was able to distance myself a bit from other people. After passing the last buoy, I pointed myself towards the swim exit and let it rip for one last sprint. I got so into the zone that it took me a while to notice the washing machine effect had stopped; there was no one around me, except a volunteer in a kayak waving at me. That’s when I realized I had gone off course, and the last buoy I saw wasn’t actually the last one---there was one more, and I was about to pass it, illegally, on the wrong side. Oops. You can see my brief detour near the end there. After a quick course correction to pass that buoy on the correct side, I rejoined the crowd and got one last beatdown before sprinting for real towards the exit, finishing the swim in 40:36. That... didn’t seem right. I had to wait until after the race to look at the distance and the GPS track to make sure I hadn’t accidentally cut the course or something, because I couldn’t believe that time when I looked at my watch. Despite my issues sighting, the crowds, and going off course, this was still my fastest 70.3 swim ever---I shaved almost seven minutes from last year’s time. I don’t care how much it costs, I’m gonna keep using this Endless Pool. Holy shit. T1 After exiting the water, I got my wetsuit ripped off by the wetsuit strippers before jogging through transition. I wasn’t chasing a PR, so I took a few minutes to calmly use the porta-potty, get all my bike gear on, spray on a good layer of sunscreen, pack my swim gear into my bike bag, and leave. I spent 11:04 in T1. The bike I was worried about the bike leg coming into this race. A year ago I thought I had appropriately adjusted my plan to account for the heat, and I was wrong---I still went too hard, my digestion started to shut down, and with my fueling plan shot, I fell apart on the run. It was a miserable slog from start to finish and I ended up walking most of the way. I wanted to avoid that happening again at all costs, but with a high of 35ºC, I would need to go much, much slower. For 70.3 races, I usually target an intensity of 84% intensity knowing that in practice I’ll end up a little lower than that; last year I revised that down to 80% and it was still too much, so for this year I decided not to have a target at all and instead go by feel. I set up a power guide in my bike computer with a target intensity of 75% anyway, but not with the goal of following it, but to make sure I didn’t exceed that. I could always go harder on the run, but if I overcooked the bike again, I'd be fucked. For this race, I brought my Trek Speed Concept to St. George for the first time, after doing the previous races on my Specialized Aethos road bike. I considered bringing the Aethos again, along with my S-Works Evade 3 road helmet---the former because it’s great in the climbs, the latter because it’s cooler than my Giro Aerohead aero helmet---but in the end decided that if I was going to ride at a lower intensity, then I should make up for it by chasing every aero gain I could, no matter how marginal, and try to get a few minutes back. Looking at the forecast for the day, it looked like I'd be starting the run just as the temperature started to get above 32ºC, so those minutes could make a difference. For nutrition, I had two 24-ounce bottles with Maurten 320 drink mix between my aerobars, and 26 ounces of water in my bike's downtube aero bottle, which I don’t particularly love, but I thought I’d need the extra hydration and didn’t want to waste time slowing down at the aid stations. I also had two Maurten Gel 160 in my bento box, just in case I accidentally dropped a bottle. View this course in Garmin Connect or Strava. The bike course was almost the same as in previous years, leaving Sand Hollow and following the local highways along the spectacular desert views of southern Utah, before getting back to St. George for the roughly 8 km climb through Snow Canyon State Park. This year the long out-and-back segment through Ivins before starting the Snow Canyon climb was removed; instead, the initial out-and-back on SR-7 after leaving Sand Hollow was made a little longer, and a short out-and-back was added at roughly the halfway point. It was otherwise the same; a very hilly course, with 1,090 m of elevation gain---I love hilly courses. For the most part it's a safe course, with lots of road closures and tons of space between the athletes and car traffic, but there are a handful of narrow sections where it felt a little risky to pass folks, especially given how large the field was. Shortly after leaving Sand Hollow. | Credit: FinisherPix Once I left Sand Hollow State Park and got on SR-7 for the first out-and-back, I realized my strategy of pacing on vibes was the right one---the bike course was so crowded, with people often riding three or four abreast, trying to follow any kind of pacing plan would have been next to impossible. My plan was to take it easy, so I took it easy, passing when I could, coasting when I couldn’t, doing my best to stay out of draft zones, and trying to stay in aero as much as possible. Passing was easier on the climbs, although I resisted the temptation to go too hard on them. Overall, it was a chill, uneventful ride. The pavement was smooth, with some of the roads freshly paved, and I didn’t really feel the heat until the tail end of the ride, especially during the climbs, where I was glad I had that extra water in the aero bottle to drink and pour on myself. I made a point to take in the views one last time, especially in Snow Canyon, where the landscape is nothing short of otherworldly. I was grateful to have one last chance to enjoy riding through that incredible landscape. Tired as I was, I went back to Snow Canyon for a short hike the day after the race. | Petrified Dunes, Snow Canyon State Park, Utah. May, 2025. The Snow Canyon climb is approximately 8 km long, with about 300 m of elevation gain and an average grade of 4%. By the time I got there, the temperature was well over 32ºC; in other circumstances I would have loved to send it all the way to the top, but I had paced at a very easy 65% intensity, I had no issues so far with my fueling or my digestion, and I wanted to keep it that way. It was sweltering, with not even a hint of a breeze, and I saw a lot more people struggling with the climb than in previous years, either walking their bikes, or just sitting on the side of the road. Despite my slower pacing, it only took me two minutes longer than last year to complete the climb, although I was overheated and drenched in sweat from head to toe by the time I got to the top. I stopped at the aid station there and drank an entire bottle of water while a volunteer squeezed another one all over me; I hoped that would be enough to cool me down on the roughly 16 km descent back into St. George and T2. The elevation profile for the bike course. The temperature at the end was 36ºC. I thought that’d be an easy ride down, but that descent was ass-puckering, to say the least. I've never had any trouble blasting down this descent on my road bike, but I’m still a chickenshit when it comes to descending on a tri bike. It just feels twitchy and wobbly; coming down this road on a narrow lane with car traffic on both sides and feeling like I was barely in control of my bike is one of the scariest things I’ve ever done. Despite that, I somehow rode down fifteen seconds faster than last year, the only Strava segment where I got a PR on this race. I made it down safely and finished the bike leg in 3:08:13, over ten minutes slower than last year, but... I don’t care. Could I have gone harder? Probably, but I felt good, I was properly fueled, my stomach was behaving, and I was ready to empty the tank on the run. I’ll take that as a win. T2 When I got to the dismount line in T2, I rolled up next to someone hunched over her bike, being helped by a couple spectators; I don’t know if she was suffering from heat exhaustion or something else, but she seemed in pretty bad shape. I flagged one of the volunteers nearby, hurried to rack my bike, and then ran across transition to the medical tent to let them know someone needed help. Once I saw her being tended to, I walked back to my spot and sat for a couple of minutes to catch my breath while I changed into running gear, reapplied sunscreen, and packed my bike gear into the bag. I didn't have the presence of mind to make a note of her bib number, but I hope she's okay. I spent 11:10 in T2. The run This was a motherfucker of a run. I don’t know how else to put it. The course was the same as last year: Two laps around downtown St. George with 279 m of elevation gain in total. It starts with a short, steep segment through Main Street, with an average grade of 4.5%, followed by a long segment along Diagonal Street, with a milder grade of 1.2%. Then, after crossing the pedestrian tunnel under Bluff Street, there’s a short loop on the other side before coming back for a hilly loop around Dixie Red Hills Golf Club, partly on grass. Finally, it heads back downtown on Diagonal Street to either start the second lap or turn towards the finish line. In short, the first half of each lap is mostly uphill, the second half is mostly downhill. View this course in Garmin Connect or Strava. The heat was already oppressive by the time I left T2, and with no shade and most of the run on hot pavement, it only got worse. I started the run feeling good, right until I hit the first uphill segment. I felt absolutely terrible running uphill, right off the bike, with the heat radiating off the pavement; my legs felt like they weighed a ton each. I was less than ten minutes into the run and I was already having serious doubts that I could even finish. I thought about walking the rest of the way, but that felt like giving up, and I knew how pissed I would be at myself later on if I didn’t give it everything I had. I resolved to keep running and walk only through the aid stations, which at Ironman races are roughly a mile apart. Just one mile between them. One mile is nothing. Barely a workout. I could easily run one mile. I simply needed to do it thirteen times in a row. No big deal. Easy. I pressed on. Although I was pacing entirely on feels, I never slowed down to a walk, except at the aid stations, so I could make the most of them. I had a cup of water at the start and end of each one, a Maurten Gel 100 roughly every thirty minutes, shoved ice down my trisuit until they ran out, and dunked my hat in the buckets full of ice water they had set up for that purpose, which felt glorious on my head. I also took every opportunity to let the volunteers with garden sprayers and the spectators with hoses and water guns douse me with water, and let the evaporative cooling do its thing. I didn’t have any cramping or other signs of electrolyte issues, but drank a few cups of Mortal Hydration along the way just in case. I pushed through that first half of the first lap, and by the second half, once I got back on the downhill portion of Diagonal Street, I felt renewed, like I got a second wind. Still, I kept up with my hydration and fuel plan, and kept taking advantage of every opportunity to cool down. That second wind evaporated the moment I started the second lap and started running up Diagonal Street again---the \"second wind\" was simply because I was going downhill. I told myself I only needed to run half the lap. Just half the lap. Just get through the golf course and it’d be all downhill from there. Just half the lap and I’d get another \"second wind.\" Just half the lap and the rest would be easy. Just one mile, then another, and then another. Three miles is nothing. Barely a workout. No big deal. Easy. I didn't hear no bell. | Credit: FinisherPix That half a lap was horrendous, absolutely miserable. According to my watch, the temperature peaked at 38ºC during this time; I felt nauseous, overheated, and dehydrated. My heart rate monitor went on the fritz, with my heart rate jumping erratically all over the place---or at least I hoped the problem was my heart rate monitor. Most of the aid stations were out of ice by then, and no matter how much water I drank, how much water I dumped on myself, how much I got sprayed with water, how much I dunked my hat in the buckets, I’d be bone dry again a few minutes later. I wasn’t even sweaty, I was just covered in dry salt. The parts of the golf course that were on grass didn’t offer any relief either, it just felt like going from dry heat to humid heat; I swear I could feel the humidity wafting up from the grass. There was just no respite whatsoever from the heat. I’m not exaggerating when I say this was the hardest run I’ve ever done. It took every bit of willpower I had, but I didn’t stop. Once I got past the golf course and stepped off the grass for the final time, I felt like I had just crossed the finish line, even though I still had about three more miles to go. It was only then that I finally believed I could actually finish this thing. I had a Maurten Gel 100 Caf 100 at the next aid station, hoping the caffeine would give me a little oomph for that last stretch. I gave it everything I had left and finished strong, screaming and high-fiving spectators on the sidelines as I sprinted through the final chute. I crossed the finish line in 2:02:06, for a total time of 6:13:07. I finished in 100th place in the M40–44 age group, out of 195, and 975th place overall, out of 2,103. I was absolutely spent; my entire body, every joint, every muscle, hurt so badly. It's over. It's done. | Credit: FinisherPix After collecting my medal and finisher's hat, I grabbed some food at the Ironman Village, picked up my bike and gear bags, and hobbled back to the hotel for a much-needed soak in the bathtub. I slept twelve hours straight that night---I've never been more tired after a race. This is bittersweet. I loved racing in St. George, even though it kicked my ass every time. I would have happily done this race every year for the rest of my life if I could. What's not to love? It's incredibly hard, you spend a day in one of the most beautiful landscapes in America, and St. George is a great town, full of amazing volunteers and neighbors cheering you on the whole way. I'm sad I won't get to do this again, at least for a while, and that I won't get another chance to try for that personal best I wanted. So it goes. That said, while this result wasn't a personal best by any means, it feels just as satisfying, because it was so hard-fought. I gave it everything I got, left nothing on the table, and never gave up. I couldn't ask for a better way to close the books on this race. No regrets. Thank you, St. George.",
  "title": "Race Report: 2025 Ironman 70.3 St. George",
  "updatedAt": "2025-12-13T02:47:18.079Z"
}