Ironman 70.3 Goa, November 2026 · Finish 6:05:03, 71st overall
| Leg | Time | Overall position after the leg |
|---|---|---|
| Swim (1.9 km) | 0:51:25 | 439 |
| T1 | 0:05:41 | |
| Bike (90 km) | 2:56:17 | 86 |
| T2 | 0:06:34 | |
| Run (21.1 km) | 2:05:07 | 71 |
| Total | 6:05:03 | 71 |
Prelude
Another 70.3, another mediocre performance. When I registered for Muscat after Goa last year, the goal was to take all the learnings from Goa and put together a good race. Instead, I spent a lot of money on the trip to Oman (including unexpected airline charges just to get the bike there) and bombed the race big time. My biggest realisation after Muscat was that something needed to change, and it had to start with me being disciplined with my food. There is only so much I can expect from my training while slamming any and every food out there.

(A note before anyone gets the wrong idea: I am all for eating your food. As a certified nutrition coach, I would never recommend weighing food or doing anything that might lead to disordered eating, and I'm a huge proponent of a stronger athlete over a lighter athlete. But when you are 6 feet tall, weigh over 90 kg and keep bombing races, it's a wake-up call. I had been super erratic with my food habits, and that was the first thing to work on.)
Two major things happened right after Muscat:
I reached out to Gokul to see if he was interested in coaching me.
I took a chance on a TT frame from a Chinese factory, which eventually turned into what I now call Night Shadow.
Night Shadow (the Winow TT bike)

I didn't expect this to work out so well, but the frame and bars arrived in mint condition, and then the bois at The Bike Affair got to work on it. We went with the L-Twoo TT groupset and bought Elite Marvel 50D wheels, which eventually went onto my Merida Reacto, while my Vision wheels moved from the Reacto to the Winow. Gokul was clear about using a 54T chainring, especially for the long, windy descents in Goa. I moved my EZgain disc cover and the Absolute Speed BTA set-up across to this bike, and that's how Night Shadow came together.
For what it's worth, I feel the chance I took paid off. The folks at TBA put their heart into building this bike with me, and it turned out to be a brilliant purchase in terms of both quality and value.

Here's what it cost to put Night Shadow together:
| Item | Cost (₹) |
|---|---|
| Frame, base bar and aero bars (including shipping) | 1,00,000 |
| L-Twoo TT groupset | 68,300 |
| Elite Marvel 50D wheels | 60,780 |
| Ceramic bottom bracket | 19,440 |
| Rotor 54T/42T chainrings | 17,200 |
| ISM PR 3.0 saddle | 15,433 |
| Miscellaneous | 9,000 |
| Total | 2,90,153 |
Coaching
My personal take on coaching is that the science part can always be solved with patience and research. What makes a brilliant coach is someone you can have a conversation with, and who genuinely cares about your growth as an athlete. I feel like I got lucky with Gokul here. He was not only excited to coach me but also genuinely cares about my improvement as an athlete, and that was all I was looking for in a coach. It also helps that he's pretty old school about putting in the work, which is what I believe in as well 😛
Road to Goa
After our first conversation over a ride, Gokul put together a training template doc that summarised our training framework, goals and so on, and we got to work. Our biggest takeaway was that there was a lot of room to improve on the swim and the bike. If we could do that while holding on to my running fitness, that should do the job.
In case you are interested in the details, here's the training template doc Gokul put together.
Swimming
One of Gokul's ideas was to get me swimming in the stadium pool, with help from the swim coach there. The other logic was that a 50 m pool would help me find my rhythm. I went there for a couple of weeks, but quite a few things irked me. To begin with, just getting into the pool felt like a wish granted by the security uncles. Once you were in, you had exactly 45 minutes to do whatever you had to do and get out. The hygiene wasn't great either, and the coach didn't seem very keen to guide me. If anything, Gokul gave me more pointers just from watching me swim than the coach did.
I eventually got frustrated and went back to my usual pool, Strokes. The first couple of months there (April to June) were frustrating as well, with a lot of summer camp kids around. But once that drama was over, it was bliss to get there every evening, get my workout in and get out. All in all, I swam a lot more this season. I didn't find reasons to skip swim sessions and just kept getting incrementally better. I swam 102.2 km in total, which barely comes to 3 km a week, but a lot of that is down to swimming less in the summer months, when the summer camp kids wore me out.

