Race Reports

Alto Velo Alto Velo

Race Report: 2025 Levi’s Gran Fondo - Growler Eilte

Date: April 19, 2025

AVRT racers: Andrew Ernst, Erik Levinson

Top Result: Andrew 41/108

Course: 137 miles with 13,700’ of climbing. The first 30 miles and the last 20 miles are very flat. The elevation is almost entirely within the middle 87 miles and consists of four main climbs with plenty of smaller rolling hills. Road surfaces were about 80% decent pavement, 15% rough old pavement, and maybe 5% dirt/gravel.  

Nutrition: I ate an extra 500-1000 calories per day in the two days prior to the race. Had a bowl of cereal and pot of half caffeinated coffee the morning of the race as well as four Pop-Tarts 60-90 minutes before the race. During the race I had 12 gels, two of my own bottles with 75g carb each, and three bottles of mix from the neutral feed. Total ~5000 calories between breakfast and nutrition during the race.

Strava: https://www.strava.com/activities/14227002791

Race Recap: Erik and I discussed goals before the race which boiled down to staying safe and in good position on climbs as to not get dropped by a group. It would be an especially long day riding solo.

The race was full gas from the start. We both tucked into the peloton which carried us along at 28mph for the first 30 miles. We were both out of position at the base of the first climb and had to dodge riders who were falling back as we made up positions. The front of the race (and Erik) were rapidly out of sight and I looked around for riders who were matching my pace. Near the top of the climb, I latched onto a group of five who gave a nice draft along the ridgetop and down the first sketchy decent. Among this group was Troy Fields who had won the circuit race at Sea Otter the weekend prior. It was around this point (mile 50) where we caught Erik who had wisely taken the descent cautiously.  

We all rode together for the next ten miles taking short pulls through a series of rollers. We were caught by a large group with a bunch of strong riders including Miles Hubbard, Ryan Gorman, Ted King, Victor Perez, and Taylor Dawson (Sea Otter Gravel 90 winner). Our group of ~ 20 hit the second climb and Erik took off with Miles. Erik had said he wanted to ride hard on the climbs in order to be more conservative on descents. I would have done the same if I had the fitness. I rode just below threshold to stay with the group through climbs two and three. About half of the riders in our group were dropped through these two climbs and descents.

At the start of Geysers, the final climb of the day, we had about ten guys in our group including Ryan Gorman, Ted King, Taylor Dawson, Victor Perez, and Troy Fields. This next section was rough, both in terms of the elevation gain and the road surfaces. There were countless sections of gravel to navigate at high speed. Here we caught Miles and Erik who was starting to get sick. I was out of gels and very low on motivation, so had nothing to offer but a few mumbled words of encouragement, as much for myself as for him.

Taylor went solo when the road got steep which left six of us to chase until the finish. Despite riding the final flat 20 miles at nearly 25mph into a 5-10mph headwind, we were unable to catch Taylor. I rolled in 5th in our group of six making no real attempt at a sprint for 37th place. Erik came in a bit later having had terrible luck with illness and an untimely flat tire.

Overall the race went quite well for me. I was able to fuel well and follow good wheels through technical sections. It was worth pushing into the red a few times to have a group to ride with at the end. Hopefully next year we can get a few more AV riders out there!



Read More
Alto Velo Alto Velo

Race Report: 2025 Valley of the Sun Stage Race - Men's P1

Race: Valley of the Sun Stage Race 2025 - Men P1

Date: Feb 14-16, 2025

Written By: Flo Costa

Stage 1 - Time Trial

Course: 10 mile flat out and back TT

Strava: https://www.strava.com/activities/13627997980

Result: 56/116

Race:

Contrary to popular belief, winter in California can get cold and wet. At least enough for me to get tired of. Fine, I’ll admit I’m soft. It’s all relative. Meanwhile, Arizona in February provides nice 60-70 degree weather. If the weather itself isn’t enough reason to make the trip, there’s always great turn out at the Valley of the Sun stage race which makes for some great racing after a long off season.

As tradition, the race kicks off with a flat 10 mile time trial which takes roughly 20 minutes. It’s a pretty simple effort with my strategy being to push as hard as I could for 20 minutes while staying as aero as possible. Unfortunately I had a pretty hectic week leading up to the race, which led to pretty subpar form. Nevertheless, I was ready to race and suffer.

The first half of the time trial went fairly well with me being able to push decent power at a decent speed. As soon as I turned around, I felt a significant headwind which hadn’t felt as strong earlier in the day. Shit. I kept pushing but my legs got heavier and heavier while my position on the TT bike started to break down. Over these last 10 minutes my power slowly declined - with my heart rate pinned - until I reached the finish, completely spent. I averaged about 20 watts less in this second half than the first half. The headwind on the way back only meant that this decline was even more costly in terms of time. I probably should have been more careful in moderating my effort at the start.

Stage 2 - Road Race

Course: 95 mile race over 6 laps featuring a gentle 5 min climb and a fast tailwind section 

Strava: https://www.strava.com/activities/13637356127

Result: 29/121

Race:

The second stage was the road race in the desert just south of Phoenix. I was pretty far back in GC which meant that I was free to do as much or little work as I wanted. My legs and body felt pretty bad and I didn’t have any teammates, so my plan was to race conservative and try my luck in the finale. Although the course features a 5 minute climb every lap, it’s not steep enough to break up the race and with such a large field it’s easy to make it over the climb in the wheels.

Committed to the race plan, I made it a game to spend as little energy as possible. An early break of 5-6 riders went off the front in the first lap, so the responsibility of controlling fell to the shoulders of the bigger teams with riders well placed in the GC. Meanwhile I stayed in the back half of the bunch, moving up to the front before the climb to sag climb it. Sag climbing is a specific strategy where you begin a climb at the front of a group and intentional drift back to conserve energy.

The race was straightforward with the breakaway established and the GC teams staying at the front. The wind was picking up though, and in the second to last lap echelons were forming in the crosswind up the climb. People were letting gaps open up and I spent a few bullets staying up in the front group. Going into the last lap, the original breakaway was still up the road and the peloton was getting nervous. People started launching fliers into the fast tailwind section. The group of 100+ riders was completely strung out in a single file line as a couple more riders managed to break away.

The gaps quickly expanded and the chase disintegrated. With the original break still out of sight, the main bunch would be sprinting for 8th place. The final climb up to the finish was pretty chaotic without a lead out train setting a tempo. People were constantly swarming and jostling for position. I made sure to stay on the protected side of the wind, but was constantly battling to move up only to get passed again. The group never strung out and I found myself completely boxed in with 500 meters to go. I was pretty stuck and never got to uncork a full sprint, but was still near the front to finish 29th. My attempts to save energy throughout the day had been successful, but I think I could’ve been more aggressive with positioning in the finish and even commit to spending more matches before the actual sprint to stay in front.

Stage 3 - Crit

Course: Wide and fast crit with 7 corners.

Strava: https://www.strava.com/activities/13647410543

Result: 66/116

Race:

The final day was a crit near downtown Phoenix. This course is on wide roads with good pavement, making it a really fast race. As usual, the crit started really hard with people sprinting out of every corner. The start/finish straight felt particularly difficult as everyone would put down crazy power to move up. My main focus in crits like these is to stay smooth and constantly move up. My goal was to stay in the top 20-30 wheels to find that sweet spot where the corners feel a bit smoother with less argy-bargy. I also typically make a small game out of finding the few spots on the course where I can move up every lap. For example in this course, by moving up on the outside of turn 1 you could carry a lot of speed into the inside of turn 2 which riders generally left pretty open. In a handful of seconds, you could advance 10 wheels without needing to burn a match.

