Last weekend, I finished Ironman Vitoria-Gasteiz at 9:03:42 and secured my first-ever Kona slot.
Sounds great, right? In reality, it was one of the hardest I’ve done in all three disciplines. Extreme conditions in the water combined with brutal wind on the bike, and a cherry on top – 34°C in the shade on the run.
Here’s how it unfolded.
Five days before race day
We arrived in Bilbao five days before the start. That gave us time to walk the city, drive the bike course, and settle in.
Day one, I rode the course easy – 200 watts, one lap. A 71-kilometer loop with 550 meters of climbing. There were no long climbs on the profile, the longest maybe 400 meters at a moderate gradient, but the whole route is short rolling hills, one after the other.
The scenery is exceptional. You ride through fields with views of the mountains, along narrow roads, and the last 10 kilometers wrap around a lake. Full road closure the whole way. From a rider’s perspective, this is a top-tier bike course.
We spent the following days walking around the city and did one swim session on the lake. The lake, by the way, is not crystal clear. Fine for a race swim, but not what I’d expected.
For four days, the temperature stayed between 24 and 28°C. Cloudy at times, which is normal for this region.
Then, two days out, the forecast pivoted hard: 35–38°C with gale-force winds.
I kept hoping something would change, but it didn’t. On Saturday, when we drove into Vitoria for transition setup, it was already 38°C in the shade. The sun was baking; it was terrible weather for any activity, especially for a full Ironman race.
A note on race day logistics
I would not choose this race again for logistical reasons alone.
The transitions are 20 kilometers apart. Narrow streets, hard access, no parking, you need to walk everywhere.
Race morning, we drove to the lake at 6 AM. Personal cars weren’t allowed near the swim start – you park, then walk 1.5 kilometers to the transition zone. Exactly what you need before a cruel race (no).
Our wave was set for 8:15 AM. That’s unusual for a hot-weather race, you’d expect a 6 AM start in a country where midday temperatures hit 38°C.
The half-Ironman went off before us. During their swim, the wind picked up hard. By our start, the wind was crazy, and trees were literally bending in half. But I still couldn’t expect what happened next.
The swim: the hardest one I’ve ever done
I’m not a strong swimmer. That’s a caveat I’d like to put on every race recap, including my previous Ironman 70.3 recap, but on this day it mattered more than usual.
When we started, there was a 200-meter breakwater section you exited before the open water began. Once past it, conditions were unlike anything I’d swum in.
The waves were short, steep, and constant. Every time I tried to breathe to my left, I swallowed water. I kept switching to breaststroke just to catch my breath. The hardest part came at the turn buoy, where the waves were hitting us head-on. It was only a few hundred meters, but it honestly felt like survival rather than racing.
Sadly, one athlete didn’t make it out of the water.
In my opinion, the organizers should have shortened or even canceled the swim. Conditions like that simply weren’t safe. But they didn’t do any of it.
I knew I’d lost a lot of time, but once I got out of the water and looked around, it was obvious everyone else had struggled too.
For context, my planned pace was 1:40-1:38/100m with a target swim time between 1:00 and 1:05. I came out in 1:10, a little behind schedule.
I climbed out of the water and looked at the bike racks. Still full. Everyone had swum badly.
The bike: from wanting to drop out to a 51 km/h tailwind
The bike course didn’t start much better.
For the first 20 kilometers, the wind was directly in our faces. I was pushing around 260–270 watts, but my speed barely reached 35 km/h. At one point, I genuinely thought about pulling out. Then the course turned.
The headwind became a tailwind, and suddenly everything changed.
I’ve spent years riding alone in windy conditions around Kharkiv, so I knew exactly how to handle it. I stayed in the aero position for the entire 180 kilometers and started moving through the field. On one 17-kilometer section, I averaged 51 km/h and was in one line with Sam Laidlow on this segment))) (Sure, I understand that the previous year wasn’t such a huge wind).
I came out of the swim in around 200th position overall. I finished the bike leg in 10th and passed roughly 200 people on that one leg.

The run in 34°C
It was 34°C in the shade, so the temperature on the road was much higher.
Of course, there were aid stations, but they were so short that you barely had time to grab water before you were already past them.
Because I was one of the first athletes onto the run course, there were almost no spectators yet. At times, there weren’t even volunteers showing the direction. I actually took a wrong turn once because the course wasn’t clearly marked. Only later, when more athletes arrived, did the atmosphere start to build.
That’s probably what sums up this race best.
It was incredibly beautiful.
The bike course through the Basque countryside was stunning, and running through Vitoria-Gasteiz was a real pleasure.
But the organization left a lot to be desired.
The logistics were difficult, and the swim should never have gone ahead in those conditions.
It was probably the weakest race organization I’ve experienced at an international Ironman.
And yet… This race reminded me why Ironman is called Ironman.
Nothing came easily that day.
The result
9:03:42.
Kona slot.

The takeaway
I’ve done six international Ironmans now. This one was, in the raw sense of the word, the hardest. Brutal in all three disciplines.
If you’re weighing this race for a future season: incredible terrain, difficult event operation. If the goal is a Kona slot or a fast time in beautiful scenery, it’s worth considering. If the goal is a smooth race experience end-to-end, look elsewhere.
For me, this one is done. Kona is next.