The move to Goa in late September also helped. I reached out to the folks at GOAOWS and did at least 5 open water sessions with Elias. Imran, another Goa 70.3 participant, was my swim buddy, and by the end of the 5 sessions I was actually sad there weren't more sessions with Elias and Imran. These sessions went a long way in improving my open water skills and confidence, especially the 4th session, where I panicked during the 1K time trial (Strava) and had to be rescued. Since I'm staying in Goa longer, I want to keep doing an open water session at least every week or two.

Biking
Night Shadow was ready in early March and we got to work. I did all my workouts on the indoor trainer except the long rides, brick rides and TT attempts, and I was genuinely enjoying the bike workouts. I've realised that for all my run-by-effort vibes, I really enjoy the measurable metrics of biking and geeking out on bike set-up in terms of aero, CdA and so on. My last tested FTP in this period was 265 W, and I believe I was closer to 270–275 W by race week, based on the workouts I was doing. I also peaked quite a bit on the bike by May, hitting some of my highest power numbers on the TT bike, including a 50K PB. That ride (Strava) got me salivating about a sub-2:40 bike leg in Goa.

From June onwards I felt I stagnated a bit on bike fitness, with a combination of sickness and work and life stressors, but I did a brilliant job on bike set-up and on holding the fitness. What really helped was doing a lot of brick workouts on the race course once we moved to Goa in October. I've said this many times before and I'll keep saying it: Goa is one of the most fun bike courses to ride. Those long, windy descents are so much fun to push through, especially when the route is completely barricaded and traffic-free.

Another thing that made a big difference was the bike fit with Anup at Rush Bicycle Studio. We made quite a few minor changes, which made my position on the bike a lot more sustainable. To the extent that I barely get up from my aero bars now unless I absolutely need to.

I rode a grand total of 5,079 km on the bike, a weekly average of 145 km. One of the highlights of the whole bike block has to be the Sunday long rides with TBA. Those long Sunday group rides are the one thing I miss after the move to Goa.
Run
The run was pretty much in maintenance mode, especially once I did my hip flexor while stupidly trying to train for Hyrox Doubles in the middle of a triathlon block. Considering the injury, we managed it well: we reduced the run load, dropped the track workouts, ran in straight lines and added compensatory load on the bike.
We ran barely 834 km through this block, a weekly average of 24 km, but the 10K race I did in May (Strava), followed by the run leg at the BMF triathlon, gave me a lot of confidence. I just kept telling myself that I am a runner, and I will know how to get through on race day.

Weight
Remember the conversation about weight at the beginning? I was disciplined with my food through this block and slowly came down from 89 kg to 83 kg. I don't want to delve into this too much, since nutrition is a complicated topic and I don't want to give people random ideas. A couple of my big learnings, though:
Any weight loss has to happen before you start the training block. Once the block starts, it's a super thin line between being in a calorie deficit and eating enough to recover and train.
It's honestly super easy to run into energy availability issues with this kind of training load. One of the reasons for my hip flexor injury can be attributed to this.
I'm emphasising this purely because I see a lot of wild wild west shit happening in the name of weight management, and I don't want to add to it.
BMF 47.5, the B race
Gokul and I decided on doing the BMF 47.5 as a hard training B race leading into Goa. So at the end of August, we packed our car and drove down to the outskirts of Bengaluru for it. Everything about this race after the swim leg went brilliantly well (bike and run on Strava). The swim was the worst I have done, but the race gave me so much confidence that we were heading in the right direction for Goa. The icing on the cake was finishing 2nd in the open division.



