DATE: June 14, 2026
WHERE: Rockford, Illinois
RESULTS: BIB # 154 5:45:37 finish time

What a difference a year makes! Last year was a fight for survival (link to 2025 race report), and I struggled to finish in 7.5 hours. But this year was almost a perfect day for racing a 70.3. Not only did I achieve my arbitrary goals of running a sub-2-hour half-marathon, but I also got under 6 hours for the race – by a lot, setting a new personal best for myself, too!
Training went really well for me this year. My doctor advised me that my blood work showed a very low amount of vitamin B-12. Once I added B-12 to my day, it made a huge difference. My muscles recovered quicker and were less sore, and overall I had more energy.
I stuck with my usual training plan, Don Fink’s IronFit Secrets for Half-Iron Distance Success, which has served me well for my three half-iron races. 16-weeks of training made me well prepared.
Prerace Notes
Kari and I got to Rockford midday on Saturday, and I was able to get checked in and put my bike into transition. We had a nice dinner at the same restaurant we ate at last year, Tavern on Clark, and I opted to not overindulge. Our same hotel (Home2) had their act together this year, and check-in went very smoothly. The only issue I had was not getting a good night’s sleep. Lots of tossing and turning, and dreaming.
Race Day
The alarm was set for 4:30am, but I got up at 4 and took a shower. Even with giving myself some extra time, Kari and I lost track of it and realized we needed to hustle to get to the Ironman Village to set up transition and catch the bus. Kari pulled up to the parking garage, and I hopped out with my stuff and headed to my bike. I set up my stuff, covered in a plastic bag as it was sprinkling, which would end by 6:45am or so. I then walked to the line to catch the shuttle busses to the swim start. Upon getting there I realized I had not left my eyeglasses with my bike, so I ran back and put them with my helmet. That might have been bad for me. I could have dropped my glasses off at Swim Start, which the IM people would have then dropped off at Swim Out, but I’m glad I didn’t have to do that.
Although I was relieved to have remembered the glasses, the line back at the shuttle buses was now double in length, and I worried that I might have to hoof it down the 1.2 miles or so of trail to get there. I stuck it out and was able to get on a bus, fortunately.
Last year I got the push notification from IM that the water was 79 degrees, which meant no wetsuit for me. This year the water was 72.4 degrees! Plus, the dam upstream of Rockford had been opened, which created quite a current. It was going to be a great day for swimming.
I was a little hyped up with adrenaline at Swim Start, but somehow was able to calm myself down, talking with others and comparing notes. We were waiting in our predicted swim time groups to enter the water (I entered the water about 38 minutes after the 7am start time), and the Race Announcer was telling us that the first swimmer had exited the swim in under 20 minutes! This guy was going to be on the way back on the bike ride before I finished the swim! Crazy.
The Swim – 28:40 / 26th M60-64 / 1062nd overall
As it turns out, 72.4 degrees is pretty damn cold! It was a little bit of a shock to the system. I swam in my new sleeveless wetsuit, and although my arms were cold, I slowly got used to it and worked my way into a good pace. After going under the first bridge, I had gotten a little off course when I swam right of this red buoy that marked the halfway point, and I was now struggling to slow down my breathing. I saw a paddleboarder and held on to it for just about a minute to reset myself, then I proceeded to swim back to where I needed to be.
I could see the Swim Out and made a beeline for it, and was shocked to see that I clocked a 28:40 swim. I’m the world’s okay-ish swimmer, typically swimming a half-iron in about 43 minutes. This was a shocker. The Rock River was certainly rolling and in our favor today!

T1 – 6:40
I wasted over 8 minutes in T1 last year, and I was determined to get out of there faster this year. Due to construction in a park where the athlete village was last year, transition was moved a couple blocks north of there on the road. There would be no quarter-mile run to my bike this time. I was lucky to basically jog 100 yards to my bike, which was right near the entrance of T1. A wetsuit peeler stripped me of my wetsuit, and I quickly sat down and tried to dry myself off and struggled to get my socks on. I knew the bike would start with me being cold and wet, so I opted to put on a long-sleeve (and super small – 😂) cycling top. Being super close to the Swim In meant I had a long haul to the Bike Out. I stopped and had a guy add some sunscreen to my neck and face, and he shot a bunch into my ear, and we both laughed. I pushed on to the Bike Mount zone, and began what would be a great ride.