The peloton was averaging close to 31 mph which meant it would be really difficult for anyone to break away. In all likelihood, it would come down to a bunch sprint. I was pretty locked in a good rhythm and maintained a solid position throughout the race. However, with around 10 laps to go, things start to get more nervous as more people try moving to the front. This means you have to start riding more aggressively and take more risks to stay in position. Wide courses like this can sometimes be scarier as the group fans out quite during the fight for every corner. In this course, the worst one was turn 6. We smashed the backside of the course at 36+ mph and proceeded to enter the corner 10 wide every time. This becomes a crazy game of chicken as each rider has to brake as late as possible and stick their handlebars in front of the others. It’s terrifying to think of, actually, so during the race you really need to keep a clear mind and flip a switch into race mode.

On this day, I must’ve been missing some of the racing edge because I started slipping back from 20th wheel with about 5 laps to go. On top of that, the lead out trains (mainly Legion) were doing a good job blocking up the turns, which prevented me from overtaking people on the insides. All of my “move-up” spots were getting stuffed which made positioning extra difficult. With 3 to go I clipped my pedal pretty bad in turn 3. This threw me off even more and I became more risk-aware. I lost focus and was no longer willing to be part of the fight, so I slowly drifted back. I didn’t get to contest the sprint and rolled it in for 66th.

This race, and the road race the day before, were good reminders of how crucial (but difficult) positioning is in these big races. Everyone has the same goal: to get to the front. Doing so requires you to be mentally and physically dialed, requires thousands of split-second decisions, and requires the confidence to seize every opportunity you can find. Overall, I was a bit disappointed with the outcomes, but was glad to bag some experience in these early season high level races.

Thanks for reading,

Flo

Read More
Alto Velo Alto Velo

Race Report: 2025 Sea Otter Circuit Race - Men's B

Race:  2025 Sea Otter Circuit Race - Men's B

Date: Thursday, April 10

AVRT Racers: Ryan Dyke, Kevin Kauffman

Best Finish: Kevin Kauffman - 11/24 in Men B category (16/57 overall B/C/Collegiate/40+/55+)

Course Description: 45 minutes on a 2.238 mi racetrack with a 180 ft climb broken into a shallow grade and a steep kicker before dropping into “The Corkscrew”, followed by a brake-free series of 45mph turns, then finishing on flat wide turns to the finish line.  Perfect tarmac with only constrictions being a few sections with barricades bottlenecking the track. 

Strava: https://strava.app.link/FpgbDDgUzSb 

Nutrition: half a banana 30min out. Half a bottle of water during the race because my mixed carb/caffeine bottle leaked all over my race bag on the drive in. 

Recap: 

Got to the course around 7:20AM. It’s a big venue and the parking was a 10min walk to registration, 10 more min to the start line with staff who had little knowledge of where to go. I got a few laps in on the road to warm up before wandering to the start line. The confusion led to a bit less effective a warmup than I wanted but I at least wasn’t going in cold. 

All groups gridded together and just raised hands when the group was called so we could see who we were racing against. It was hard to gauge how many were in B but it felt small, but felt like just under 50 at the line? Ryan and I started side by side, but he quickly pushed up to the front third, and myself back to the back third. In hindsight this was a key mistake as I was forced to brake a fair bit into every turn on the first two laps as the group congested. At the beginning of lap 2 I got caught in an incident that drove a few riders off the track into gravel and a few others locked up and unclipped. That was my cue to move up. 

Conditions were very foggy, and as I wasn’t familiar with the course it was a bit of a learning curve finding comfortable lines at high speeds on the corkscrew and 180°, but road conditions were great and settled into a groove for the last 6 laps. Not sure I touched the brakes once after that. I originally planned to sag the main climb as I knew I didn’t have the W/Kg of the smaller riders in the group but the speed of the course led to the group getting pretty strung out and messed up that plan. 

By the end of the climb on lap 3, people started to fade and let gaps open. I was able to bridge a handful of them but eventually the elastic broke and Ryan and I found ourselves on the wrong side in a chase. Myself, and an assortment of riders from VFR, Lamorinda, Devout, and an XC racer took some turns trying to accelerate the group through the flats but after the next two laps it was clear we wouldn’t catch the front. 

After reading our new group, it was clear that Ryan, Scott from VFR and myself were the heaviest riders. I knew I’d either need to make some sort of move leading into the climb and see if I could force a gap with a small group over the crest, or sit in and hope that the small ones wouldn’t smoke me on the last climb and save my sprint for the finish. I took the first choice, was able to get a few second gap with 2 other riders on my wheel, but was caught just before cresting the climb. That burned my sprint and I finished in the middle of our group sprint. 

Overall, it was a fantastic experience getting to race the Laguna Seca track, attend the expo, and watch the start and end of the LTGP gravel race. Will definitely be coming back next year and bring some improved strategy and fitness.

Sometime mid race



Read More
Alto Velo Alto Velo

Race Report: 2025 Sea Otter Fuego XL Women

Race: Sea Otter Fuego XL

Date: April 12, 2025

AVRT racers: Rachel Hwang

Top Result: 1/15 W19-29, 9/61 Overall

Course: Two loops of 35 miles of singletrack, gravel, and some road

Strava: https://www.strava.com/activities/14159819881

Race Recap:

I did this race last year with the elite field and was coming off of being sick, so did very poorly.  Going into it this year, it was a redemption run.  Based on last year’s elite women results, I thought I would be about mid-pack, so gave myself the goal of finishing in 5hrs 30min.

I lined up with all the women racing up to age maybe 40.  The course started with an uphill on the track, and immediately, I could tell the difference between this and the elite race.   I was pretty easily able to pass all of them on the climb with my pace, and we went off onto the singletrack.  For the first 30 minutes I was really pushing to make the gap as big as possible between me and the girl behind me, being very vocal to each person in front that I wanted to pass them.  Since most of them were not truly racing and just riding for fun, they let me by with no hesitation and almost immediately as well.  

Once I really couldn’t see the women behind me anymore, I felt like I was racing alone and that there wasn’t really any competition, so unlike other long endurance mountain bike races I’ve done in the past, I started pacing at a pace I knew I could hold for a while without hurting.  So basically I wasn’t trying too hard.  At moments I thought about going harder just in case one of the women would catch up.

At the first rest stop, there were volunteers holding out gels like people do with bottles at feed zones, so I grabbed one, looked at the flavor, Neversecond espresso, ate it, and it was so good and easy to go down that at the second rest stop, grabbed one, held it with my mouth to free up my hand, and grabbed two more.

The lap ends with a 800+ft climb, which killed me last year and this year chasing Steph up the hill on my MTB bike while she rode her gravel, so after the climb, I was surprised at how good I felt when I finished the first lap.  I looked down at my Garmin and it was at 2hr 40min, so slightly faster than my goal of 5:30.  Maybe it was the easy pacing on the first lap, but I was feeling really good, not tired at all, didn’t feel the need to stop, so when I found Clay at the feed zone, I got my two bottles and left. Normally I would have gotten off my bike at the feed zone, grabbed a bar or gel or something, quick rest, but this was, stop, two bottles on bike, go.

My legs started feeling kinda tired in lap two, and I tried not to dial it back too much.  I started taking it easier and not trying as hard to pass people, even pacing with some people.  Near the end of the second lap, I felt the same part cramp, my inner right thigh, but it wasn’t bad enough so I kept going.  After that though, I started pedaling harder with my left leg.  By the last large climb, I gave it a little more knowing it was the last of the race.  I finished at 5:33:15, securing 1st in my age group and 9th overall including the elite riders.

Nutrition: 1.5L hydration pack with Fluid Fresh Citrus drink mix on the first lap, 2 bottles Tailwind Cola drink mix on the second lap, mix of Torq and Neversecond gels throughout the race (~5-6 total)

Read More
Alto Velo Alto Velo