Race week
Before I knew it, we had settled into our Goa home, the bike was serviced at Escapades, and race week was here. Funnily, I was super paranoid about falling sick during race week, since I'd been socialising quite a bit with friends in the lead-up. I kept telling myself not to worry about the uncontrollables and to control what I could in terms of nutrition, training and sleep.
I went to the expo early on Friday, spent some time at The Bike Affair / Wesnap stall, collected everything I needed and got out of the expo as fast as I could. I'd have loved to spend even less time there, but I wanted to meet all the folks from TBA at the stall and catch up with Nikhil and Abhinav. We drove back home, set up my transition bags and went to sleep on Friday night.
I was acing my carb loading plan. The target was 6 g/kg of carbs on Friday and 8 g/kg on Saturday. I've carb loaded for enough marathons to know the trick to hitting those targets without feeling like my stomach will burst open any time 😛 Everything felt like clockwork. We were supposed to move to the race hotel on Saturday afternoon (it makes getting to the start on Sunday easy, plus my parents were flying in). Then, while sipping coffee on Saturday morning, I saw a small cut on my race tyre.
Anyone who knows me well will tell you that I don't take things, or life in general, too seriously. I have this habit of just laughing it out and finding my way through trouble. But something about this tyre being cut got to me. Maybe it was all the emotions I'd kept bottled up through the year, amid everything that was happening in life. Maybe it was that I'd put way too much effort into training for this race and expected everything to go smoothly. I still can't place what it was, but seeing that cut made me sob for a while. I think I cried for a good 10 minutes, and once I was done, my brain started working again.
I told Natasha that we needed to leave a bit early, and then reached out to Gokul, Sampath and Shailu (the good folks at The Bike Affair) to understand what could be done. All of them felt the cut wasn't all the way through and should hold up for the race. At the same time, they all felt it was big enough that no tubeless sealant would seal it if it started leaking during the race. Our two options were to swap in the wheels from the road bike, which meant a cassette change and no disc cover, or to get a new tyre.
Luckily, Sunil and Naveen Raj had a spare Conti GP 5000 and were kind enough to give their time to help fit it. So we left home earlier than planned, got the tyre sorted, slammed some Italian food in the name of carb loading, got an early check-in at the hotel, and dropped off the bike and transition bags on time without any more incidents.


Apart from the outburst in the morning, I was calm throughout the day. Just one more night of sleep and we would get to race. For once, I wasn't scared of the swim leg and was genuinely looking forward to racing and leaving it all out there.
Race day
I woke up at 4 in the morning, only to realise that I'd left my oatmeal at home on Saturday. But Marriott is brilliant at organising a race day breakfast at 4 in the morning. I quickly showed up there, slammed a couple of bread slices with jam, filled my soft flasks with crushed ice and came back to our room.
I rested for a bit while sipping on Unived Drink Mix 320 and reached transition by 5:15. I filled air in my back tyre, only to realise that the valve on the front tyre was blocked, probably with tubeless sealant. I calmly walked down to the bike support folks from Crankmeister, and they calmly worked their magic and filled the air in my tyre. I was hoping that was the last of my bike issues as I walked down to the start line and started my warm-up routine. Walking through the M-shaped swim course on the way to the start, I just couldn't make sense of it, but I made a mental note not to get overwhelmed and instead just focus on exhaling into the water and counting my strokes.

Swim · 51:25 (Strava)
Before I realised it, it was 6:30. I took my pre-race Precision 100 mg caffeine gel and got into the start wave. I had picked the 33–38 minute start wave, since I believed I had 40-minute swim fitness (on the older swim course). But the swim course was changed during race week and I didn't bother moving to a slower wave. In hindsight this turned out to be good, since a lot of people seemed to have over-predicted their swim fitness, and I kept crashing into people who started before me but were much slower. For next year, I just wish most of us seed ourselves in the correct waves, or the race organiser has a seeding mechanism like the major marathons do, to avoid this.

I started my swim and was surprisingly calm through it. I jogged into the water, paused to adjust my goggles once I started swimming (which has somehow become a customary thing to do), found my line and kept swimming. One of my biggest wins from the open water sessions with Elias was the switch from my Zone3 goggles to the Magic5s. I realised that most of my issues in the swim stemmed from a lack of visibility, made worse by the Zone3s fogging up and being tinted. As soon as I moved to the Magic5s, they surprisingly fit well and didn't leak, and I was swimming with a lot more confidence purely because I could see better.
Going back to the swim leg, the biggest problem in the water seemed to be other triathletes in the water. I ran/swam into other triathletes last year as well, but all of us tried to be mindful of each other and appreciated that a lot of us were just trying to survive. This year, though, and I think releasing 8 people at once compounded it, there seemed to be a lot more swimmers who were panicking in the water and had no fucks to give about anything apart from their own swim. The number of people I ran into, the number of people who held onto my leg and refused to let go, and the number of people who bumped into me while going in weird ass directions was just crazy this year.
Through it all, I kept repeating to myself to exhale properly under water and keep counting my strokes, sighting every 6th stroke. It helped that I love multiplication tables, and counting my strokes distracted me enough to keep me calm. After the initial mess with people, I found a good line until the first turn, but once I took the first turn, the top parts of the M got incrementally harder again, purely because of people. I did spot a couple of jellyfish, but either I'm not allergic enough to jellyfish stings, or I got lucky and none of them stung me, or the Vaseline on my exposed skin did its job and the jellies just slipped off. There was no way for me to know what pace I was swimming, but on effort it felt like a 4 out of 10. Our strategy was to hold that effort and start pushing if I felt good after the last turn.
Somewhere after the second turn, someone held onto my right foot and didn't let go. I was okay with it initially and just kept swimming, but this genius refused to let go of my leg even after 2–3 strokes. That's when I started kicking harder, since I was worried this person would panic and drag me down with them. Thankfully, after the 3rd big kick they let go, and that was the end of it.
I took the final turn and was ready to start my final push, only to get hit in the face and have my goggles move up a bit. Strangely, I didn't panic and turned onto my back to adjust them. But as luck would have it, another swimmer right behind me went over me at that exact moment. It was of course not their fault, since there was no way for them to predict that I would stop randomly. Thankfully, there was a kayak right next to me, and the person in it saw what happened and immediately threw me a noodle to hold onto. The timing was perfect. It let me breathe for 10–15 seconds, adjust my goggles and get going. I found my rhythm quickly but let go of the idea of pushing more. I just wanted to get out of the water incident-free.
Once I got out and started running to T1, two things made me laugh out loud. The first was seeing 51 minutes on my watch, since I'd spent a good part of the swim thinking I was on 43–46 minute pace. The other was Bhuvan telling me I got out 80th in my division and some ~400th overall. I just laughed, realising how much more work I need to put in before I can call myself a half-decent swimmer. Having said that, I'm also honestly super proud of the swim leg. The swim course was much harder and slower than last year, made worse by triathletes being super erratic in the water. But I got through all of it without panicking and came out 6+ minutes faster than last year.