BIKE – 3:06:32 / 18th M60-64 / 802nd overall
Most of my training rides of 56 miles took me about 3:20 or so, building up to the race. With the day we were going to have – cool temps and a favorable wind direction – I figured I might be able to pull off 3:10 possibly. I reminded myself not to redline leaving Rockford, as it is uphill for maybe a mile or two, but my heart was pumping hard. We got to the first turn, and it’s a super fast downhill with a sharp turn at the end. Just as we were flying up it, the referee motorcycle rode very slowly past. I wasn’t more than a couple of miles into this race and was afraid I was going to get a penalty for drafting, as there was a pretty big group that hadn’t spread out yet. But he kept going, and people tried to behave when they saw him, and I quickly settled back in.
I was so glad that I had put on the extra layer, as I was somewhat cold for the first hour. Hardly anyone else was wearing an extra top, and I thought I was the crazy one. I’m not regretting it at all.
The ride north was into the wind, but fortunately I was pretty fresh at this stage and feeling good. It seemed to me that the cross/head wind we dealt with when we started heading west was worse than the headwind we had heading north. At the first aid station I had a near miss when some dumb rider passed me on the right as I was pulling over to the toilets. She got an earful from me, and I wasn’t nice about it. She could have really messed both of us up. Ride right/pass left is clearly written in the Athlete Guide, if people bothered to read it. There were lots of people riding out of position. Anyway, I escaped the one close call, and put it behind me.
About 32 miles into the course, I turned south and started reaping the benefits of a strong tailwind and some speedy downhill sections. My watch clocked a 35 mph max speed, which was more than likely in one of these sections heading back. I was passing riders a lot heading out, but now I was passing people very consistently and with speed.
At about 46 miles, I looked at my speed and realized that if I managed to do keep up this 20 mph average, I might get pretty close to three hours. So I started pushing pretty hard.
The fast hill early on leaving Rockford was now the last beast I had to overcome before rocking Rt. 20 back into the city. Shocked to see my bike split at 3:03 on my watch, which still had autopause running, and the two stops at the portapotties cost me a grand total of about 3 minutes. Pretty amazed at that.

T2 – 4:49
As I dismounted from the bike and started jogging to my transition spot, I wasted as little time as I could. I took off the cycling gear and put on my shoes, grabbed my arm sleeves, bib belt, and visor, and I was off to hit the run course.
RUN – 1:58:56 / 14th M60-64 / 738th overall
I told myself to not go out too fast, but I felt good and was ready to beat feet. About a half-mile into the run, I saw a guy rocking a Rush cycling jersey, and I asked him if he was going to see them in Chicago. He said that he was going to all of the shows (four, I believe!). I’m going to the Monday show, so we talked Rush for a brief spell, and then I kept trucking.

I started to feel the headwind, and I was starting to feel my effort was way too strong, so I dialed it back and tried to run comfortably. At times I was cold, other times I was hot, depending on whether the wind was at my back or in my face. I walked through most of the aid stations, stopping at one or two to pee, but I still was managing just right around 9-minute miles, which I knew I had to maintain in order to get a sub-2-hour half-marathon.
My wife, with her broken foot, was undeterred in being the best supporter for me out on the run course. She positioned herself in the same shady park area as last year, and I had no trouble finding her and letting her know I was doing okay.

On the second loop, I pulled the arm sleeves out of my back pocket and pulled them on because I was now getting pretty chilled in the wind. I told myself to wait to kick until about 10.5 miles, and then I started picking off runners ahead of me. I got lots of “looking good” and “you got this” from spectators, so it wasn’t just me thinking I had a good pace going.