Race Report: 2025 Sea Otter Gravel 90 Men

Date: April 11, 2025

AVRT racers: Andrew Ernst

Top Result: 2/149 Overall (and 2/36 in the 30-39 AG... but I’m 29)

Course: 3 laps of ~30 miles with ~3500’ per lap. Ended up being 88 miles and about 10,000’ of elevation. Course is ~70% gravel, not very technical, but numerous areas of deep sand and a steep climb at the end of each lap to Lookout Ridge. 

Nutrition: I try to eat an extra 500-1000 calories per day in the two days prior to the race. Had a bowl of cereal and pot of half caffeinated coffee the morning of the race as well as four Pop-Tarts 60-90 minutes before the race (I don’t want to be hungry in the first hour). During the race I had 10 SiS gels, 2 bottles with 75g carb each, and a 2L hydration pack with plain water. Total 3700 calories between breakfast and nutrition during the race.

Bike: Diverge with Continental Terra Speed 45mm tires

Strava: https://www.strava.com/activities/14149185546

Race Recap: My main goals for the day: stay upright and stay with the front group to follow the best lines through technical sections and descents.

I came into the first descent about 4th or 5th wheel which was right where I wanted to be to avoid chaos and keep the front of the race in sight. There were some sketchy sandy turns and washboard that sent bottles flying. It was so foggy that I couldn’t see much more than 50 feet ahead of me. By the end of the descent we had a group of five. I would find myself losing a few seconds on every loose turn but was able to catch back on each time at the cost of a match. I lost about 15 seconds in the singletrack section after getting stuck behind the 19-29 field, which meant another match spent before the big climb up Lookout which would mark the end of lap one. Ben Herken and Taylor Dawson easily dropped myself and the other two guys in our group up the climb.

I spent the next 10 minutes riding (and descending) at my limit and was able to catch Ben and Taylor at the bottom of the descent on lap two. We also caught the two leaders from the 19-29 race at this point and rode with them for most of the second lap. I was still getting gapped in loose corners and sandy sections which meant more matches burned, but I was able to follow more closely through the singletrack section this time. Again the climb up Lookout shattered our group. Taylor went solo for lap three to win the race by a landslide. Ben seemed to be about 1-2 minutes ahead of me. Knowing he was fast in the technical sections and I didn’t have a wheel to follow, I figured catching him would be out of the question. I settled into an easier tempo pace and didn’t take any risks. At the final feed zone, I caught Ben and we rode together to the base of Lookout. I could tell he was hurting from dehydration. I continued to ride steady the final time up Lookout, dropping Ben to finish second. I can thank my USWE hydration pack for that!

Overall I was very happy with the result. I will definitely need to practice cornering on gravel and riding through sand if I want to improve in the future. I think I may go with some bigger tires too.

Read More
Alto Velo Alto Velo

Race Report: 2025 Tour de Murrieta - Men’s Cat 2/3 

Race: 2025 Tour de Murrieta Crit - Men’s Cat 2/3

Date: March 5, 2025

AVRT racers: Jon Wells

Top Result: Jon Wells, 5th of 54

Course: 1 mile loop through historic downtown Murrieta. The L-shaped course had 6 corners making for a slightly technical course. Wind picked up during our race making for some solid crosswind sections.

Strava: https://www.strava.com/activities/14091768089/ 

Nutrition: One bottle of 90g carb mix during and a pre race redbull

Race Recap:

Plan coming into the race was to react to moves without being too much of an instigator since I don’t really know the Socal typical teams and individuals to watch plus I was racing by myself. It would be nice to be in a break but I was also fine sprinting for scraps if a move went since I was just looking for a few more points to secure my cat 1 upgrade. 

Nothing of note happened the first half of the race as I just tried to stay near the front and follow moves that were easy to cover or looked threatening. Eventually, a move of 2 got some separation and the field didn’t do much to control the gap, even with several big teams missing it. Turns out the break had Dave Zabriskie’s kid in the move and he is quite strong (shocker!). There was no real concerted effort by the field to chase and the gap felt bridge-able the entire time. I made one real effort to go across solo in the crosswinds and helped with some pulls at the front to manage it but at some point around 5 to go it became clear that was the move of the day and we were now racing for 3rd.

I planted myself right near the front starting around 3 to go. Came into the last lap around 5th wheel but with no big teams it was very hectic. The long back stretch was a real drag race into the last 2 corners. I came into the last 2 corners sitting 3rd and opened up my sprint out of the last corner, which is still probably 30 seconds to the line. I came around both guys who were in front of me but also had 2 guys from behind pass me so finished right where I came into the last corners in 3rd in the group. Was good enough for 5th on the day and I now had enough points for my cat 1 road upgrade!!! 

-Jon

Race: 2025 Tour de Murrieta Circuit Race - Men’s Cat 2/3

Date: March 6, 2025

AVRT racers: Jon Wells

Top Result: Jon Wells, 12th of 60, 8th in GC for weekend

Course: 3.5 mile loop through historic downtown Murrieta. The L-shaped course had one particularly tight corner, some slight elevation on the back side, sections of poor pavement, and pinch points going from having the entire road to just one lane.

Strava: https://www.strava.com/activities/14106054899/

Nutrition: One bottle of 90g carb mix, one ice bottle, and 2x caffeinated honey stinger blocks

Race Recap:

Since I had finished with my cat 1 upgrade points the day before, I was out to have some more fun and race aggressively on day 2. The GC prize money was pretty weak so I had no vested interest in that. 

Race started pretty fast and stayed that way the entire time. I took many swings at trying to get away from the group, starting from almost at the gun. I tried in the bad pavement sections, out of the tight corner, and on the slight rise at various points in the race but nothing was really sticking. I think everyone was very onto any breaks happening since we had all missed the move the day before. There were still several of us that tried quite hard to make it happen. I think we needed something to make the course harder like some crosswinds from the day before.

As it came down to the closing lap, I spent some energy to be near the front. Unfortunately, on the back side when it pinched down to one lane I got squeezed to maybe the third row as we rode shoulder to shoulder across the whole lane. Eventually, out of the last corner I was finally able to squeeze free and opened up a pretty long range move. This got me into an ok position for the sprint, but it was really too late. The finish line was less than 100m out of the last corner so I really needed to be going sooner. Regardless, I still got up to 12th on the finish after racing pretty hard all day. Was good enough for 8th on the weekend GC. But the big weekend win was getting my cat 1 road upgrade!!

-Jon

Read More
Alto Velo Alto Velo

Race Report: 2025 Sea Otter Circuit - Women’s B/C/40+/Collegiate

Race: 2025 Sea Otter Circuit - Women’s B/C/40+/Collegiate

Date: 4/10/2025

AV racers: Hannah Chen, Kristin Hepworth

Top Result: Kristin (6 of 18 overall) 

Course: 5 laps of the Laguna Seca raceway (2.2mi long with 180 ft elevation per lap) . There’s a small climb and then a smooth, fast descent of the corkscrew

Nutrition: none

Race Summary (by Hannah):
The women’s turnout was very small with only 18 racers combined amongst 4 different fields. I guess being on a Thursday morning didn’t help much. It was very foggy and cold. Kristin and I struggled to find anywhere to get an adequate warm up because the roads were filled with cars getting to the expo.

