Bikepacking - San Francisco to Santa Cruz

I’ve always loved bikes, but the combination of the birth of our first child and the global Covid-19 pandemic in 2020 really pushed biking into my #1 hobby slot, since it doesn’t require a partner (like rock climbing, where my wife is also my climbing partner) and it’s outside with ventilation.

It seems like all the cool kids are #bikepacking these days, which is basically:

I’m not a cool kid but I have a bike suitable for trails and a lot of camping gear from my climbing days, so I thought I’d just go for my first #bikepacking trip. Solo, natch. Woo.

Route selection

Based in the Bay Area, I wanted something local with a lot of bail-out options in case of… anything. Equipment issues, weak moral spirit, etc.

A bit of searching revealed San Francisco to Santa Cruz seemed plausible.

Huge shout-out to this blog:

I basically stole that itinerary with some slight modifications. Read that blog first to get the context. I personally read it about 73 times when planning my trip.

My modifications were:

Below is my overall route, and each day is broken out into a separate Strava route. Each GPX track has been cleaned up, deleting my wrong turns and side trips.


When my road bike was stolen a few years back, I replaced it with a gravel bike and haven’t looked back. So I wanted to do a trip that involved trail riding.

I wanted to camp. Not because I love sleeping in the dirt (in fact, I do not), but because I wanted to use this trip as a stepping stone to longer, gnarlier rides, so part of a multi-year shakeout trip, I guess.

That said, my plan was to mostly eat in restaurants along the way. Because real food is delicious while backpacking food is functional. Side benefit of less stuff to carry.


This route requires a trail-capable bike. Some sections, like Old San Pedro Mountain road (aka the Planet of the Apes) are really chunky asphalt in disrepair and could be done on a road bike. Other parts are technical single-track that would be tricky even on a full-suspension mountain bike. (I had to carry my bike up these short sections.)

Otherwise, whatever you’d bring to sleep in the dirt.

I had one night without access to a restaurant for dinner, which necessitated a stove, pot, etc.

The stretch between Portola Redwoods State Park and Castle Rock State Park is scarce on water. I had 2 water bottles, but would have appreciated 3 (or 4… or 5…). I don’t know that you’d set up your bike just to carry a 3rd bottle just for this stretch - YMMV.

I like riding with a Garmin bike computer (I have the Edge 530). I downloaded each day’s Strava route onto the Garmin ahead of time, so each day I could load a new route and get that day’s turn-by-turn directions.

I also loaded each GPX track into my favorite GPS app - US Topo Maps Pro, which for $12 is an excellent lifetime investment. You can download map tiles and save them for offline use. I use the “OSM Outdoors” tileset up to resolution 17. I use the app to sanity-check against the Garmin, and be able to quickly zoom and pan around to get a better sense of the big picture.

Logistics in 2022

The huge CZU lightning complex fire burned parts of this route in 2020, so things are slightly different from Nikolas Wright’s 2018 trip.

As of October 2022, Butano State Park is closed to camping.

Additionally, Portola Redwoods State Park was also closed to camping due to drought.

Various trail camps (including Castle Rock Trail Camp) are open with caveats:

Check the trail camps website for the latest.

Old Haul Road, which you’d ride from Pescadero to Portola Redwoods was closed for a while (due to the fire), then re-opened, then partially closed again for maintenance. Check for latest updates.

Day 1 - San Francisco to Francis Beach

A good warm-up day.

If you find the climb up Sneath Lane and then Sweeney Ridge to be very hard, you may want to reconsider, because the climbing on Day 2 is much harder. Riding down Baquiano trail off Sweeney Ridge should not be underestimated. It’s very steep and there are deep ruts. Pay attention.

The Beach Monkey cafe had a surprisingly good gyro sandwich, if you’re looking for a lunch spot. It’s also convenient to eat and refill on water before the next climb.

You may hear references to the Planet of the Apes route - it’s hard to find a clean Strava route, but it is literally the same thing as Old San Pedro Mountain road. The descent is as good as advertised - one of the best on the entire trip.

Francis Beach is seemingly cold, wet, and foggy all the time. The campground itself is fine, but if you are sleeping out in the open, expect your gear to get wet. And it won’t dry out the following morning because there won’t be any sun.

There are coin-op showers (if you’re into that), and there are power outlets in the amphitheatre seating area next to the bathroom/shower building.