I got to the final stretch and hit the gas, and then floated down the chute to the finish line. I couldn’t believe my eyes – not only did I go sub-6 hours, I finished in 5:45, a minute and some change faster than my previous personal best from 2014, twelve years ago!
It was a race of a lifetime for me. Certainly the swim played a role in my overall speed and time. But I earned that bike split and that run split, as they both had equal portions of hard work into the wind and help with the wind at my back. The results will show 5:45:37, and that’s all that matters.
Post Race

I stood in line to get a finish line photo, then focused my attention on recovery. Recovery is always hard for me at this distance (and most others, too), and I could sense that I better keep moving and get out of the finish area. I found Kari, and we walked to the backside of transition. Fortunately, the race official there said I could enter, but advised me that I couldn’t take my things out of transition until 1:45pm, as people were still on the course. I made a beeline to the toilet, as I was starting to feel a strong urge coming on. But inside, after unzipping my onesie trisuit and sitting down, I couldn’t do anything. So I made the best use of the time in there to warm up a little and kill some time.
I made it to my bike, grabbed all of my stuff, and walked to the exit where the staff checks your numbers to make sure you aren’t taking what isn’t yours. I passed through, and Kari and I walked to the IM Village to possibly get some post-race pizza. Ironman makes you walk through the IM Store, because they want you to buy overpriced stuff, and I decided to see if I could pick up a name t-shirt and a new visor or hat. I got to the checkout and realized that I didn’t have my phone or wallet, but she said I could use my watch to make the payment. Great! But it wouldn’t work – it kept getting declined. So I cut bait and said I’m better off not spending $140 on three items anyway.
We almost forgot about picking up the morning clothes bag, and I asked someone who was carrying one where they were located. Fortunately, it was in the village, so I made the trek back through the store, this time ignoring the temptation to buy anything, and got my bag. At this point, I was starting to crash.
Kari and I sat for a while until I could find the energy to begin the two-block walk to the parking garage, and as I made my way up the sidewalk, I began to sort of hyperventilate as I walked. I made it across the street, and I sat on a concrete barrier while Kari went to get the truck out of the parking garage. I wrapped the finisher’s towel that I received at the finish around me, and also wrapped myself in my trisuit and sat there waiting. Kari pulled up, we tossed the bike onto the carrier, and my junk into the backseat, and off we drove. I turned my heated seats to high, put on the heater, wrapped myself with whatever towels I had in the truck, and slowly began to feel better. I’m not sure why I get so wrecked post-race (I have had some doozies), but it’s not like you can train for that. I probably needed some food/sugar/liquid, but I didn’t feel like I could stomach that at the moment.
We made it home okay, got unloaded, showered ourselves, and then went to my favorite post-race restaurant for some much-needed dinner.

Conclusion
If you are interested in some of my gear, I used the following:
- Zoot one-piece trisuit
- Xterra Vortex sleeveless wetsuit
- 2012 (purchased new in 2013) Specialized Shiv Pro
- Garmin Fenix 6X Sapphire watch
- Hoka Ceilo X1 shoes
Many thanks and love go to my wife, Kari, for always being there for me. This lady had a broken foot in a walking boot, and still shuffled around after me. She won’t let me do these things by myself, and I got a feeling that if she was sick with the flu, she would be there to make sure I was okay. I’m forever indebted to her for putting up with me.
Thanks to everyone who posted kind words on Facebook about my race. I was just as awed by my finish as many of you were. I hope that maybe you all can join me in racing this race someday.
Thanks to all the other racers, volunteers, locals, and spectators/fans along the course. You truly make racing at Rockford a special day.
Thanks to local friends Chris and Kristy for taking a few action pictures of me today. And congrats to those locals in the Manhattan Tri Club (which I sorta associate with and follow). Chad, Karen, Dan, and several others did a great job!
And always, thanks to my Number 1 Fan, Carl, for always taking an interest and following my adventures. I appreciate that you are entertained and impressed by my performances.
Thanks for reading and all of your kind words.