At the start of the race, I was already shivering. The gun went off, we started up the climb, and then I got totally dropped :( Bad day. I couldn’t get my legs to work and I wasn’t riding out of the saddle. This was the universe telling me I should be going to Egan again. Message taken. Plus, Egan rides are really the best.

I saw Kristin go off with the group and mentally wished her a great race. With the fog, I pretty much never saw anyone again. I suspected there were a couple people just slightly ahead of me because I’d see just the tiniest glimpse of a figure in the fog. I zoomed down the descents, focused on maintaining a steady pace, and was able to warm up a bit on the subsequent climbs and get my legs to work. I was already so far behind that I was never going to catch the group. Eventually I passed a person or two. 

Even though the race itself felt like a bust, I did get a good interval workout in and it was really fun to zoom down the corkscrew. Plus, afterwards I went to Clayton’s BBQ (thanks!), won a raffle at the expo for a saddle I actually use (SQ lab), demo-ed an e-mtb at a women’s mtb clinic, and got to see a bunch of friends. All in all it was a great Sea Otter. 

Race Summary (by Kristin)

I stayed with the front group through the first two laps, feeling steady and well-positioned. On the third lap, the rider ahead of me (17yo) launched a break on the climb. I committed to the chase, knowing it was a risk, and burned a lot of matches trying to close the gap. Despite a strong effort, I couldn’t make contact, and the effort took a toll.

Before I could recover, the rest of the front group caught and passed me. I was deep in the red and had no response. I managed to regroup slightly and caught two riders on the corkscrew descent—a section that played to my strengths and gave me a second wind.

With four riders up the road, the three of us worked together for the final two laps. The fog was thick, making visibility difficult and adding an extra layer of challenge heading into the finish. We stayed tight until the final sprint, where I came across the line in 6th.

Read More
Alto Velo Alto Velo

Race Report: 2025 Sea Otter Classic, Fuego XL Men’s19-29. Bonked my head

Race Report: 2025 Sea Otter Classic, Fuego XL. Bonked my head

Race: 25’ Fuego XL Men’s 19-29. 

Date: April 12th, 2025

AVRT racers: Hunter Wilson 

Top Result: DNF ): Race ended in a concussion.

Goals and beginning: The goal is to qualify for Leadville. I started the single track just behind the front group to conserve. Ended passing people throughout the 1st hour. When we hit the backside of the course a few single track sections before the long fireroad section, I knew two friends of mine were 2 or 3 minutes up the trail from us and the group I was in was taking it too easy. I decided to attack in on a tailwind road climb and easily put a few minutes on the group. I took one other rider with me, who was hurting worse than me but rode well on the descents. He was very motivated to ride hard. I let him go on a fire road climb because he was riding over my target power for too long, thinking he would blow and I would recatch him. This was a big tactical mistake because he bridged to another rider on course who he was able to work with on the windy fire road sections. I was riding tempo just watching them rotate just a minute ahead of me for about 25 minutes. 

Middle Section: I ended up soloing the race for the next 2 hours. For a while I could hear the group I had attacked in the early part of the race behind me, but they never caught me. After locking myself onto Dillon Holinagers wheel through some windy fireroad sections in the late part of the first lap, I got towed into roughly 5th place on the course for my category. 

Ending: I was riding super strong, riding corners very smoothly, and fueling well in the early part of the second lap. I felt prepared for the last 1.5 hours of the race and expecting to start bringing back riders in the last single track section after the fire road miles. Which is generally when the wheels start to come off for most MTB riders and my roadie miles start to shine.  

Crash: Then I crashed (AHH)! There was a shaded, soft, sandy, loamy corner with a rut the first lap that stuck out to me as technical but with the right line could be ridden very quickly. I went into it on the second lap and found that as I was hitting the rut, it had gotten a lot deeper from the other riders racing it. I pitted the front wheel and went over the bars at about 10 miles an hour. I landed on my side and felt fine. Started to ride, but my head hurt pretty good. 

Concussion: I started to show significant concussion symptoms over the next 30 minutes including an inability to ride hard, distorted thinking, loss of balance, sensitivity to light, sensitivity to bumpy terrain, hyperventilating, and extreme emotions without warning. I decided to stop racing and found as my heart rate went down I began to feel better. Ultimately I rode about 3.5 hours and 50 miles of the race. Not my ideal finish, but I am happy with how my form is coming along and hope to heal this concussion quickly and safely so I can return to training as usual as soon as possible. 

Course: Two times around a 32.5 mile course. Starts and finishes on the Leguna Seca Raceway. Begins with the Corkscrew climb the 15% road climb into single track. Single track rollers then turn into a fire road and then back into single track. Lots of fire road on the back section of the course followed by large sections of steep and rolling sections of single track. 

The most decisive climb before the finish is Lookout ridge. It's an exposed and steep fire road climb broken into two parts by one 100m false flat section. It is preceded by a long section of steep up and down single track sections and followed by a steep fireroad descent and then climb section into some single track hairpins that take you onto the corkscrew descent and into the finish line. 

Fireroad sections and singletrack sections in the middle section of the course were extremely windy. Lookout ridge was a crosshead wind. Trail conditions were loose and sandy. 

Strava Link: Hunter’s Strava 

Nutrition: On the startline I had Gel. On my bike I had one 20oz bottle of water and one 26oz bottle of a malto mix I make, (roughly 80g malto and 20g - 30g of sugar, 12g of salt, and Noon tablet). I had a USME pack with roughly 150g of carbs and 1500g of water, high sugar content made it very tasty. Had a GU roughly every 45min. Took a 20oz bottle on the second lap with roughly 85g of malto mix and appropriate amount of brown sugar content.  


Read More
Alto Velo Alto Velo

Race Report: 2025 Cat's Hill Classic Men’s Cat 3

Date: March 22nd, 2025

AVRT racers: Kevin Kauffman, Ryan Dyke

Top Result: Ryan 17/34

Course: 40 minutes of a 0.90 mile lap with an insane 12% climb followed by a descent to the finish.

Strava: https://www.strava.com/activities/13957635719

Nutrition: 1 bottle of 80g carb mix. Race is too short for two bottles

Recap: What an insanely hard race. I brought a trainer to the start and had an easy 15 minute warmup right before the start. This paid off in a big way, because unbeknownst to me there was a dude from CalPoly that decided to average 395 watts over the whole race (Zane Strait if you’re curious). Luckily I clipped in quickly and shot to the front 10 riders just as things started popping off.

Rather than let Zane go, our field collectively thought that we too could do 395 watts for 40 minutes, so the first few laps were brutal. I hung on for dear life over the climb and tried to rest as much as possible during the descent. It was during these first few laps that Kevin got gapped along with about 4 other riders. Unfortunately, they were either too tired or too scared of him to do any work, so he ended up pulling on the descents and the flats. This meant that he was gassed for each of the climbs, and it also meant that his group would never catch back up to the peloton.

Before the race, I heard a lot of people talk about whether or not you could big ring it up the climb. I was way too scared of getting dropped to find out, but I’ll tell you what worked for me: on the approach to the corner before the climb, I shifted from the big ring to the small ring. I would then shift into 5th gear in the back, which I would use for the bottom of the climb, then slowly I would grab 4th and 3rd about halfway up. That seemed to work for me, but I’m a heavier rider at about 170-175, so your mileage may vary. Every climb was basically a sprint, but I was able to maintain my position in the group going over.

While I struggled to stay with the main group, apparently we caught Zane around the middle of the race. He then decided he would rather ride alone, so he soloed away to what I imagine was an easy win. Meanwhile, I was redlined on the back of the group, and every lap it seemed there was an open gap or a rider being dropped that I had to go around. If my positioning was better, I think I could’ve done better in this race, but as it turned out I came in last for the bunch sprint.

My main takeaways from this race were that heavier riders could do okay on the climb, and that the entire course could be done with no brakes as long as you had a halfway decent line. In fact, this course layout led to a race that felt very safe and fun. While many people were stressed about dropping a chain, it seemed to be pretty rare, and I don’t think anyone in our race had that issue. The crowd support and venue were incredible, and I would recommend that anyone do this race in the future. I know I will.

Read More
Alto Velo Alto Velo