I ate dinner at Tres Amigos, which was passable. My shrimp quesadilla had good flavors, but was a bit messy in its construction. Mary Berry would call it, “casual”.

Bike Works is very close in case anything broke or rattled off your bike on day 1.

There’s a Safeway supermarket in the same shopping center, if you need last minute supplies.

Day 2 - Francis Beach to Castle Rock Trail Camp

The hard day.

For breakfast, I opted to support corporate America and went to Starbucks just up the road. Except they don’t have a bathroom and send people over to McDonald’s next door.

It’s relatively quick from Half Moon Bay to Pescadero. Arcangeli grocery store is a decent option for sandwiches or refill water bottles, but I opted to keep riding til I reached Loma Mar Store & Kitchen which is also a cute little sylvan treasure and surprisingly well-provisioned, borderline bougie. There’s also an electrical outlet inside.

From there, the next landmark was the Old Haul Road, which was open when I was there, but does have a history of periodic closures. See above section regarding logistics.

I took the wrong turn off Old Haul down a sketchy no-bikes-allowed trail, crashing at least once and also portaging across a small stream, but the route I linked above has a clean track.

The climb out of Portola Redwoods is grueling and relentless. And it was hot when I rode it.

There is apparently a critical water stop right when the climb intersects with Skyline Blvd, that Nikolas Wright had an adventure finding, and I completely missed which I very much regretted in hindsight.

At this point you will probably be too tired to want to ride a trail over smooth pavement, but trust me, avoiding Skyline is a good idea. That road had me feeling like I was going to die at any moment. Dig deep and ride the Ridge Trail, which has excellent signage all the way.

Castle Rock Trail Camp requires reservations.

The visitor center is the only place that has water; go there first, before going to the campsite:

The GPX track on Strava goes directly to Trail Camp. You should ride another 0.5 miles onwards to the visitor center, then ride back. The turn-off for Trail Camp is right by the Los Altos Rod and Gun Club sign.

The visitor center also has free wifi (no cell coverage) and clean bathrooms, but nowhere to recharge electronics.

Trail Camp is great. I get the sense it’s only lightly used. I was literally the only human there on my trip. (Although there was at least one other charismatic megafauna, either a coyote or a fox according to the rangers, that decided to pee on my drybags over night. 🤢)

Day 3 - Castle Rock Trail Camp to Aptos / Santa Cruz

A joyful day.

Remember the mile-long descent into Trail Camp? Your legs remember.

Once you climb out, you can get immediately back onto the Bay Ridge trail (which is what the linked GPX track does), or ride past the visitor center again for more water, bathroom, etc. From the visitor center, it’s easy to get back on the trail, just a half mile up the road.

A few miles of sweet single-track with some technical sections, and then you’re dumped back onto Skyline, but the traffic seems a bit calmer in the mornings.

From there, you’re smiling - a lovely descent on brand new asphalt (as of 2022) and then a bunch of easy road miles that trend generally downward.

The Summit Store is a crucial landmark, as Nikolas Wright notes. It’s very obvious where it is; you won’t miss it. It’s a proper grocery store, so you could even get fresh fruit, if you like. The BBQ tri-tip on Dutch Crunch is as good as advertised. There’s also a convenient electrical outlet in the outdoor seating area if you need to charge things.

After lunch, the route starts to trend upward again, as you enter Soquel Demonstration State Forest from the northern side. If you’re feeling super motivated, you could go ride the trail system there, but otherwise, the GPX track will eventually bring you to the Buzzard Lagoon fire road, which climbs up to the Aptos Creek fire road for the last climb of the route.

The descent down the Aptos Creek fire road is 13 miles of gravel glory. It’s mostly smooth with the occasional stray rock or root to keep you on your toes and you’ll have long forgotten the torturous climb out of Portola Redwoods the previous day.

As you exit Nisene Marks State Park, you’ll be dumped out close to New Brighton State Beach, if you want to camp a third night.

I was sleeping poorly on my trip, so I opted to ride directly to the Santa Cruz Metro Center, to catch the 17 bus to San Jose, to catch the Caltrain back to San Francisco. Pro tip: Friday afternoon is the absolute worst time for the 17 bus, so if that’s the schedule you’re on, get there very early, else you will have to wait an hour for the next bus. Brutal.

And that’s it! A fun little bikepacking trip is in the bag - congrats!