T1 · 5:41
I ran the entire way to T1. The run felt harder this year since they hadn't packed the sand down like last year. I was super happy to see Karthik and then Rohith there. I had half of the Unived Gel 360 (Espresso Cappuccino), slurped all the cold water from the soft flasks, cleaned my feet with a towel from my T1 bag, put on my cleats, helmet and shades and got going.


Remember how I filled 3 soft flasks with crushed ice at the hotel? I kept one in my helmet and the other two on the aero bars. I wanted them to feel cold when I got on the bike, and they absolutely did.

Bike · 2:56:17 · avg power 157 W, NP 174 W (Strava)
I got on the bike and took a minute to sort myself out, since my left shoe wasn't cleating in and then the BOA gave way for once. But I got it sorted and found my flow on the bike. Everything seemed really good, but my legs were weirdly feeling crampy, if that's a thing? I just kept sipping my fluids and holding my power numbers. I caught up with Gokul on the bike and was excited to work with him through the bike leg. We yo-yoed a bit through the first 15K, taking turns to shout "on your right" while overtaking on the Ribandar Causeway.

At this point I was feeling so good that I didn't even sit up from the aero bars on the Bambolim climb. In hindsight, I should have. I not only lost Gokul because of this overreaction but also ended up hitting 290–300 W on the climb, which was stupidly early to do. My logic at the time was that I was feeling good, my HR was low, and the climb was short and followed by a long descent where I was bound to recover anyway.

My nutrition plan on the bike was two BTA bottles, each with 750 ml water, 2 scoops of Unived hydration mix (1,000 mg sodium) and 100 g of drink mix in a 2:1 ratio. Apart from this, I had a 500 ml aero bottle with just water and three Precision caffeine gels in the bento box. The idea was to get in 290 g of carbs through a 2:30–2:40 bike leg, and once I finished the first bottle, I'd dispose of it and pick up more water on the course. This plan had worked through all the brick workouts, so I was fairly confident about it.

But maybe I didn't account for the load of the swim, or the fact that race day was ridiculously hot, dry and exposed on the bike course. Maybe I should have checked my ego and not pushed as much on the first climb. My legs settled down after the first 10K and felt super fresh until 50K. The first sign of discomfort showed after 50K, when my left quad started feeling sore. I increased my fluid intake and started pouring water from the aero bottle on myself and the quad. I picked up at least two 500 ml bottles on the course and either drank them or poured them all over myself.