Race Report: 2025 UCSC Slug Circuit M P12

Race: 2025 UC Santa Cruz Slug Circuit Race - Men’s P12


Date
: Saturday, April 5, 2025


AVRT racers
: Cam O’Reilly, Andrew Ernst, Erik Levinsohn


Top Result:
Erik 1/6 (or 3/13 including the collegiate A riders), Cam 2/6, Andrew 3/6


Course
: 20 laps of a 2.7 mile loop, with a 1.4 mile descent and a 1.3 mile 350 ft climb each lap. The climb varies in terrain to make it somewhat punchy and tactical. The descent wide open and straight, as safe and non-technical as it can get.


Strava:
Erik: https://www.strava.com/activities/14092009104


Nutrition:
Two bottles with malto:fructose mix and a few gels. In retrospect with the heat a few more bottles would have been nice.


Recap

This is the same course as the University Road Race in August but with a decidely chiller vibe (and correspondingly smaller field). The race was run with the P12 men (just 6 of us) with the collegiate A men (including our very own George and Jack riding for Stanford!). Many of us there saw this as a great opportunity for a solid workout and practice race ahead of a big April to come.

Big hitters in the field included Quinn and Mattheus from CycleSport, though they were racing for their schools in this case.

The race started with an attack off the front from Jack Grubb for Team California which was reeled in after a couple laps. As the field caught them things started to heat up. I did an all-out attack at the bottom of the climb and got a good amount of separation though was caught by Mattheus and Quinn by the top of the hill.

Andrew and Cam rode smartly in the pack covering moves and conserving energy. In retrospect their patience put them in a much better position to ride strongly towards the end of the race. In a race of attrition like this one, it’s extremely hard to not be totally gassed by the end and my own (over)excitement meant that the last five laps or so of Quinn, Mattheus, and I attacking one another were just absolutely brutal. I started cramping badly with a couple laps to go and managed to hang on until the final sprint but couldn’t keep up with Mattheus and Quinn.

Cam and Andrew were nicely controlling the race behind us and tactically played it perfectly, covering moves and supporting one another to finish out the podium such that they would get 2-3 on the day, with the three of us going 1-2-3 (or 3-4-5 when bunched in with the college boys). Cam threw in a savage attack towards the end to secure second and Andrew was able to diesel his way away from the pack smoothly.

The race was overall just as hard as we had hoped/feared and excellent training for April races coming up. Form is looking good for the squad!

Read More
Alto Velo Alto Velo

Race Report: Sea Otter Classic Gravel Race

Date: April 11, 2025

AVRT racers: Steph Hart

Top Result: 2/21 Womens field; 61/198 overall (1st 30-39 AG)

Course: 3 laps of a 30 mile course, 2700 ft vertical per lap. Course is ~70% gravel, not terribly technical, but lots of loose descents/corners, and a pretty rough climb leading into Lookout Ridge. 

nutrition: 380g carbs over 6 hours (by some combination of maurten, shot blocks, and neversecond gels). Started with 2 bottles and 0g sodium (we’ll get there). 

Strava: https://www.strava.com/activities/14149586809/overview

Race Recap:

I’ll preface this race report by noting that I bought a gravel bike on a whim in February, and after falling off my bike 9 times on the first ride (as kindly evidenced here, thanks for keeping count for me, Rachel), I decided to sign up for the 90 mile route at Sea Otter. Goal number one was to keep the rubber side down, anything else was a bonus. 

We had a women’s only start for the 60 mile and 90 mile routes (67 riders total). At the gun, everyone went out very hard to climb out of the racetrack and onto half a mile of single track, and then a fast but loose 3 mile descent. After grabbing way too much brake, watching two super sprinkles riders crash, and contemplating why I took a day of PTO and paid $175 to do this race, I finally settled into some flat(ish) gravel where I could collect myself. On the first pavement climb I caught up with a group of 7 riders (sitting 8th-15th place or so in the combined 60 mile/90 mile women’s field). The pace felt very manageable, but I sat in taking the free draft while I could. Within the group, I clearly had the fitness advantage, but managed to get gapped at every sandtrap, loose corner, and single track section- that’s gravel newbie life. 

Near the end of the lap, we came to a 0.25 mile stretch of pretty technical single track that averaged a 15.5% grade. I was worried about this, because I took a bit of a crash pre-riding this section of the course a few weeks prior. However on race day, I managed to stay clipped in and upright, even dropping the group I was with (shocking both me and the 6ft tall Dutch lady I was drafting off). I put in a solid gap on the group over the rest of the Lookout Ridge climb, while picking off a couple solo riders. The start/finish of each lap loops back through the Laguna Seca racetrack. This sounds uneventful, but included two 3-4 minute climbs peaking at 12%, and 2 descents through gravel pits that my roadie bike handling skills were wildly insufficient for. However these features were well suited for spectators heckling riders, which I found at least a little entertaining. 

At the start of lap two I saw two riders ahead of me, and a lady was shouting that I was the 6th woman to come through - 3 minutes down on the leaders. That was enough motivation for me to loosen the deathgrip on my brakes during the long descent to start the lap. I spent most of lap two riding either solo, or passing guys at the back of the earlier start fields. By halfway through the lap, I caught the 4th place rider and was able to ride with her for a while. Well, sort of- she was a downhill MTB rider from Durango, so she would drop me on anything technical, then I would crawl back on the climbs- but kinda same average speed. I had assumed there would be neutral bottles in this race, so didn’t bother to bring a hydration back, however this was not the case. So with only two bottles and a pretty warm day, this was a decision I had to pay for at the 50 mile mark where I had to stop and fill a bottle. I probably lost 30 seconds, but managed to catch back on to the 4th place rider before dropping her on my second trip up Lookout Ridge. 

At the start of lap 3 I heard the gap the lead was 90 seconds. In theory, I should have drilled it to catch the lead group, but at this point the 30 and 60 mile riders were finishing up and I basically saw 3 people on course over the next 15 miles- morale was low. At the 75 mile mark I finally caught another woman, and she kindly informed me that she was leading the race (as the other 2 women in the lead group of 3 had completed the 60 mile race). At that point I was back in road race mode, where I was wondering what on earth I should be doing tactically to drop this lady and try to win. I shouldn’t have worried, because after riding together for 5 or so miles my lack of hydration & 3900 KJ of work caught up with me, and what ensued was the worst adductor cramp of my life. I physically had to get off my bike and walk off the cramp while watching the race leader ride up the road. After an eternity (probably like 2 minutes) of frantically trying to regain control of my limbs, I was able to get back on my bike. I spent the next 10 miles limping back to the start, watching my average power plummet, and praying 3rd place didn’t catch me. By some miracle I got up Lookout Ridge the last time without cramping, wrapping up the day in 2nd place and a stunning 0 crashes. 

Read More
Alto Velo Alto Velo

Race Report: 2025 Tour de Murrieta - Men’s 4/5 Circuit Race

Race: 2025 Tour de Murrieta - Men’s 4/5 Circuit Race


Date
: Sunday, April 6, 2025


AVRT racers
: Wil Gibb 


Top Result:
Wil Gibb, 3/54


Course
: 8 laps of a ~3.5 mile circuit around old town Murrieta. The first mile or so of pavement was quite bumpy, and the first left handed turn was pretty sketchy. Otherwise, the turns could be taken at speed. Points which could be considered features on this course were this left-handed turn as well as a short & steeper hill at the beginning of the back straight. The entire road was available for about half of the course. There was almost zero wind, and this was my first “hot” race of the year, at 80 degrees.


Strava: https://strava.app.link/cqKfqLKDnSb


Nutrition:
Two bottles - one with water and one with 90g carb mix. Shout out to Louise for giving me a funny look when I suggested only having one bottle for a 70 minute race in 80 degree heat - I brought an extra and both were empty at the end.


