
Race Reports
Race Report: 2025 Tour de Bloom - Men’s P12
Race: Tour de Bloom 2025 - Men P12
Date: May 2-6 2025
Racers: Nathan Martin, Flo Costa, Devin Wilson
Stage 1: Waterville RR
Best Result: Nathan 5th/101
Strava: https://www.strava.com/activities/14359158691
Waterville RR is a fun one every year. Usually there is lots of wind, sometimes even some inclement weather. This year was perfect temps and rather mild wind, but just enough for it to hurt.
We had wind coming from the southeast, so tailwind anytime we were heading west and that’s where the race would get hard.
First lap the fireworks started about ⅓ of the way through the lap on the long stretch at the top of the course heading west. Attacks were going and we were strung out into the headwind, then when the KOM point hit it really blew apart. I was in a group of 5 behind another group of 7 up the road and took turns pulling to make the bridge to them. Lots of strong riders in the bunch, pretty much every team represented, so I knew this had the chance of going the distance.
For the rest of lap 1 and all of lap 2, I basically just took turns with the group. We got a pretty healthy lead since we had all the teams represented and didn’t have to work too hard.
Lap 3 that would change, Project Echelon started throwing some attacks on the steep pitches on the course and the group really started going at each other. There would also be a small crash involving a Project Echelon rider on the top part of the course before the KOM, which will be important later.
In the latter half of lap 3, the gap would start to come down between us and a bridging group behind us. In the main group, Project Echelon had basically nuked it to try to bring up one of their riders since their favored person got crashed out on this lap.
The gap continued to shrink, and people started skipping pulls in the lead group. With about 3.6 miles to go, a POA rider would accelerate a bit off the front, and that was enough to blow up our group. I joined it along with 3 others, and there were 5 of us with a gap.
I would take some pulls, we had a bit of crosswind so I tried to gutter the group a bit. I found myself distanced a bit after a pull and had to chase, so when it came to the sprint I had nothing and had to settle for 5th out of our late break of 5.
Overall a hard first day of bloom, but excited to be in the mix.
Stage 2: Downtown Night Crit
Best Result: Flo 27/98
Strava: https://www.strava.com/activities/14371050434
Livestream: https://www.youtube.com/watch?v=uSd89kWArEA
This year the race organizers opted against making the fields race twice on a single day and instead reserved the entire day just for the crit. This meant that we could sleep in and have a chill all day until the crit, which was supposed to start at 9 pm. I went on a morning spin with Nathan to pre-ride the TT course for Stage 4. Thankfully, the downtown crit was only a couple miles away from the hotel we were staying at, which made it convenient to roll to the start and warm up.
The evening was quite cold and unfortunately the races were running a bit behind schedule. As a result the field, consisting of 100 skinny dudes, had to wait around after warmup for nearly 20 minutes in the 50 degree weather, not knowing when the race would start. This made for a pretty tough start, but finally we started ripping around the ½ mile laps in the dark.
The previous year it had rained all day before the crit, which made the field very apprehensive in the corners and subsequently strung out the peloton and ironically made the race safer. However, this year, there was a strong headwind on the backside which had been the most difficult section the prior year. Due to the headwind, the dry conditions, and the huge field, the course was much less attritional and it was a lot easier to sit in the wide bunch. Nevertheless, I focused on constantly moving up and staying out of trouble.
About 30 minutes in there was a huge pile-up ⅓ of the way down the field. About 20 riders went down, including Devin, with me and Nathan narrowly avoiding it. Thankfully it was in the uphill section, meaning the speeds were slightly less high. Devin unfortunately cracked his handlebars within the literal pile of bodies and bikes. To make things worse, the following lap the field came into the same corner at full speed, not expecting there to be motorcycles stopped in the middle of the road. A few more guys ran into the motorcycles and went down. Then the race was neutralized since the field only had about 30 riders left.
We then waited in the cold once again for another 15 minutes to let everyone get their bikes and bodies checked out. Personally, I think we should have just resumed the race with a reduced field and not take any time gaps. By this point it was past 10pm and less than 50 degrees out. I didn’t really feel like racing anymore.
Finally the race restarted and I was freezing. My body warmed up a bit in the next few laps but mentally I wasn’t locked in. It seemed like the field also became super twitchy. There was another small crash and more sketchy incidents with riders running into each other. I realized that I wasn’t focused anymore and consequently didn’t want to take unnecessary risks in the finale. I still tried to stay in good position, but was missing that extra edge and rolled it in for 27th. Kind of a weird crit with the field bunched up, the cold, and the crashes, but overall the atmosphere in downtown Wenatchee was great.
Stage 3: Plain RR
Best Result: Nathan 7/95
Devin Result: 38/95
Strava: https://www.strava.com/activities/14380260394
After scrambling to get a neutral bike to ride after breaking my bars in the crit, we lined up at this beautiful place called Plain, WA. Surrounded by towering trees with outstanding views, it was a really nice day for a bike race. This was quite a unique circuit too, finishing off with a 4-5 minute climb at about 7%. The circuit itself we only did 3 times, and it wasn’t too difficult. There wasn’t much climbing or technical aspects of the course, but it was definitely wicked fast in some sections.
The game plan for us was to stay safe and toward the front of the race, watching for any dangerous breakaways and keeping an eye on who was controlling things. Early on in the race a break of 3 went. Only one of the riders was dangerous for GC (Tim McBirney). But there were no Project Echelon or POA riders in that break, so there wasn’t much of a reason for us to chase. Things were relatively contained for the first 2 laps, but on the third lap things really ramped up. Because of the nature of the finish, positioning into that final climb was incredibly difficult and was quite the battle. Flo and I worked hard to make sure Nathan was protected and in a good position leading into the base of the climb. Though, I didn’t feel terribly confident riding in the field on the neutral bike, and it was difficult battling the wind and every other rider trying to get to the front. Everyone knew how the race was going to play out, so the trains organized very early. That said, the battle to get to the front was long, lasting for probably 15-20 minutes.
I would have liked to get Nathan up in those first 5 wheels into the base of the climb, but with all the shuffling going on it was no easy task. I’d say we got him up in the first 20 wheels or so. Not the greatest but better than being at the back. The finish for me wasn’t the best - I’d had spent myself trying to get up toward the front of the race and had nothing left for the climb. Flo came around me pretty quick and was a bit off the back of the main group but Nathan was sitting really well in there. Although we didn’t have him in the best place coming into it, he still managed to pull off a 7th place on the day.
Stage 4: TT
Best Result: Nathan 4/90
Strava: https://www.strava.com/activities/14389121092
This TT was a fun one, the longest TT I’d ever done at 38 minutes. It was a tricky one too, slight downhill and tailwind on the way out and uphill and headwind on the way back, so you had to be very careful to go easy enough on the way out. You could really gas it on the way back, but not so easy that you’d lose time.
It was pretty fun, I had my dad in the follow car behind me with the team radio, so he was able to speak to me the whole time and give me updates on the terrain, whether he could see riders in front or behind me, etc.
Overall I feel I paced it really well. I targeted around 87-90% of my FTP going out, and really just did a 20 minute all out test on the way back. I stayed really aero as well. I could have gone a bit harder on some of the hills, but all is good.
Was in a solid 4th place on GC with only a few seconds to 3rd, it would all come down to the last day.
Stage 5: Farrar Queen Stage
Best Result: Nathan 4/81
Strava: https://www.strava.com/activities/14397516041
What a beast of a stage this was. Only 56 miles, but 8,500 ft of climbing finishing with a hard 31 minute climb.
Right off the bat I had a poor start, my Di2 cable connecting my rear derailleur to the battery got unplugged, so I had to stop and plug it back in then chase back on through the caravan for about 10 minutes. Not ideal, but no race ever goes perfectly to plan.
After catching back on, my goal was to conserve energy on the little circuits as much as possible before the main climbs started. I tried to hold decent position, and didn’t follow any attacks.
The first time up Joe Miller was tough, I never felt super stressed but it was clear this would be a hard day. I stayed as close to the front as possible to minimize having to cover gaps as people dropped.
Feed zone went well, descent was smooth, and got ready for the second time up Joe Miller.
I thought this would be harder from the bottom, but the pace was pretty similar. Until Quinn attacked, then the pace noticeably went up as POA set a harder pace to make sure he didn’t get much of a gap.
He was caught before the feed zone, and pretty soon after Project Echelon had a rider attack. He would very quickly get a decent gap, and again POA were put on defense as they rode to slowly bring the gap down.
We hit the second biggest summit of the day, and began the descent to the final climb. I was near the back at this point and had to do a little work closing gaps on the descent, but not too bad.
As we started the final climb, in my mind my biggest priority was not blowing up. I had a target wattage in my head and knew I could not go over it for extended periods of time.
As attacks started, I stuck to my wattage, even as I dropped off the group. Soon though, I would be passing many people, and eventually there were only 3 riders in front of me.
The gap would start at about 25 seconds, and I kept clawing away at it all the way up the 30 minute climb. Unfortunately, as we crested the top before a quick descent to the gravel finish, I didn’t quite manage to make contact with them, and would finish just 4 seconds outside what I needed to move into 3rd place on the day.
Overall disappointed to not make it on the podium, but really couldn’t be too unhappy with how I did against some really strong riders. It was a super experience and can’t wait to go back.
Race Report: 2025 Patterson Pass Road Race - Men’s E3
Date: August 3, 2025
AVRT racers: Wil Gibb, Jeremy Besmer, Matthew Younkins, Ryan Dyke
Top Result: Wil Gibb (3/13), Jeremy Besmer (4/13)
Course: Three laps, ~22 miles/~2.2k feet climbing each. The course starts with a 3.9 mile climb of Patterson Pass Road into an absurd headwind, which makes the average gradient of 5.4% seem deceptively easy. A fast descent on decent pavement leads to the Flynn Road climb (2.2 miles, 4.3% but with a false flat lowering average gradient). After Flynn Road there is one very technical/slow corner followed by ~12 miles of faaast, straight descending on mostly excellent pavement with some small “kickers.” The race ends on a heavy crosswind section, culminating in a 0.44 mile 6% kicker to the finish line.
Strava: https://strava.app.link/ZIJRvzGPxVb
Nutrition: Three bottles with 110g carbs (one from Nathan’s dad!), one neutral water
Recap: Written by Wil
This race had it all – ripping headwinds, the threat of cows on the road, a breakaway (doomed), another breakaway (success!), and a rider who dared to ask the question – do the rules really apply to me, even if I don’t like them?
I wanted to try something new going into this race, so the team agreed to support a breakaway effort. We felt this could be successful as we were the only team in the race, and it wasn’t a pure climbers race. Jeremy suggested that I try on the flat/false flat sections of the otherwise fast Altamont descent because it would be easier to distance the junior riders on those sections compared to the climbs. Naturally, I inexplicably went for a break on the steepest top sections of the Patterson climb – I did get a decent gap thanks to the (surprised) team blocking, but was caught a few minutes into the descent, first by someone supertucking (more on that later) and then by the rest of the group.
The rest of the descent was uneventful, apart from supertuck dude almost crashing. On the Flynn climb, I rode up to him and started with a compliment (he was riding a really cool Scott foil, clearly inspired by SAFA Brian) before kindly asking him to please not do that again. A few other riders chimed in (even one of the juniors), baffled that he thought supertucking was legal. Also, petition to change the name supertuck as it does sound really cool. Tubesitting?
Back in the race, we had finished the Flynn climb and were zooming on our seatposts all the way down Altamont. There was a moment of soft pedaling from the front riders and I used this moment to attack on the false flat section of this fast road. Thanks to great teamwork, the gap widened. Not anticipating success, now I had to figure out how to do a solo breakaway – I decided to keep my heart rate below 170 to avoid cracking, keep drinking, and wait at least 30 seconds in between glances over my shoulder.
Going into the base of the Patterson headwind climb, I had a 2 minute gap, which narrowed to 1:20 at the top of the climb. I sent it pretty hard (for myself) on the descent and kept my own pace on the Flynn climb, but there were fast and furious attacks on Flynn in the peloton and I was caught shortly after the crest of the climb by two U23 riders. I could tell they were strong and were willing to take more risks than me on the fast sections of the course, but fortunately we were all working well together and managed to get a comfortable gap on the peloton going into the final lap. We were together until the final sprint, when the youths predictably danced away while I pedaled in for third. Jeremy was first from the bunch in 4th, Matthew 7th, and Ryan (despite recovering from illness!) 11th.
Perspective from the peloton from Jeremy:
We enjoyed the opportunity to sit in with Wil off the front. There would occasionally be an attack or a concerted effort to organize a chase effort, but we stayed in good positions to follow those. There was more consistent chasing on the patterson pass climb, which set up for what we expected to be a hard effort to chase down Wil on Flynn. This fell apart a bit on the second half of the climb until the two U23 riders attacked on the steep part. I was unfortunately out of position to follow this to get a free ride up to Wil, but figured that if they caught Wil that group could hold it to the finish. It seems everyone else felt the same way, so there was minimal chasing effort for the rest of the lap.
We decided to sit in until Flynn on the next lap where we would decide whether the break had enough of a gap for us to attack the remainder of the field. At the top of Patterson Pass the break was 3+ minutes ahead so we were ready to race for fourth. The descent was pretty aggressive and I got separated from most of the group as we turned into the Flynn climb. Thankfully Matthew came by and did a great job pulling me back to the group just in time for the steep part. I waited at the back of the group for the steepest part, where I attacked and quickly got a gap that I held to the top of the hill. Then I settled in for a hard and fast ride down the descent and windy flats to the finish. My power meter hadn’t worked all race so I just kept riding on old school vibes, which worked out to keep me away solo for fourth place.
Race Report: Chicago Grit WP/1/2 Day 9-10
Race: Chicago Grit WP/1/2 Day 9-10
Date: July 26-27, 2025
AVRT racers: Rachel Hwang
If you’re only gonna read one, read Day 10.
Day 9: Lake Bluff; Result: 40/63 pulled but placed;
Course: it’s a very technical course. so many corners I lost count, but actually 6 corners. narrow roads twisting and turning through a neighborhood, also meaning narrow turns, with one straighter long section to the finish line
Strava: https://www.strava.com/activities/15246867740
Race Recap:
Ok, this race killed my morale. Long story short I lined up near the front (second row) and got shot out the back within a few laps, and got dropped from the main group in 20 minutes.
From yesterday, I knew I had to line up near the front, so I was literally first to the gate before they staged, and by the time everyone called up, second row(?). The strategy to survive this race was to stay in the front. With the technical course, knowing I can’t keep position and that that’s the strategy to get to the end, very scared about cornering squished between riders, I really got in my head.
We start, and immediately, I’m getting passed left and right, and as I’m not comfortable being in a small space, slowly slip to behind their wheels every time, and that’s how I always end up in the back. Within a couple laps, I go from the near front to the back of the peloton. First few laps are chill, but after a few, it strings out, and I’m playing catch up, doing efforts out of the last corner every time to catch up to the people in front of me. I have power, so I’m able to for a bit, but it’s annoying that every lap this girl would pass me around one of the many corners, only to get dropped out of the last corner meaning I had to bridge the gap, every. Single. Time. So that was a lot of matches. All of a sudden one lap, they were just too far ahead, and I knew (or thought) I couldn’t catch back up. I ended up catching a girl in front of me, and the moto tried twice to get in front of her, but with the corners back to back and narrow rodes, the moto failed, allowing more of us to group and stay in the race as a chase group. I believe we were actually chase group #2, and for a while, I could see the group ahead of us, so achievable, but I couldn’t do it alone. Don’t get me wrong, the group was helping, just not enough, not like that Fount girl yesterday who gave me the last bit of boost I needed. After I got dropped, the rest of the race in that chase group felt pretty easy. There were maybe 6 of us, and about 3 of us who pulled regularly. If I’m trying to win a race, I don’t want to pull, but in this case, knowing I won’t win, knowing I more than likely won’t even make it to the end, knew if I didn’t catch back up, would just get pulled out, so was more than willing to pull if that meant staying in. But I couldn’t do it alone, and eventually we got pulled. From 20 minutes, getting dropped from the main group, to 43 minutes, I guess it was worth it, but man, I was so disappointed with myself.
Day 10: Fulton Market Grand Prix; Result: 32/65 finished the full race in main pack
Course: four corner flat crit, very wide roads, very long (~0.28mi straightaway), one under train tracks
Strava: https://www.strava.com/activities/15258031919
Race Recap:
My morale was basically down the gutter today. Who do I know who’s great technically at crits? Whitney. I texted her, gave her a call, and she coached me through some really good points on how to not get dropped. My main takeaway, always move up. Never settle for my position, and always move up. Second main takeaway, it’s ok to burn matches moving up, because it takes way more energy in the back slinky-ing. Third takeaway, be proactive, not reactive. Get in those first few pedal strokes early before the surge begins.
So I lined up at the front again. As we start, the entire time, I think about Whitney’s voice echoing in my head, “always move up.” I’m still not good at moving up within the pack, so I stay on the outer edge of the peloton the majority of the race, having a security curb next to me. At least the curb doesn’t move, but riders do. As a result, I’m not getting much draft benefit at all, but at least I have the ability to move up. From this race, I also realize I got some decent power, that despite being in the wind for most the race, I’m still able to push and move forward. I also tell myself there is no way I’m getting dropped, that I’ll get dropped from trying too hard before I get dropped for not giving it my all. For the first half of the race, I just kept trying to move up constantly, never settling. By the second half of the race, where I started getting a little fatigued, I would settle if I was in the top 50%. Honestly, that was the entire race. As the laps went on, primes were being shouted by the announcer, and I can’t lie, all those $500 and $200 primes were very enticing. My goal was to finish the race, but I can’t deny there were many moments I thought about blowing my legs up for a $500 prime and to get dropped out of the race. Because in those moments, I actually felt decent, legs, heart rate and all. But no, I need to prove to myself I can finish the race.
When they put up the lap counter, I started counting down the laps, starting to get tired, hoping to make it to the end. I also couldn’t tell what was going on ahead, and apparently there were a few breaks, that’s probably when the peloton was stringing out and I was pushing it a bunch. I was just trying to stay with the peloton. The last few laps started getting really hard, but I managed to keep my power relatively consistent, all things considered in a crit with breakaways, so my legs felt decent, and heart rate still ok. With 2 laps to go, I knew it was go time. For the last lap and a half, it was basically all out effort. Out of the last corner, I managed to pass 2 or 3 people.
I passed the line, I finished. I actually smiled because I finished. It’s not even a great result, people strive to win, but I was just happy I finished. Sure it was a 4 corner crit, and I’m not usually stoked on a flat four corner crit, but boy was I happy today was a four corner crit.
Nutrition: A Torq caffeinated gel 15 minutes before the race, a bottle of Tailwind mixed with Liquid IV for the race.
Take away: I am so incredibly happy I got to race these big P/1/2 fields and gain some experience. That’s what I came here to do, and I was able to get that experience. I’m also very grateful Alto Velo provides me the opportunity to race these events.
Race Report: Chicago Grit WP/1/2 Day 8
Race: Chicago Grit WP/1/2 Elgin Classic
Date: July 25, 2025
AVRT racers: Louise Thomas, Rachel Hwang
Top Result: Rachel pulled but placed
Course: three corners, to a chicane, into a downhill, straight into a corner, straight into a slight uphill, into a corner to the straightaway slight uphill to finish
Strava: https://www.strava.com/activities/15236033636
Race Recap: Rachel Hwang’s Perspective
I always say a lot of riding is mostly mental. Agree or disagree, I like to say it’s 90% mental (give or take).
My goal was to stay in the race the entire time and not get pushed to the back. Louise and I didn’t realize how early they staged, so we started in the back. Race starts, Louise is able to navigate her way into the pack, but I’m struggling to. With my (lack of) skills, I kept getting passed on all the corners, and had to constantly play catch up. The only place I’m able to move up is out of the last corner uphill straightaway where I have to burn matches to move up, but I do as I don’t want to get dropped in the first 5 minutes of the race.
I’m pleasantly surprised how well skilled the field is, with everyone cornering smoothly and no sketchy movements. The only real other experience I had to go off of was Twilight and that was sketchy as hell, where I was behind 4 crashes within 24 minutes of the race. Needless to say, I was very happy with the field. However, I was still getting spat out the back constantly and needed to burn matches to move up. With each lap, I was getting more and more tired, having done 350+ watt surges over and over. At one point, I was with a small group of people slightly dropped, the main field about 6 seconds in front. On the incline, I pull. I pull for the full lap and I’m fading. I pull until we come back around out of that corner again and Fount girl gives an all out effort sprint to catch up to the main group. I’m tired as hell but I know it’s mental, that I have the power to catch up, it’s just whether I want to or not, so I follow close behind. Surely, we catch the main group. The announcer goes, “...they know this is their second chance and that it won’t happen again…”
A few laps later, lap counter 14, minute ~48, I’m dropped. I didn’t fight too hard to not get dropped as I told myself I have two more days of this. In my head, I’m also thinking about a meme I saw on IG about channeling inner Remco and van der Poel, “abandoning the [race]” LOL, and in Remco’s post, how it’s ok to stop. So I did. I have two more days, plus I just did the W2/3 before this one.
Ok, I come back around, lap 13, and they’re not pulling me. I’m tired, take me out coach. I’m not taking myself out, I’m not getting a DNF. So I just pedal, lap after lap, watching the counter go down, wondering when in the world they’re going to take me out. Lap 10, finally they take me out.
I didn’t survive but I made it in the race for almost a full hour, so I’m pretty impressed with myself. And oh yeah, I didn’t know this would be a 75 minute race, and that took me by surprise, but not a happy one. Expecting 60 minute full out effort turned 75, and extra 25%? Too much. So I’m happy with lasting almost a full hour.
Nutrition: A bar or two, one bottle drink mix. I don’t remember the food I actually ate before this race.
Race Report: 2025 Davis 4th of July Criterium - Men’s Cat 3
Race: Davis 4th of July Criterium - Men’s Cat 3
Date: July 4th, 2025
AVRT racers: George Wehner, Kevin Kauffman
Top Result: Both DNF
Course: 0.7-mile figure-8 course. Wide roads with some slightly sketchy pavement in the corners.
Strava: https://www.strava.com/activities/15008967619
Nutrition: Red Bull an hour before the race, and just water during.
Recap: (written by George) Going into the race, I thought it would be a good course for a breakaway, but after getting there and seeing how wide the roads were I wasn’t totally sure how it would play out. Additionally, it was quite hot — around 90 degrees Fahrenheit. I was hoping to get into a breakaway and contest for the win from there.
The race was quite hard from the get-go, and I shuffled to the back early. On lap 2, a guy wearing all black kit clipped his pedal right in front of me and nearly went down, but he saved it. This made me quite wary for the rest of the race, and I really wanted to move up, but with how many turns there were on course, it was quite hard to find good spots to move up. I frequently found riders slotting in front of me on the straightaways and then losing the wheel in the corners, forcing me to close a lot of gaps. It was one of these gaps that took Kevin off the back around this time.
About 20 minutes into the race, I made my way up to the front, but a couple guys had gone off the front at that point. I attacked a couple times to try to bridge the gap, but my attacks were quickly shut down. Later on, the group ended up catching the break, so even if I had bridged up it probably wouldn’t have worked. Pretty soon after this, the heat really started getting to me, and after about 30 minutes of racing I wasn’t able to stay with the group’s surges anymore.
This was quite a frustrating race, as I knew I was just as good of a racer as everyone else in the field and felt that I should be trying for a result, but my legs weren’t great and things just didn’t go my way. Sometimes, you just have a bad day in bike racing, and this just was one of those days.
Race Report: 2025 Tahoe Trail MTB 100K
Race: Tahoe Trail MTB 100K
Date: July 19, 2025
AVRT racers: Rachel Hwang
Top Result: 1/23 Women
Course: 2 laps of 30 miles each, all dirt except the first road climb. Per lap, one small climb, small decent, large 1900ft climb, large descent.
Nutrition: 1500 mL hydration pack, 1 bottle hydration, 1 bottle water. 4 gels. Hydration - Tailwind. Gels - Torq (3 caffeinated, 1 uncaffeinated)
Strava: https://www.strava.com/activities/15168855609
Race Recap:
Read the course and nutrition information above as it’ll provide context for the below.
I’ve done this race 3 times in the past, not that exciting, and almost did not sign up, but saw this year they decided to change the course. I had never ridden it before, but saw it was 10k of elevation, and that enticed me to sign up. I’ve always wanted to podium overall in a big MTB race, so that was my goal coming into it. I had a feeling the 10k would lead to less sign ups, but really, I was just thinking “You miss 100% of the shots you don’t take.”
Last minute, a day or two before the race, they changed it from 3 to 2 laps, totaling ~40mi and ~7.5k ft elevation. Before starting, all I was hearing around me was how horrible this course was this year, and I started getting really worried.
The course is a mass start, down a small hill, then up a small hill, through the Northstar Village, all on road for about a couple miles, before throwing us onto a fire road climb. All this was the same as years past, but then shortly after the fire road turned into really horrible dirt downhill. It was an access road as if someone took a hoe and loosened up the dirt in clumps. As if it couldn’t get worse, it turned into single track, with some technical bits causing people to unclip and walk (including me). The uphills were stressful as I tried not to mess up and unclip and let 10+ people pass me, and the downhills were equally stressful as I tried to hold onto the wheel in front of me to not slow others down. And, it was so, so incredibly dusty behind everyone. This singletrack lasted for 11.48miles. Too long.
This is where I knew the race actually begun. If you guys don’t know, I take a while to warm up, and always start races slow, not intentionally, but literally do not have the power to keep up. As soon as we hit fire roads, I smashed. Again, I wanted to podium. That was basically all I was thinking about. I was so tired of losing all these other races, so tired of not trying my best and knowing I could've given more, and on top of that, just a long week at work.
Typically for long races like these, my strategy is to pace, but today, I just went hard enough to know I could keep the pace for at least one lap and didn’t think about the fate of the second lap. I was third women at this point, and was pretty happy, thinking all I needed was to keep it and not let anyone pass. I killed that first large climb and passed so many people, feeling so good.
First lap done. I stopped at the feed zone to pour some water on myself, frantic as always, and kept going. At this point, I still had more than half my water left so knew I wouldn’t have to stop.
Second lap first small single track climb sucked again but wasn’t as bad without the train of people.
Second lap big climb, I kept the pace up, still same thoughts in my head, tired of loosing, wanting to podium, annoyed with work, letting all my frustrations out. As I started climbing, passing people, one guy said, “I think you’re third for the women.” “Do you know how far they are?” “Uh… pretty far” “That’s ok, I’m just trying to stay 3rd.” “But at that pace you’re going, maybe you can catch them.” I genuinely was not thinking about catching them, but I kept the pace, and surely, I passed the first girl. At the speed I was going and the speed she was going, I knew there was almost no chance of her catching me. I knew because I’ve been the girl passed, watching others speed away slowly, but knowing I wouldn’t be able to match their speed. Shortly after, I passed 1st. At that point, I was overcome with adrenaline, not believing what I just did. I kept pushing, but a few minutes later, the adrenaline passed, and there was no one left (women) to chase. I had about 800ft of climbing left, and I started slowing down. I had to keep reminding myself I would not forgive myself if I let them pass me because I let off the gas, just like all the other races. So I pushed, and didn’t dare stop at any rest stops even though they had such good Honey Stinger products and I would've taken so many handfuls for later. I pushed so hard I actually double leg cramped right at the top - good timing. I raced my way to the bottom, and right before that finish line stretch, was overcome with emotions.
I hardly ever looked at my power. I got a power meter for my XC MTB literally for these long races to know what kind of power I was outputting, but today, I purely went on perceived effort and pushed myself. My power did end up being pretty good, given that it’s so much harder to maintain a high power consistently on dirt.
A race I had done three times prior, two of the 100K, placing 9th and 15th overall, I literally could not believe that I won. Sure, the competition wasn’t as stiff as years prior, and I can come up with many reasons why it made it easy for me to win, but it doesn’t matter. I showed up and did it, and that’s one thing I’ve been struggling with this year of not feeling like racing because of X and Y and not pushing hard because of X and Y. But I gave it everything that day and I left with no regrets.
At the finish line and post race, I was able to hang out with Marc and Nico. I left feeling very grateful for the Alto Velo community, having teammates basically wherever you go, and people to chat with no matter the circumstance and ability.
Race Report: Chicago Grit - Women’s 2/3
Race Report: Chicago Grit - Women’s 2/3
Date: July 18th-24th, 2025
AVRT racers: Maeve Roach
Top Result: 3/11, 6/16, 1/13, 3/12, 2/13, 1/11, 1/17
Strava:
Day 1: https://www.strava.com/activities/15158524566
Day 2: https://www.strava.com/activities/15169602319
Day 3: https://www.strava.com/activities/15181186545
Day 4: https://www.strava.com/activities/15190669363
Day 5: https://www.strava.com/activities/15202261478
Day 6: https://www.strava.com/activities/15214506299
Day 7: https://www.strava.com/activities/15225013362
Race Recaps:
Day 1: This was a pretty fun and dynamic race! The pace felt consistent from the start and over time the group whittled down to 4 of us, two girls from the same team did a good job of continuously making attacks so I feel like I unintentionally made the break just by chasing every move. There was a hill right before the finish, so I was grateful for that since I feel like my sprint still has a lot of work to be done and am much more comfortable with an uphill effort. One of the two teammates made a final attack with one lap to go and I sent it to chase after her. Her teammate jumped on my wheel and I was making ground until the down hill. I was still pedaling hard but wasn’t able to close the gap before the final turn. Right after that turn into the climb her teammate came around me and I tried to counter but ended in 3rd, which I am still happy with but probably could have got 2nd if I hadn't chased so hard and just saved my energy for the kicker at the end.
Day 2: This was a pretty technical course, and 1.5mi so a bit longer too. It was rainy and wet so that made me a bit more nervous. The race started and girls were already almost sliding out over paint and around corners and cutting each other off. I hung tight the whole race but felt like I had to work after the u-turn every lap to catch back up to the group. With two laps to go, me and this girl from team wisconsin were working together to push the pace and I felt like we were doing a really good job and I was in a good position but then right before the last u-turn the field swarmed us and I got pretty nervous because the turn was sketch, it was rainy, and seemed like a terrible time to go 4 wide into a u-turn. I worked to catch the field again before the last turn but was in 6th position and just wasn’t able to make up ground. Looking back, I had thought of going around the girl leading before the u-turn to make some ground and wish I had done a longer effort to the finish but it's a long stage race so I'm just happy to have stayed upright during that whole thing.
Day 3: The course was a 4 corner crit with a little hill on the back half of the course before the second turn. The race started and girls were kind of making attacks but then when they got to the front they didn't want to work so everything would slow down again. I was getting pretty tired of the yo-yo and people dive bomb-ing the corners so after the first prime I sent an attack (maybe like 15mins into the race) and nobody came with me so I did a solo TT effort for the rest of the race. I ended up putting 1 min 20 seconds on the field and looking back definitely should have asked someone for a time check and conserved some energy but the triathlete in me just had to send a TT effort I guess.
Day 4: This was a three turn course with a very slight hill after the first turn. I stayed in the pack and some people attempted to make moves but nothing serious until the prime laps, two girls went from the first prime and after we caught up to them I made an attack. Two girls were on my wheel but wouldn't take pulls (one girl tried but didn't have the legs and then dropped back). So I let the field catch back up because I was not about to pull the whole time. With about 7 laps to go I made another attack and there was a group of 4 of us but again only one person would also pull but didn’t have the legs and pulled off after a couple seconds. So I was stuck at the front pretty much from then on. I slowed down a good amount to let my legs recover and then the last lap picked it up and after the last turn sent a long sprint. Two girls on my wheel were able to just get around me at the finish but I was still able to pull off 3rd after a lot of work that race, so still happy with the result and effort.
Day 5: This course was super fun, it had a sharp right hand turn into an uphill, and a sweeping turn into a long slightly downhill straight to the finish (that part had a bit of a headwind). At the start this one girl made a solo break away attempt, the field sat tight and this one girl and I slowly brought her back in. I made some attack attempts at the hill, but the field pretty much stayed together. Going into the last lap I took the u-turn a little too wide and ended up pretty far back after the climb, so I used that straight before the last turn to work my way up. I ended up going into that last turn in first, which was definitely not the best position to be going into a slightly down hill headwind finish, but then my shoe unclipped so I had to slow and get that together and like 5 people passed me, so I surged after turning and getting my shoe clipped in and got into third position. I started my sprint the same time as the girl ahead of me and we both passed the lead out person, but I didn't have the real estate to sneak into first before the line, but still super happy with 2nd in a field sprint!
Day 6: Another course with a sharp turn, but (sadly) no hills today. I started the race making efforts after turns to see if I could make a break early on but nothing stuck, so I chilled for a couple laps and let other girls make and chase attacks. With 2 laps to go I was getting tired of people soft pedaling at the front so I sent a 60sec effort before the sharp turn to ride people off my wheel, and then made another effort after the turn to stick a solo break the last two laps. It stuck so I was able to snag the win! I think the biggest lesson from this race for me is that analyzing your strengths and the tactics that go along with how to execute them and then having the confidence to commit to them in a race is really helpful.
Day 7: At the start of this one I went out kind of hard to set the pace, some other girls also took turns pulling but for a lot of the first half it was still that yo-yo kind of effect. Maybe that is just crit racing and I need to get used to it but every time the field slows down I get the urge to make an attack. So, I tried to make another attack about half way through which didn’t stick, so I sat in for a bit until we hit the 7 laps to go, then I decided to make another attempt at a break down the straight away and then took the u-turn quick to make a gap. Then it was 6 laps in another solo break for the win, I was definitely feeling the fatigue from the last week of racing but focused on pushing it after turns and holding a consistent power effort down the straights.
Race Report: 2025 Crusher Cup (XC MTB) Race #4 - Men’s Cat 2/Sport
Race: Crusher Cup (XC MTB) Race #4 Men’s Cat 2/Sport Age 35+
Date: July 27, 2025
AVRT racers: Michael Matthews
Top Result: Men’s Cat 2/Sport Age 35+ 1st/9 (Men’s Cat 2/Sport Overall 1st/26)
Course: Lake Sonoma round #2! The series returned to Lake Sonoma for more low-tech climbing-heavy racing. Hazards included dusty loose trails, tight loose downhill switchbacks and the heat (which didn’t end up being all that bad).
Strava: https://www.strava.com/activities/15256363896
Nutrition: ~90g of carbs in a bottle for pre/during race nutrition. Consumed two thirds of it beforehand, and left rest to sip on the climbs.
Event Recap: I knew most of the trails from Race #1 of the series and did some desktop recon to find that this would not be a technical course. Of the races in the series this was the most climbing per mile. My results have been better, the more climbing there has been, previously. My plan was to try to race at the front the whole race and go off solo as soon as possible. I got off to a perfect start and by the time we hit the first descent, after a short pitch to start, I was wheel 3-5 including the juniors - who are usually out of reach because of the start staging. In the third switchback on the descent I lost my handle and went over the bars, but without hitting the deck. Lost two wheels, but back on the bike unscathed. On the big climb of the first lap I slowly chipped away and came into the rolling singletrack to the finish with a few seconds of a lead. Halfway through the descent in lap 2 I slid out and hit the deck at speed unharmed but lost two wheels in the process. My arm and knee were scraped up pretty bad but nothing slowed me down. I got the wheels back on the climb and headed into the last lap in the lead again. On the descent of lap 3 (final) two juniors gained ground on me in the descent and chased me up the climb, keeping me on my toes. In the end it was a 10-ish second gap to 2nd place in Cat 2 and 9.5 MINUTES to 2nd place in my age category!
Race Report: 2025 Sand City Criterium Women’s 4/N & Women’s Master’s 1/2/3 35+
Race: Sand City Criterium 2025, Women’s 4/N & Women’s Master’s 123 35+
Date: Sunday: July 27, 2025
AVRT racers: Katie Monaghan, Elena De La Paz, Chris Davis, Janene Ostrow
Top Result: Katie Monaghan 2/11
Course: Approximately 1k in length: 10 corner criterium with a very short steepish (max 9%) hill after corner 3. Slightly downhill after the hill into corners 5 and 6 and pretty flat from there. Good pavement. Honestly great course: fun, technical, punchy
Strava: https://www.strava.com/activities/15255602946
Nutrition: Coffee and Peanut butter and banana sandwich on drive over. Gushers before the race (am I 5 years old?) Nothing during.
I had been eyeing this race for some time. I wanted to race it in April of last year and when it was rescheduled to July, it no longer worked with my schedule. So I was excited that I could race it this year because it seemed like a great course. Honestly, it did not disappoint. Not too far from home, technical, fast, good pavement and a punchy little hill that is not punishing like Cat’s Hill.
I was a little disappointed at the small field size. I like to race when I'm a small fish in a big pond. We eventually got the registration numbers up to 11 racers, so it was at least a solid field. The field combined women’s 4/N and women’s masters 35+ 123. At the start of the race I targeted Rachel from Sprinkles. We have raced each other a few times, trading higher placements. I did not know the master’s women well.
The race mainly went at a fast but controllable pace. I really liked racing with the master’s women. They were assertive, safe, mouthy in the best way and looking to keep the race interesting.
I wasn’t really sure if I wanted to try for a break or sprint. I’ve never been in a break and my sprint is solid but nothing to write home about. About 10 minutes into the race, I attacked thinking I could maybe hold a solo break. I had a good gap on the field but when I would look back, the peleton continued to be only maybe 20 meters behind me. My heart rate was high and 30 more minutes of that misery seemed awful, so I eventually gave up and slotted back into 5-6th wheel for a few laps to recover. Hannon recently called me out at Egan for only trying when I think something is fun and he’s honestly not wrong. Attempting a solo break to suffer in my own misery hurts. Cornering with and around others is engaging, dynamic and fun.
After that I mainly tried to stay in the first 4 wheels and not take too many pulls. I occasionally was on the front again if I wanted to move up a wheel or two since our race was small, but I tried to keep those short.
Entering the final lap, I was sitting second wheel behind Andrea (San Jose Bike Club). I actually hadn’t seen Rachel (Sprinkles) in a minute but she came around the outside on the hill to attack. I quickly jumped on her wheel for the final 5 corners. This was my mistake for 2nd place. I stayed on her wheel for all the corners but was feeling pretty in control. I ended up having to break behind her at the final corner before the sprint and came away with second. I wish I sent it around her sooner but ya live and ya learn.
To be honest, I have very much wanted a podium this season because I’ve felt a lot stronger. It was nice to get this and it does secure a Cat 3 upgrade for me. However, I am really looking forward to racing as a support role for a while. My most fun race of the season was Land Park where we slowed the field for Steph’s break and I got to tag team with Louise as a lead out for Kat for 3rd. I am really a ball sports/team effort person at heart and not an aerobic monster, so I’m excited for more of these types of efforts in the future.
Race Report: 2025 Watsonville Crit - Women’s 345
Race: Watsonville Crit - Women’s 3/4/5
Date: July 5, 2025
AVRT racers: Louise Thomas
Result: 2/11
Course: 0.7-mile loop featuring a short hill (0.1 miles @ 3.3%) and a couple of hairpin turns with cross-gutters
Strava: https://www.strava.com/activities/15019693598
Nutrition: a fig bar and some gummy bears before the race, and a bottle with mix during
Recap: With the hill and hairpins, and me not being much of a sprinter, I figured a breakaway was my best shot. I launched my first attack on the hill during lap two. Unsurprisingly, it didn’t stick with everyone still fresh. I slotted back in for the next couple laps. A few more attacks followed on the hill, but it was tough to stay away. After the climb, you had to brake for a corner with a cross-gutter, and then it was straight into a headwind. Maybe someone with less self-preservation would have carried more speed through the corner, but I wasn’t feeling heroic.
Since hill attacks weren’t landing, I tried sending it on the back straight before the final corner. That felt like a smarter move, but still wasn’t enough to get away. By then, we’d shed a few riders. One of the women suggested we start rotating to stay away. I didn’t think those dropped riders were a real threat, but it was in my interest to get others working, so I helped get things organized.
With three to go, I made one last attempt on the hill and carried as much speed as I dared through the corner. Still no dice. On the final lap, Sarah started tightening her shoes and I knew it was game on. Adelaide launched a long attack before the last corner but instead ended up leading us out. Sarah was on her wheel, and I was on Sarah’s. I gave everything on the final hill to catch her, but didn’t quite have the legs. I held off everyone else in the sprint though, hit my season’s 5-second max power, and was rewarded with many tasty strawberries. All in all, a good day.
Race Report: 2025 Truckee Tahoe Gravel — Men’s Long Course
Date: 6/28/25
AVRT Racers: David Domonoske
Top Result: 13/166
Course: https://www.strava.com/routes/3168622351695908608
100 miles of beautiful gravel through the Sierra Nevada mountains. After 7 miles of pavement, the real racing begins with a 6 mile moderate dirt climb, followed by 9 miles of chunky, flat gravel. The long climb of the day begins at mile 23 with some steep, rocky terrain before continuing up 3 miles of steady 5.5%. After topping out at 7600 ft, a long road descent takes us all the way down to 5000 ft. A hot, exposed climb takes us out of the Sierra Valley, and then a stunning descent continues North back up to Sierra Brooks. The final climb is a gradual 2.5% for 7 miles, before the last 28 fast and rolling miles lead back into Truckee.
Nutrition: Pre-race, I ate a lot of pasta (so much pasta) the night before and tons of oatmeal (take your biggest tupperware and fill it) in the morning. I started the race with a bladder with 200 grams of carbs, 2 bottles with 100 grams each, a Ziploc bag of fruit snacks, and 6 pieces of cinnamon twist bread. I took water bottle hand ups from aid stations at mile 41 and 60, filled a bottle with electrolyte mix at 81, and a final water bottle at mile 90.
Strava: https://www.strava.com/activities/14945989746/overview
Race Recap:
This isn’t an event that I specifically trained for, so I went in with a fun mindset — zero expectations, but still entertaining the possibility of doing well. I’m not a climber and I knew I wouldn’t be able to climb with the front group, but the course features a lot of flats. I expected my endurance to pay off on such a long race, so I rolled up to the start line cautiously optimistic that it could be a good, albeit long, day.
I started the day off on the wrong foot by staging at the back, under the impression that the beginning was going to be neutral and I’d be able to move up through the group during the first few paved miles. It wasn’t neutral, and I was stuck behind a lot of people that had no interest in staying with the front group. My max heartrate for the day was 9 minutes into the race as I closed gaps to get up to the front — whoops.
Once we hit the first climb, I just rode my own race. I set my power at the upper end of tempo and ignored what everybody else was doing. Dozens of people passed me, but I did what I felt was the fastest way for me to get to the finish. A group of 5 formed and we rolled through the next flat section together. We flew through some rocky descents, and I was happy to be in a small group where I could see the road and rocks, rather than being consumed by a large dust cloud with no visibility.
As we started the long climb, I fully expected to be dropped by the people around me. We climbed up the steep chunky section together, and I set the tempo going up the gradual climb. Again, I set my power where I thought I could hold it, and I was pleasantly surprised to see the group behind me dwindle from 5 to 3 to 1, until I was riding by myself.
At the top of the climb, I fit as many fruit snacks as I could physically fit into my mouth and then bombed the descent. I caught a few others until it was 5 of us crossing the valley floor. The group dropped me at the beginning of next climb, but it was long, hot, and exposed, with plenty of time for people to crack. I just kept riding at my own pace and pouring water on myself to stay cool. By the top, there was only one rider left in front of me from that group.
The descent was gorgeous and I was able to enjoy it for a little extra as I faced off with some obstinate cows. I grabbed another water bottle at the bottom and began the final shallow climb. This is where my endurance started to really pay off. I reeled in the rider that had been sitting just a few seconds ahead of me for the previous climb, and then another. After reaching the top, all the climbing for the day was done and I just had 30 miles of false flat descending left.
I kept the pressure on the pedals and started to reel in more riders. I’d push a little extra as I approached each rider so that I passed with enough speed that they’d have to sprint to catch up. Only one rider got on my wheel, and I was able to drop him in a rougher gravel section soon after. Everything was cramping and I was at risk of blowing up, but I was able to sustain the pace all the way to the finish. By the time I crossed the line, I had moved all the way up to 13th!
It was a fantastic day and a great race. If anybody’s looking to scratch a little gravel itch, this is a great way to do it that’s not too far from home.
Race: 2025 Pescadero Coastal Classic - Women’s Masters District Championship
Race: 2025 Pescadero Coastal Classic - Women’s Masters District Championship
Date: Saturday July 12, 2025
AVRT racers: Hannah Chen, Kristin Hepworth,
Top Result: Kristin 1 of 8
Course: 1.7 laps of a loop. Race begins with a neutral rollout to Stage road, where there are two short climbs. Race then continues onto 84 for several miles before turning into the feed zone on Alpine. The race then takes another turn onto the Haskins climb, the longest climb of the race. After the climb, there is a 9 mile descent to Stage road. First 4 miles are technical with several hairpin turns, the remainder is fairly straightforward.
Nutrition: Bagel with peanut butter for breakfast, EF energy balls just before race and during. Nuun endurance in bottles, one SIS gel and one carbs fuel gel.
Strava: https://www.strava.com/activities/15094420961
Recap:
Heading into this race, I was excited. Our original plan was to merge the masters field with the short course women so we could race as a team—set a hard pace, try a break on Stage Road, and just go for it. I was ready to take risks and see what we could make happen.
Unfortunately, that plan unraveled at the start line. Two riders in the masters field didn’t agree to combine the races. I briefly considered switching to race as a Cat 3 instead—because the goal was to podium in the overall short course race —but with the district championship on the line, and the official saying changes weren’t allowed at the start, I stuck with masters.
Hannah and I rolled out together, both a bit disappointed not to be with our teammates in the short course. The race itself started slow—eight riders, not much action early on. But by the first Stage Road climb, the field had already thinned to five. By the second climb, we were down to four: me, Hannah, Jane (unattached), and Wenny Shark from Super Sprinklers.
After the first Haskins climb, it was down to just Jane and me. She was riding strong—steady on the climbs, fast on the descents. We regrouped briefly on the downhill, picking up Robin Kutner and another short course rider. The four of us took pulls along Pescadero Creek, when I got nailed by a wasp in my leg. Definitely worse than any bee bite I’ve had. (I also got stung the week before on the same road). I gritted my teeth and kept pushing.
Eventually, it was just Jane and me again as we hit the next Stage Road climb. I grabbed one of the bottles at the top from that cool contraption Drew made. I was happy to have it. Jane stayed relentless, strong both up and down. We took turns pulling on 84 and were side by side going into Haskins Hill. I dropped her early on and climbed alone at a good pace until the finish line. She rolled across a couple minutes later. I’m glad I was able to race in the Pescadero road race again this year. It’s my favorite! Go AVRT!
Race: Pescadero Coastal Classic - Men’s 35-49 Cat 1/2/3
Date: July 12, 2025AVRT racers: Jeremy Besmer, Ryan D, Matthew1
Top Result: Matthew (19/38 overall and 6/8 in 45-49)
Course: [Plagiarized from Wil's Cat3 report]: ~72 miles, 3 ascents of Haskins climb which the race finished on. After a neutral rollout from Pescadero High School, the race begins on Stage Road with two short climbs separated by fast descents. A right turn off of Stage leads to 7.5 miles of gradual 1% uphill with a few punchy rollers. Next is a right turn onto Pescadero Road with a short uphill/downhill before turning right onto Pescadero Creek Road for the final Haskins climb (1.6 miles at 7%).
Strava: https://www.strava.com/activities/15095767552Nutrition: Matthew raced with two bottles and two flasks of gel with about 120g of carbs each.
Recap: Written by Matthew (and Jeremy + Ryan)
This race combined three age groups, 35-39, 40-45, and 45-49. We had two in 35-39 group, Jeremy and Ryan, and me in the 45-49. Prior to the race, Jeremy gave me some good intel on strong riders in the field. In return, I'd (already) given Jeremy and Ryan some bad intel, prior to the race, that last year the race had some half-hearted breaks that never were in danger of staying away. Although that was true... LAST year, it wasn't true at all this year.
Early on the first lap a break of two went away, with two 40-45 year olds... and it quickly gained a minute and then more on the field as no one (myself included) was willing to chase. The first lap was extremely slow for the peloton. In the second lap, Ryan put in some efforts at the front and was able to form a breakaway of two, that stayed away for maybe twenty minutes or so but was still in sight. Eventually a third person bridged up. At the bottom of Stage the group ended up picking up the pace, and when the group was only about 10 seconds back and looked to be caught, Ryan drifted back to the field… but the other two breakaway partners managed to stay away, because a larger break formed at that point, maybe six people, and went away and stayed away. On the second Haskins climb, Jeremy put in some efforts at the front to try to bring the break back but there wasn’t enough group efforts to pull that break back in. On the last lap there was some attrition and Jeremy + Ryan ended up on the wrong side of a split. I was still towards the front (of the non-breakaways) and doing OK until the climb really started on Haskins, and I didn't have the power to climb at all - it wasn't close, I was only able to do 4.5W/kg and everyone else walked away from me.
It was nice to race with together with Jeremy and Ryan; apologies for the bad intel/strategy, and I'm hoping to gain some fitness and do better next time.
Race Report: 2025 Pescadero Coastal Classic - Women’s Short Course P123 + 4/5
Race: Pescadero Coastal Classic - Women’s Short Course P123 + 4/5
Date: July 12, 2025
AVRT racers: Kat Zgraja, Katie Monaghan, Robin Kutner, Sam Dewees
Top Result: Sam Dewees (3/15 (Cat 4/5)), Kat Zgraja (3/5 (Cat P/1/2/3))
Course: ~47 miles, 1.7 laps of the course, each lap with 3 climbs (Stage 1, Stage 2, and Haskins). The race began with a neutral rollout from Pescadero High School followed by Stage Road, which featured two shorter climbs and two twisty descents. Then, the course was flat/rolling until Pescadero Road, which was slightly uphill leading to Pescadero Creek Road, where the longer Haskins climb began. After climbing Haskins, there was a fast and long descent back to Stage Road to start the second lap. The race ended at the top of the second Haskins climb. The pavement was mostly smooth with a few cracks here and there. It was chilly at the start of the race, but warmer by the time we made it to the finish line.
Strava: https://www.strava.com/activities/15093420334
Nutrition: One Picky Bar ~30 minutes before the race; two bottles with Skratch during the race.
Recap: Written by Sam
This was my second climb-y road race (the first was Berkeley Hills in April, where I finished in a small chase group), so I wasn’t entirely sure what to expect, but I felt reasonably confident in my fitness and climbing abilities, so I was hopeful to hold my own in the race and be competitive with the other cat 4/5s.
Before the race, we expected to be combined with the women’s masters fields since they were relatively small, so we developed a team plan to protect Kristin in the master’s field. Right before the whistle, though, we learned that the masters fields would race separately even though we had been told the masters would join us. So we were down to four teammates at the start, and the main team competition (Super Sprinkles) had about eight.
The pace was relatively chill until we turned onto Stage Road and the first climb began. Super Sprinkles immediately attacked, so riders hammered the two Stage climbs and descents. A small breakaway group formed with two Super Sprinkles riders, one unattached rider, and Kat. I was very determined not to get dropped, so I pushed the climbs and descents and smashed solo for about a mile on the flattish section that followed to bridge up to the chase group of six riders, including Katie. We then rode together for pretty much the remainder of the race, trading pulls for most of the flat and rolling sections. Katie kept the paceline efficient, and we continued gaining on the breakaway group. We found Kat after the first Haskins descent, and she joined our chase group. Given how dynamic the course was, I had to constantly remind myself to stay engaged and not let up on the effort, both physically and mentally. I wanted to finish the race feeling like I put in everything I had on the day, and didn’t give up at any point, and there were certainly moments when I wasn’t sure if I had the legs or descending skill to stay with my group, but I was able to hang with them until the end of the race, which felt like a huge achievement.
We lost one of the riders in our chase group on the last Stage climb, but essentially stayed together until we turned onto Pescadero Road and neared the last Haskins climb. One of the Super Sprinkles riders in our group attacked before the climb, and we didn’t respond (I personally thought we would catch her on Haskins, but she managed to stay ahead to the finish line). Then, we all emptied our tanks on Haskins. Another Sprinkles rider attacked halfway up the climb, and I managed to inch ahead of the rest of the group, and catch one of the riders from the original breakaway group toward the top of the climb, rolling across the finish line in 5th overall and 3rd in the 4/5 category.
Overall, this was a great racing experience, and I learned so much about race dynamics and pushed my own limits as a cyclist. I think I can actually descend reasonably well now, which only took five years to be able to say :)
Race Report: 2025 Pescadero Coastal Classic Men’s Cat 4 7/12/25
AVRT Racers: Jack Lund, Vasyl Stokolosa, Sam Moskal, Adam Beliveau, Shai Traister, James Riegger, Phillip Maier
Course: ~47 miles, 2 ascents of Haskins climb which the race finished on. After a neutral rollout from Pescadero High School, the race begins on Stage Road with two short climbs separated by fast descents. A right turn off of Stage leads to 7.5 miles of gradual 1% uphill with a few punchy rollers. Next is a right turn onto Pescadero Road with a short uphill/downhill before turning right onto Pescadero Creek Road for the final Haskins climb (1.6 miles at 7%).
Strava: https://strava.app.link/VqN9nt4T0Ub
Fueling: 1 large bottle with 3 scoops Formula 369 (1 of which had caffeine)
Our event was the largest of the day, ~60 total entrants. The plan: No plan, just hang in there and survive the attritional race as best as possible. Our biggest worries going into things were the initial chaos stemming from 60 Cat 4 riders, and the speed of our first Haskins.
Leading up to the first two stage climbs was chaos. Our peloton took up the entire road, with no regard for oncoming cars. The first two climbs went off really hard immediately shedding ~1/3 of our numbers. In addition over the top of the second climb a small group of 3 riders went for a break (1 Thursday and 2 unaffiliated). The peloton did a half hearted attempted at chasing leading up to Haskins due to overall confusion about who and how many riders were up.
Luckily the break itself was falling apart as two of the members were larger guys able to handle ripping the flat terrain between mountains and one was not. The two started to play games to drop the third eventually leading to the breakaway being reabsorbed after the first Haskins.
A bunch of us tried to Sag climb the first Haskins, which led to a required hard effort after the descent to catch the leading group (which was itself pushing hard to catch the break). Vasyl, was the man of the hour here, repeatedly bridging gaps and ensuring a large group of us were still in the race.
The second lap is when the attrition really began to show, after the two Stage climbs the group had shattered, requiring multiple riders to bridge to the front group, eventually leading to a front peloton of ~20 going into Haskins.
Vasyl attacked going into the final climb, but the peloton kept him within 10s. The race ended with a brutal final effort up Haskins where amazingly one of the initial breakaway riders had the strength to pull off first. There was a small sprint battle for 2nd and 3rd in the 1ft gap between the yellow lines and a train of cars with Alto Velo’s top results pulling in for 4th (Phillip Maier) and 6th (Jack Lund)
Overall this was an amazing race, and we (the AV participants) are eternally gratefully to all of you (the volunteers and community) for making it all happen !!!
Race Report: 2025 Pescadero Coastal Classic - Men’s E3
Date: July 12, 2025
AVRT racers: Wil Gibb, George Wehner, Kevin Kauffman, Drew Mathews
Top Result: Wil Gibb (4/18)
Course: ~72 miles, 3 ascents of Haskins climb which the race finished on. After a neutral rollout from Pescadero High School, the race begins on Stage Road with two short climbs separated by fast descents. A right turn off of Stage leads to 7.5 miles of gradual 1% uphill with a few punchy rollers. Next is a right turn onto Pescadero Road with a short uphill/downhill before turning right onto Pescadero Creek Road for the final Haskins climb (1.6 miles at 7%).
Strava: https://strava.app.link/SZFcKJGPYUb
Nutrition: Two bottles with 120g carbs each, 90g gel, two neutral feed water bottles
Recap: Written by Wil
Going into this race as the biggest team, we felt the expectation would be on us to set the pace and control attacks. Drew and Kevin offered to patrol the front to do just that, with George and I sitting in as much as possible for the climbs. Thanks to their work, there were no significant attacks on lap one, though the pace was still high. Pescadero’s reputation for being attritional was on full display, with the group’s fastest times being set on the first lap and getting slower throughout the race. This meant that at the first Haskins climb, the group already splintered, leaving George, myself, and about ten other riders to chase a break of two that had a small gap rolling over the top of the climb. Sadly, I dropped my (Shimano!) chain at the crest of Haskins and had to get off the bike to fix it. My efforts then switched to chasing back to George & the main group on the descent.
Once I got back to the group, there was no sense of urgency to chase back the two ahead, especially since the largest remaining team (Sycip) was represented in the break. The pace on Stage was again high, and Drew was still able to help the team with very well placed water in Bottle Grabs. Unfortunately, George got boxed in behind slowing riders in this feed zone and had to burn matches chasing back down Stage and up 84. This meant that at the top of the second Haskins climb, our group had narrowed to 8 and I was the sole AVRT rider remaining. Worse yet, there were four Teslas ahead of us on the Haskins descent whose autonomous driving software clearly were not connected to Strava, as they slowed us down significantly. When they finally turned off the road, their sharp braking forced me to take evasive action into the ditch, though I miraculously stayed upright (kudos to AVRT team camp gravel ride?!).
After this Musk-driven misadventure, it was clear we would only be racing for the final spot on the podium. There were no real attacks since people were trying to save their legs for Haskins. My goal was to be in a good position for the climb, though I made the mistake of being in too good of a position (the front). Instead of varying my cadence and power trying to slot back, I decided to just set a hard pace I knew I could keep to try and discourage attacks. Since no one came around, every so often I attacked out of the saddle to see if I could distance myself. This made-up (ill-advised?) strategy brought the group from eight to four riders. Coming around the final bend, I knew the climb flattened so I launched one final (too early) sprint, and a Team California junior rider came around me by a bike length to take first from the field.
This was a hard but fun race, and I’m especially grateful to all of the amazing volunteers who made this event possible. Also huge thanks to photographer Christophe Testi who captured so many moments of this race. See below for one of them – me attacking (or leading out?) the remaining riders during the final moments of the race.
Race Report: 2025 USAC Pro Nats - Men’s RR
Race: 2025 USAC Pro Nats - Men’s RR
Date: 5/26/25
AVRT Racers: Nathan Martin
Top Result: 24th - Nathan
Course: 10 laps of a 13.1 mile loop with 1,100 ft of elevation gain. Two climbs, one about 1.6 mi long, starting flat and gradually going up to about 12% gradient, another about 1.7 miles long with a steep 10% starter section for 0.6 miles, then some stair steppy stuff the rest of the way. Some turns through downtown as well as we did part of the crit course. First two laps only included the first 1.6 mile climb.
Nutrition: Lots of bottles of mix and plain water
Strava: https://www.strava.com/activities/14604430408
Race Recep (written by Nathan):
This was going to be a super tough race. The WorldTour lineup wasn’t the same as previous years, but we had 2 Ineos riders in Artem Schmidt and AJ August and Quinn Simmons riding for Trek. EF-Aevolo had a good squad, and a couple other U23 devo teams had riders as well. In addition, pretty much every strong rider in America was here, so it was going to be tough.
I did not start out well. I was nervous, and was hanging around the back the first two circuits of the junior course, and I got caught behind 2 crashes at the top of the climb each time, having to chase on the descent and burn some matches early. Obviously not what you want for a 130 mile race.
Once we did our first ascent of the 1.7 mile long climb on Bridge Road, I knew it would be a long day. Those first two efforts had definitely sapped my legs, and hanging around at the back of the group through the corners of the crit course didn’t help either. The descent after each climb was super fun though. Very flowy, didn’t ever feel unsafe in the group, had a lot of fun which is rare for me, usually I hate descents.
I tried to move up where I could, following good wheels like Tyler Stites or Artem Schmidt, who was going back and forth from the Ineos team car for AJ, but just didn’t feel comfortable fighting for wheels with some of these guys. There were a couple other crashes in dumb spots which didn’t inspire confidence for me, either.
This would carry on until Lap 7, as guys slowly started dropping off, when there was not so much an attack but an acceleration on Bridge Road, and me and some others couldn’t follow it.
We rode together as a small group for Lap 8 before we were pulled with 2 to go.
Overall disappointed to not finish the race. I know I had good legs, but was held back by some poor positioning and decision-making. It was a super cool experience to be able to ride with some WorldTour and Pro-Conti riders, though, so I enjoyed that. And a big thanks to my dad, Roger, for flying out to do feed for me, and happy to get some screentime on the video feed for AV!
I also got a pretty silly fine for feeding the second lap. The tech guide said we could, but apparently that was before 30km into the race, which is the rule, no feeding until the first 30 km pass. Unfortunately USAC decided to keep the fine, so I am happy to say I got my first UCI fine (and it must be paid in Swiss Francs!)
Race Report: 2025 Crusher Cup (XC MTB) Race #3 - Men’s Cat 2/Sport
Race: Crusher Cup (XC MTB) Race #3 Men’s Cat 2/Sport Age 35+
Date: July 6, 2025
AVRT racers: Michael Matthews
Top Result: Men’s Cat 2/Sport Age 35+ 1st/9 (Men’s Cat 2/Sport Overall 7th/34)
Course: The Delaveaga Park Crusher Cup featured the traditional UCSC Western Collegiate Championship course. The course had a great mix of fast hardpack with sections of more technical roots and rocks. It was a 2.5 mile lap completed 4 times for Cat 2, with 300 ft of climbing per lap. A couple loose dry corners, steep rocky descents and two punchy “climbs”. Pass opportunities were almost strictly on the climbs.
Strava: https://www.strava.com/activities/15028809158
Nutrition: ~90g of carbs in a bottle for pre/during race nutrition. Consumed two thirds of it beforehand, and left rest to sip on the climbs.
Event Recap: Recon’d the course by completing the back third before lining up. Having raced a bunch already this weekend my goal today was to stay upright and salvage as many points in the series as possible. I was definitely on the back foot energy-wise, but always excited to race XC! Off the gun, I was able to jump all of the 19 to 34 field with my main competitor in the 35+. He was fresh and coming off riding at elevation last weekend. I decided that I would hold onto his wheel as long as I could, and if I had enough in the end, try to jump him for the win. Second place would be okay for me in this race after having taken first in the first two races. Before the first lap was over my main competitor lost it in a loose corner and crashed. He was okay. I had no idea how far back he was afterward, so I rode on at a sustainable pace to try to keep the gap. My lap times told an unsurprising story (I was shedding 20s per lap). I was tired! I hung in there and stayed upright for the win. Coming in a minute ahead of second place!
Race Report: Watsonville Criterium (Men's Masters 35+ 1/2/3/4)
Race: Watsonville Criterium - Men's Masters 35+ 1/2/3/4
Date: July 5, 2025
AVRT racers: Michael Matthews
Top Result: 11th Place (of 26)
Course: The course has five corners and a little kicker to the finish. Rough roads in places and killer drainage, like the wheel-eating kind. Wind was a factor on a few straights. Crispy cool ocean-town weather.
Strava: https://www.strava.com/activities/15019203196
Nutrition: ~100g of carbs in a bottle for pre/during race nutrition. Clif bar, gel, caffeinated beverage and electrolytes after the C4/5 race.
Event Recap: This was my first time racing with a masters category 1/2 field, so I knew it would be fast. My goal was to finish with the bunch. Cyclesport had a strong team of five, and San Jose Bicycle Club had a team of three. I was solo. My instincts played out as usual, and I tried to join breakaway attempts with other solo riders. After a few attempts that were foiled by Cyclesport each time, I knew it was their race to lose. No one made any serious moves after that and the pace just stayed high until the last few laps. I managed to stay with a group of five as we crested the hill with three laps to go. I could feel every muscle fiber in my legs after this and the three other crits, I’d done in the last 36 hours. I knew I would have nothing for the sprint, but that was no surprise. I finished at the back of the bunch, but I made it! And that's worth celebrating, this time ;) !
Race Report: Watsonville Criterium (Men's Cat 4/5)
Race: Watsonville Criterium - Men’s Cat 4/5
Date: July 5, 2025
AVRT racers: Michael Matthews
Top Result: 2nd Place (of 25)
Course: The course has five corners and a little kicker to the finish. Rough roads in places and killer drainage, like the wheel-eating kind. Wind was a factor on a few straights. Crispy cool ocean-town weather.
Strava: https://www.strava.com/activities/15018564144
Nutrition: ~100g of carbs in a bottle for pre/during race nutrition. Typical breakfast eaten at home. Sugar, food, and electrolytes ready for in between races.
Event Recap: After racing twice yesterday, I came into today planning to be a little less active and more on the opportunistic side… let’s see how that went. No teammates today, and no teams with numbers in the race. Ripe for a breakaway win. From the start, I stayed close to the front as the field learned to maneuver the course, from the kicker to the finish to the drainage ditches, and parked cars. After a few laps, and about 10 minutes, well, I got bored. I attacked heading into the pitch up to the finish and took one rider with me. We worked together for a couple of corners and the gap grew slowly. Once we realized we had a chance to make something stick it was time to commit. All in. There were 40 minutes left in the race, oof. But, this is how I like to ride criteriums, so I was not upset. We got to working well together and would shoulder check every couple of corners as we took pulls. We shared the laps 50-50. For much of the course we were out of sight quickly. Eventually on the long start-finish straight we could no longer see the group behind. We kept working to maintain the gap at a reasonable pace. Skip ahead to the last lap. Games begin. I exclaimed that the gloves were off now. We made the final corner and headed towards the pitch up to the finish. My plan was to attack the opposite shoulder that he looked to next. He looks left, I jump right…. and drop my chain. Second place, in destructive fashion. Luckily, there was no surging group coming from behind. Fun race, my style! Masters 1/2/3/4 next…