I was super focused on holding the power numbers and was on target for a 2:41–2:42 bike split even at the last U-turn at 70K. Then it was as if someone turned off the switch to my body. I started yawning, felt drowsy and struggled to keep my eyes open. I initially thought I'd overdone the caffeine, since I'd had almost 450 mg by then, but I'm used to caffeine and this was within my planned amount. What I eventually realised was that my stomach was ridiculously bloated, and I hadn't burped or farted in forever. That made me realise all the carbs I'd been taking in weren't being digested, which led to a crash in blood sugar and explained the drowsiness and the struggle to keep my eyes open. Once I realised this, I sat up on the bike. The initial trigger was my own safety, since I didn't want to crash. But this, combined with not pedalling for a bit, meant I started digesting some of those carbs, and I eventually started burping as well.
My only goal from here on was to not crash and to get to T2 safely. This was the leg I was probably the most disappointed with. The power numbers I ended up with make more sense for a Thursday cafe ride than the bike leg of my A race.
T2 · 6:34
Once I got to T2, I got off my bike gingerly and just walked in. I was demotivated by my power numbers and the bike time as a whole, and I was not looking forward to walking through the run leg. As soon as I got to my T2 bag, I pulled out the soft flask and stood there drinking all that water. Meanwhile, Karthik had aced his bike leg and came in right behind me. I tried to stay quiet, since I wanted to DNF here but didn't want to pass those thoughts on to Karthik. So I just spent time doing random stuff, but for some weird reason Karthik just wouldn't get going 😛 So, with no excuses left, I put on my shoes, my bib belt and the bucket hat and started jogging.
Run · 2:05:07 (Strava)
Once I started running, I realised two things:
My quads were completely shot.
All that food had been digested, and I was surprisingly running okay-ish.
I was feeling super hot, though, and made the mistake of completely unzipping my trisuit. The referee at the first aid station pointed it out, saying that was my first warning and if he saw me unzipped again, he would give me a penalty. I listened and zipped it up immediately. I knew it was a risk, but I was cheeky about it considering how hot I felt, and the 5 minutes of ventilation were enough to cool me down a bit. I stopped looking at the watch, forgot about finish times and positions, and kept going. The first goal was to run up the climb, and I surprisingly did. I finally got to the first U-turn and was super happy to see lots of ice at that aid station. I took my ice bandana out of my pocket, which drew applause from the aid station volunteers, filled both the bandana and my bucket hat with ice, and kept going.

That ice bandana and bucket hat combo brought me back. My quads were still shot, which made me run the downhills extremely gingerly, but I was able to take in 60 g of carbs from Unived gels through the run, stick to my granny gear and just keep going.

I was super happy that I didn't walk at all, except to get water poured over me or fill ice in my bandana. But in hindsight, I'm a bit disappointed in myself for being mentally weak. My last mile was at 5:22/km, and I clearly had a lot more left in me, but in that moment I chose not to accept the discomfort and push through it.

Finish · 6:05:03 · 71st overall

I was super disappointed with the finish initially, because both Gokul and I felt I had a sub-5:30 at the very least with all the fitness we'd built through the season. I was also frustrated with the nutrition mistake I made on the bike. In hindsight, my drink mix was far too concentrated for such a hot race, and my body couldn't absorb it. Having said that, over the next few days I realised that race day was hard, and most of us had much slower times than in previous years, except for a couple of folks. I also found it funny that a World Championship slot rolled down to me, which says more about not many people wanting to head to Orange head country than about my performance. Having said that, I need to take the wins and enjoy the fact that I raced a 21-minute PB on a considerably slower day compared to last year.


Gratitude
This stretch of my life, from Friday to Tuesday, was probably among the best days of my life. A lot of people took time out of their busy lives (I'm talking about Natasha, my parents, Shaunak and Bhuvan) to spend their weekend cheering for me through the race. I honestly wouldn't be able to do this sport if not for Natasha and my parents happily funding my stupid hobby, even after the mediocre results I put out 😀 And who has friends like Shaunak and Bhuvan, who spend an entire weekend helping me out and cheering for me through the race? We went back to Praça for dinner like last year, and the tasty food and drinks kept my sorrows away a bit. All in all, this was an A+ weekend, and I hope it continues to be a yearly tradition for the family.
What next?
It's been 12 days since race day and I'm yet to get out for training. I'm enjoying my drinks and food before I start the next block! The bigger, overarching goal for next year is to 100% show up in Goa again and race for positions instead of just surviving (something like a sub-5 or a top 10 finish?). Having said that, I didn't want to spend my entire year obsessing over a single race. This was the first race where I felt like a triathlete, instead of a runner who was racing triathlons, and I want to race more. So after a lengthy discussion with Gokul, we decided on Da Nang 70.3 in May. I personally would have loved a cold weather race to see how fast I could go, but if Goa is the bigger goal for the year, another hot weather race makes much more sense to test my heat adaptation and nutrition planning. And hopefully an Iron-distance event in 2028, after acing these two 70.3s in 2027?