Recap

I went into this race with zero expectations and no course recon; I was racing solo and hadn’t been at the previous day’s crit.. I was intimidated at the start line as this was a big field (50+) with lots of teams I’d never heard of. My main goal was to stay towards the front but not do work on the front, which has been a mistake I’ve made in previous races this year.

The race started out a little spicy as the first mile was very rough pavement. This prevented any attacks as people were just trying to stay on their bikes. The finale of this section was a deceptively tight left-handed turn which of course featured a generous helping of gravel. This caught everyone off guard, including myself — my left cleat unclipped at the apex and I had to go off the road, but managed to stay upright. Feeling satisfied at my smooth recovery, I went to shift and realized my rear derailleur seemed to think the race was over and wouldn’t budge. This has become a fun recurrent quirk of my bike as of late.

While being out of the saddle in the middle of the peloton during a flat section might look cool, it certainly wasn’t the most efficient way to spend the rest of the next five miles. During the time it took my batteries to wake back up, two solo riders had snuck away from the bunch. The efforts from the big teams were nonexistent to bring this breakaway back. There were a couple rollers on the course that would shed a few riders each lap, but the peloton never fell to fewer than 25 or so.

On lap 5 of 8, we came within about 15 seconds of the break and I made a move to try and bridge. A few other riders came with me, but our bridge attempt was poorly timed as it was clear the peloton was going to catch us on the downhill. I used the next few laps to recover from the effort, and thankfully nothing else happened. It was really easy to move from the back to the font of the peloton on the final part of the lap as the road was wide and pedaling was always minimal.

As we were rolling into the last lap, myself and two other solo riders coasted to the front, all wanting to be in the front for the final time through the sketchy gravel corner. One of the riders (Torsten Bartz, shoutout!) suggested we send it coming out of this corner since the riders behind would be slowing. I was the first one through and went all out, deciding there was no reason my heart rate needed to be less than 180bpm for the next 6 minutes. By the time I looked back, there was enough of a gap to keep myself motivated to push to the finish. It was a pretty great feeling to time an attack well for once and see the elastic break, especially at the end of a race. I’m excited to work on these strategies with the team the rest of the year.


Read More
Alto Velo Alto Velo

Race Report: 2025 UCSC Slug Circuit Race - Women’s 345/CD

Race: 2025 UC Santa Cruz Slug Circuit Race - Women’s 345/CD


Date
: Saturday, April 5, 2025


AVRT racers
: Hannah Chen, Robin Kutner, Elena de la Paz 


Top Result:
Robin 3/15, Hannah 4/15


Course
: 10 laps of a 2.7 mile loop, with a 1.4 mile descent and a 1.3 mile 350 ft climb each lap. There was a slight crosswind from the west. The climb is average 5.5% grade with a kicker halfway up (just before the finish line) and another kicker at the top of the climb. There are 2 notable “corners” on the loop: one at the start of the descent, and one sharper one at the bottom of the descent. Good pavement.


Strava:
Robin’s: https://www.strava.com/activities/14091479925


Nutrition:
Two bottles on my bike: one with skratch+malto (50g carb) and one with plain water. Two sleeves of shot bloks in my pocket (96g). Ate a few bloks on the start line and consumed everything else during the ~90 minute race. 


Recap
(written by Robin):

This race was composed of majority collegiates, two familiar faces from Terun (Sofya and Veerle), a third Terun who’s very new, and the three of us (Elena’s first ever race!). Having raced a mostly collegiate circuit race last year which was 95% coffee ride, I was envisioning prior to the race that the race would boil down to me, Hannah, Veerle, and Sofya in a front group and then a trickle of cat5/collegiates somewhere behind. This is exactly how it played out.

Lap 1 was jarring with all the fresh legs, squirrely/inexperienced riders, and everyone trying to scope out the course. After two full climbs, we had shed most of the collegiates. In the early laps, it was mostly Hannah and Sofya pulling; it was clear that we had similar plans, with Hannah protecting me and Sofya protecting Veerle. I think it was on Lap 3 that Sofya said “can we work together - all take pulls - to definitively separate from the field?” We then started a tight rotation up the climb. We sorta continued rotating on the descent, but Hannah helped me tuck in for maximum recovery.

It was either Lap 4 or 5 climb when AV teammate Drew Mathews, cheering on the sidelines and testing out his feed zone contraption, reported our gap to be 25 seconds. We had all thought one full lap of intentional pacing would’ve distanced the field more than that, so we kept the effort going. This dropped Allie (Davis) from the group. By the next lap, we had a 45 second gap. Impressively, Emma (Cal Poly) caught us right after the descent. She must be very strong to have done that, so we said if she worked with us we’d secure her collegiate win. She had never done a rotating paceline before, so we basically taught her how. This was a reminder to not rest on your laurels especially on a course like this - someone who is inexperienced yet strong can catch back on! All of us in the break were very encouraging, reminding each other to eat and drink, pointing out when gaps formed, etc. This was my first time in a break off the front and the collaboration was super fun, even with the hard effort. We eventually dropped Emma while pushing over the top of the climb. The laps continued at a sustainably hard effort.

Corners are my weakest link and the Terun women were adeptly full-sending them, so Hannah and I strategized positioning so she could stitch me back to them when needed. This meant Hannah moved herself to the front as each descent progressed, doing a lot of work plus tucking very expertly. (We kept catching dropped men from other race fields on the descent, and Hannah’s aero form was a big reason why). We got into a routine of these same maneuvers each lap: Hannah would control the sharp right turn at the bottom of the descent, I’d stay on her wheel, and then I’d swing out to start pulling the bottom of the climb (shallow and exposed) to maximize her recovery time. Terun noticed the pattern, and ultimately they were smart in exploiting this. 

With 2km to go, Terun sent the corner at the top of the descent and dropped me and Hannah. Hannah and I relayed a bit on the descent, but their gap was good, Hannah had gassed herself working for me, I was running out of steam, and Sofya was the strongest in the field by far. She did an impressive job leading out Veerle pretty much all the way to the finish line. Hannah led me through the final right turn one last time and then I pulled around. I gave it all I had at that point - which was just a notch above threshold - and grabbed 3rd place behind Terun. Hannah hung on for 4th. 

I am super happy with the outcome here because it was fantastic teamwork with Hannah, a great experience in the break, I’m pretty sure I secured my cat3 upgrade, and we’re super proud of Elena for getting her first race in. When I look back on what we could have done differently, I am not sure that anything was likely to change the outcome. Hannah set me up for the best possible finish. If my cornering were stronger (working on it!!!), Terun may have broken away a little later. But on a course like this, we were beaten by two stronger riders, so chapeau to them!

Read More
Alto Velo Alto Velo

Race Report: 2025 Cat's Hill - Women’s P123

Race: Cat’s Hill - Women’s P123

Date: March 22, 2025

AVRT racers: Louise Thomas, Ari Fischer

Course: 0.9-mile L-shaped course, featuring a climb that reaches 23% at its steepest point. 

Strava: https://www.strava.com/activities/13959395737

Nutrition: a muffin before the race and some malto/fructose mix during it. 

Recap: (written by Louise) This was my second race of the day and against a field with some very strong climbers, so my aim going into it was just to hang on as long as I could. The race started ok, I was able to move around in the peloton and could keep up with the group up the climb, but things started to go pear-shaped when they called the first prime. The pace picked up in the lead-up to the hill, and then I shifted too slow and ended up in my big chainring at the start of the climb. I frantically eased up to shift, but that lost me precious time and the group pulled away, leaving me solo off the back. The next three or so laps I pushed hard to catch up. Just when I finally managed to do so, they announced another prime. Great timing. The group sped up again and I got jettisoned off the back once more. 

After going solo for a bit, I saw Ari was also off the back in front of me, giving me an extra boost of motivation to catch up so we could work together. From Ari’s point of view, she had been yo-yoing in and out of the peloton trying to stay in, dropping, and then catching back on repeatedly until all the matches were burned. Then it was a steady effort off the back until we worked together with a few other stragglers and she was glad to have a friendly face to work with. 

The second half of the race was tough and mostly solo, but the cheering/heckling on the hill brought a smile to my face each time. Thanks to everyone who came and spectated! Overall, although we didn’t place very well, we pushed ourselves as hard as we could and I was happy we managed to catch back on after getting dropped a couple of times. I also managed to get the Strava local legend with 37 repeats up Cat’s Hill (apparently no one else wanted to double up for this race lol). And for Ari it was a successful turn out for the 3rd women’s series event of the season and fun to participate in the spirit of SHOWING UP regardless of how well you might place.

Photo credit: Adam Meyer

Photo credit: Dirk Bergtstrom



Read More
Alto Velo Alto Velo

Race Report: 2025 Santa Cruz Classic Criterium - Men’s Cat 3

Race: Santa Cruz Classic Criterium – Men’s Cat 3

Date: March 23, 2025

AVRT racers: George Wehner

Top Result: George 7/25

Course: 45 minutes of clockwise laps of a 3/4 mile technical course. The course begins with a tight, downhill hairpin about 150m after the start which leads into a long straight that starts narrow but gets wider. Then, there are two wide 90 degree right turns in immediate succession leading into a narrow, slightly uphill section. After this, there is an off-camber right turn with a few drain covers in it, then a 400m climb that starts at around 5% but gradually levels off going back to the start/finish. 

Strava: https://www.strava.com/activities/13966863509 

Nutrition: I had a packet of Skratch energy chews on the start line. During the race I just drank water.

Recap: After my race here last year ended prematurely due to a crash, I came into this race with a score to settle. As a solo rider, my plan going into this race was to let others do the hard work and wait for the sprint. Cycle Sport, Dolce Vita, and Team California each had a few riders, so I felt that chasing any moves was their responsibility and not mine. I also had marked Kyle from Cycle Sport, Sean from Mike’s Bikes Dev, and Caiden from Cal Poly as the biggest threats in the sprint. Additionally, as this was a hard course, I knew it would be important to stay close enough to the front to avoid getting caught behind any splits, but also far enough back to avoid doing the work myself.

For most of the race, I focused on staying close to the front and conserving energy to the best of my ability. I wasn’t taking very good lines through the hairpin, but I was able to regain the lost positions on the wide part of the straight before the two 90 degree turns. I was also refamiliarizing myself with the lines through the corners, and I found some great lines through the final off-camber right turn. During the first 3/4 of the race, I stayed aware of the situation at all times but was quite passive.

With about 5 laps to go, my strategy shifted away from conservation of energy and towards getting into the exact right position to launch the sprint. At around this point in time, a breakaway with two Team California riders and another solo rider went away, but the field was not particularly motivated to chase this back. With 2 laps to go, a Dolce Vita rider and a Cycle Sport rider launched an attack to chase, so I followed their move. Pretty soon after, they elbowed me through, and I obliged; however, upon looking back, I could tell our move was getting shut down so I turned off the gas and filtered back into the group. 

On the final lap, I took a bad line through the hairpin, but I quickly recovered positions and ended up in about 7th wheel going into the final corner. I took an amazing line in the last corner, which allowed me to move up into 5th wheel. From here, it was full gas to the finish line. I had a suboptimal draft up the hill as I was a little bit to the side of the rider in front of me, which may have forced me to do more power than was necessary (around 800W) up the hill. As it flattened out with about 200m to go, Caiden launched his sprint on the left, and I launched on the right. I probably sent it too early though, as two more Team California riders passed me right at the line (Caiden had daylight on all of us and I probably couldn’t have beaten him unless I was on his wheel when he launched). As there were 3 off the front, this left me with a 7th place result.

I had hoped for better going into the race, but I felt like I executed pretty well on my strategy. I definitely have some room for improvement in the smaller details, but I just need to continue to work on these things. I also got another upgrade point as I continue to whittle away at my cat 2 upgrade.

I also recorded some GoPro footage of the race: https://youtu.be/4YH5MafsmSw 

Read More
Alto Velo Alto Velo

Race Report: Santa Cruz Criterium W3/4

Race: Santa Cruz Criterium W3/4

Date: March 23, 2025

AVRT racers: Maeve Roach, Steph Hart, Louise Thomas, Katarina Zgraja, Katie Monaghan 

Course: 0.7 mile lap, 40 minutes

Strava: https://www.strava.com/activities/13966736807

Race Recap: The race started on a bit of a down hill right into the hairpin turn, and a lot of people gave the advice to be up at the front for this part which was really helpful in navigating a tight downhill turn like that. The hill on the back half was a good place to make an attack. From Maeve’s perspective, a goal of mine was to practice attacks and tire out the field to either help Steph get in a break away or help Kat and Katie in a field sprint. I made an attack at the top of the hill about 2 laps in, but then realized at the top nobody chased. Talking strategy with the team beforehand, I figured I would do a little effort to see if anyone tried to bridge, but it turned into a 35 minute TT. From the Peloton, there were a lot of attack attempts that kept the race dynamic. Coming down to the final turn the pace was increasing up the climb into the final straight, and the AV women came through in 4/5 of the podium spots in the W3 field!

Read More
Alto Velo Alto Velo

Race Report: Santa Cruz Criterium WP123

Race: Santa Cruz Crit W/P/1/2/3

Date: March 23, 2025

AVRT racers: Ari Fischer, Rachel Hwang

Course: 0.7 mile lap, 60 minutes

Strava: https://www.strava.com/activities/13969254603

Race Recap: Rachel Hwang’s Perspective

Coming into this race, my riding has been very inconsistent and far and few in between, but after not racing one of my favorite courses yesterday for Cat’s Hill Criterium, I was pretty fired up.

I started off with a longer than average warm up on HWY 1 before taking a free lap and joining the start line behind Ari.  I was super excited to have Ari there, a teammate to race with but was getting pretty nervous as I didn’t know how long I’d last and it was my first crit this year.

When the whistle blew, we went off, and the paced ebbed and flowed. On the beginning of lap 2 or 3, Alex pushed the pace a little harder by going to the front, and I followed closely behind.  My legs seemed to know what they were doing, but my lungs immediately were giving out.  I was able to stick behind Alex through that entire lap before someone on Terun threw an attack on the start of the next lap, and without even thinking or trying, I was already dropped.  For the first few laps I was dropped, I could occasionally see the pack in front of me.  Normally I would’ve fought to stick with the group or tried to catch back up to the group, but with how poor I was feeling, I knew it was a lost cause.

The rest of the race was a “solo TT” as the announcer called out, and all I could do was bear my head down and push and pull the pedals, and through that last corner, keep a consistent watt up the hill with a bothersome headwind.  I consistently looked at the trees above to get a better idea which direction the headwind was coming from.

At one point, Jamie lapped me, and my motivation was to not get lapped by the rest of the field.  With each lap, what kept me going were the people cheering for me, teammates and random people seeing my struggle. There were a couple times I had really bad coughing fits and almost pulled myself out, but knew if I stopped riding, that would be all the miles I’d be getting this week.

I eventually passed the finish line signaling the end of the race. I’m not sure what I learned today other than the fact that racing sick sucks and I need to get back in shape, both my top end power and base fitness.

Nutrition: 1x 24oz Tailwind Cola, 1x caffeinated Torq gel at the start line


Read More
Alto Velo Alto Velo

Race Report: Bariani Road Race W1/2/3

Race Report: Bariani Road Race W1/2/3

Date: March 16, 2025

AVRT racers: Louise Thomas, Robin Betz, Rachel Hwang, Steph Hart

Top Result: 7/17 Steph, 8 /17 Rachel

Course: 3 laps of a 20-mile, mostly flat course with a short hill about 3km before the finish. Really crazy winds (20 mph, 40 mph gusts)- so crosswinds for most of the course and a headwind into the finish.

nutrition: 35g carbs/hr (gatorade + a sleeve of shotblocks)

Strava: https://www.strava.com/activities/13903163316

Race Recap (written by Steph)

AV didn’t really have a plan fleshed out going into this race, and was mostly playing defense against whatever Terun (Jamie Chapman, Jacqueline Larouche, Sarah Flamm) was up to. The first lap was peppered with attacks (Shannon Gaffney in particular seemed content to sit in the wind)- Rachel and Robin + Terun covered most of these. Eventually Terun started rolling attacks in the crosswind section on the back half of the course and Jamie Chapman went up the road solo. This also split the field and Louise and Rachel had to chase back on in the headwind section. The next 1.5 laps proceeded at a pretty chill pace, but the wind still made it a tough effort for everyone. On the last lap several teams tried to attack (including on the short hill), but nothing got away. In the last 1km, Robin tried to lead Rachel out, but Terun attacked on the other side of the yellow line, and AV lost position. In hindsight, we should have had a protected rider (probably Rachel) from the start to at least keep someone fresh after the crosswind sections.

Read More
Alto Velo Alto Velo

Race Report: 2025 Bariani RR Men’s Cat 4

Race: Bariani Road Race - Men’s Cat 4

Date: March 16th, 2025

AVRT Racers: Jack Lund, Sam Moskal, Clark Penado

Top Result: Jack Lund - 11/38

Report Author: Clark Penado

Course: 3 laps of a 20mi loop, 60mi total. Mostly flat (300ft of climbing by lap), high winds from the SSW during the race. Some poor overall pavement, with potholes and cracks on the first half of the course, better on the second half.

Strava: https://www.strava.com/activities/13901632172

Nutrition: 1 energy gel, 2 bottles of high carb drink mix

Event Recap: This was certainly a windy day during the race, and the pace started out quite moderate. However, after the first left turn early in the course (into the headwind) the pace picked up considerably, and the subsequent right turn was followed by some heavy attacks. This is where the group started to break apart, and following through to the next turn, I noticed that there was a considerable gap between the wheel in front of me and the main group. I opted to try and bridge, but was only able to make it to a smaller group that formed off the back of the main group of about three other riders. 

From here, I started rotating with the others in this smaller group to try and chase back on, and about halfway through the first lap we were able to absorb Jack and one other rider into our group. A key aspect to the rotation that was happening was echeloning based on the relative direction of the wind, staggering ourselves in either direction to get a maximum benefit. By the end of the first lap, we also added Sam into our group, who had lasted the longest within the main front bunch but unfortunately got a flat which required a quick CO2 injection. By this point, there were about 13 other riders up the road from us.

The second lap was fairly uneventful, where we continued to rotate, but didn’t appear to be closing on the main group much. At the start of the third lap, we lost a couple people in our smaller group, but also caught two others that had come off the back of the group up the road. They similarly joined our rotation plan, which continued until about 5 miles to go. Here one of the other riders from Super Sprinkles took the front, and Jack and I ended up sitting on his wheel until about the last hill kicker roughly 2 miles from the finish. Here he put in an attempted attack, but wasn’t able to shake either of us. Coming into the finish we got a bit game-y, and Jack was able to react to the Super Sprinkles rider’s sprint roughly 200m away from the finish by slipping onto his wheel and getting a slingshot effect to win the relative sprint from our bunch. 

Read More
Alto Velo Alto Velo

Race Report: Cat’s Hill 2025 - Women’s Cat 4/5 & Collegiate D

Race: Cat’s Hill - Women’s Cat 4/5 & Collegiate D

Date: March 15, 2025

AVRT racers: Hannah Chen, Katie Monaghan, Samantha Dewees 

Top Result: Hannah Chen (8/19) Katie Monaghan (9/19)

Course: 40 minutes around a 0.90 mile course.  L shape with 6 corners and a punchy 0.05mi/ 35ft climb at avg 11.8%, max 20% grade followed by a gradual descent to the finish

Strava: https://www.strava.com/activities/13957443896

Nutrition: PB& banana sandwich for breakfast, Mott’s Gummies right before the race cause I’m cheap and sugar is sugar

(From Katie’s point of view)

I have so many thoughts about this race. First of all, I LOVE it. Second of all, I HATE it. 

Quick context, let's start with this race in 2024: It was one of my first races last year. I had broken a rib in a crash about ~8ish weeks earlier descending a wet 84. Being the really responsible physical therapist that I am, I naturally pushed the limits of what I should have been doing physically. However, I showed up to the race and it was actively raining. Between the wet surfaces, my recent injury and my genuine fear if I was going to even be able to make it up the hill, I was mentally not in it from the start. I got dropped early, suffered a lot and averaged about 16.5 mph for the course.

Come 2025, I was super eager to give another crack at this course. I felt way more confident that I could get up the hill after having a year of Egan under my belt. 23% grade sprints were no longer so intimidating. Thank you Egan!! I had messaged in the women’s slack prior to the race looking for tips about shifting before entering the hill. Last year I granny geared up for it every lap and knew if I wanted to be competitive, this wasn’t going to cut it. (For context, I only had a 28 in the back so it wasn’t the granniest of gears). However, I also knew I wanted to avoid the dreaded chain drop. Kristin had suggested getting into your little ring after the speed bump on the straight away prior to the left. Noted.

Race starts. Time for hill repeats! The first few laps I think I was re-figuring out the hill – “Okay shift early, but try to have lots of momentum still. Get out of the saddle, pray to god and repeat.” I was doing pretty well and keeping up with the front 5-6 of the group. This hill really was 1000x easier than last year. I also found that I was 1000x stronger on the slight downhill and corners from last year. Most laps I would enter the hill first to second wheel and end up 5-6th at the top of the hill. Some things never change and I only climb hills so fast. However, I wasn’t trashed and was finding it very easy to get myself back to the front of the group on the downhill without expending really much energy at all. Therefore, I would make sure to enter first to give myself any advantage I could on the climb. 

5 laps to go and I’m very much still in it. I started shifting later and later into my little ring throughout the race because it was helping me keep better speed and momentum entering the climb. 4 laps to go, the shift again happens later and suddenly I’m spinning out. The dreaded chain drop. I unclip and let out a healthy array of expletives. Ryan D runs up to me and encourages me to start my run up the hill to get my chain back on. (Thank you Ryan!) However, I knew my race was pretty much over at this point. 

I got to the top, pulled my chain back on and expressed to anyone who was willing to hear that I really was previously in the race. I finished out the race but at much less intensity to come in 9th. I had a few friends from undergrad and my track club who came to watch, which was super nice of them. Following the race, one of them told me that they overheard someone say I was the most amusing person to watch. I think this was because I proceeded to spend my final four laps chitchatting all my laments as I climbed the hill. If I can’t be the fastest, at least apparently I’m somewhat funny. 

Very disappointed to have dropped my chain but I could tell I made a lot of progress in my cycling this past year. My average speed was faster (19.8 mph), I hit 30 second power PRs and the downhill corners were exhilarating and fun rather than scary. Sometimes it’s about progress not perfection and I’m okay with that. 

I also want to say a huge thank you to everyone in the Alto Velo community who came out to watch! Especially if you bothered to come early to watch the women’s 4s or 3s. It’s super fun to have people cheering for you on the sidelines and we all really appreciated it. 

Photo Credits: Will Gibb

Read More