Outdoor Sports north intermediate

Hanna Park MTB — Jacksonville's 15 Miles of Sand Singletrack You Wouldn't Expect from Flat Florida

Florida is flat. Mountain biking should be a contradiction. But Kathryn Abbey Hanna Park, 450 acres on Jacksonville's Atlantic edge, hides 15 miles of rooty, twisty, sand-laced singletrack across three loops — the East Coast's surprise Florida MTB flagship. Here's how to ride it without getting humbled.

by Silvio Alves
Atlantic beach and dune ridge looking south from the boardwalk at Kathryn Abbey Hanna Park, Jacksonville
Hanna Park's Atlantic dune line — the same dune system the singletrack climbs and drops through — Wikimedia Commons · Beach at Hanna Park by The Bushranger · CC BY-SA 4.0

The first time you ride Hanna Park, the front wheel will wash out. You’ll be carrying decent speed through a tight palmetto corner, the dirt looks dark and tacky, and then the bike just goes sideways. That wasn’t dirt. That was sand pretending to be dirt. Welcome to Jacksonville mountain biking.

Florida is flat. Mountain biking should be a contradiction. Hanna Park is the answer that breaks the rule.

Kathryn Abbey Hanna Park is a 450-acre city park on the Atlantic, sandwiched between the dunes south of the Mayport jetties and the north end of Atlantic Beach. From the gate at 500 Wonderwood Drive you can be on saltwater in five minutes and on legitimate singletrack in three. There are 15 miles of trail in there. None of it is what you think Florida MTB looks like.

What Hanna actually is

A 450-acre city park run by Jacksonville Parks & Rec. Five dollars per car to enter, dawn to dusk, gates locked at sunset unless you’re camping inside. There’s a swim beach, a freshwater lake with no-motor paddle rentals, a campground, a nature center, and a 60-acre singletrack network laid through the dune system that sits behind the beach.

The trails are maintained by NEFLMBA — the Northeast Florida Mountain Bike Association — and they have been since the early 2000s. Work weekends, race weekends, signage, the Trailforks updates — all volunteer. If you ride Hanna more than twice you should join. It’s $30 a year and it’s the only reason there’s a trail to ride.

The three loops

The network reads as three stacked loops you can ride as separate laps or string into one ~15-mile day. Signage is solid. Direction is enforced — pay attention to the arrows, especially on race weekends.

Loop 1 — Beach Loop. About 3 miles. The flattest, the widest, the most flow-y. Sandy in the dips, never technical, almost no roots that matter. This is the warm-up. This is also where you bring a friend who’s never ridden dirt and you want them to feel like a hero. The southern arc of Loop 1 brushes the beach access boardwalk — you can stop, walk the boardwalk over the dune, look at the Atlantic, get back on.

Loop 2 — Dune Loop. About 5 miles. Rolling dune climbs of 5 to 15 feet, more roots, tighter spacing through the scrub oak. The climbs are short but punchy and the sand at the top of a climb is what eats people — wheel washes out exactly when you most need traction. Lower psi, keep your weight back, pedal through it. This is intermediate territory.

Loop 3 — North Loop. About 7 miles. The technical one. Tighter trees, more roots, a couple of sand pits that flat-out stop momentum, small wooden features — bridges, a couple of low skinnies, nothing exposed. The flow is genuinely good in stretches. There are also stretches where you’re working hard for not much reward, and that’s normal. Strong intermediates from Pisgah or DuPont find Loop 3 fun-but-humbling — the corners come faster than they should and the tire grip drops out from under you in the worst place.

End-to-end one direction is around 14–15 miles. Most riders do it as a 2-hour lap. The race crowd does three.

The sand thing

You have to understand the sand. This is not California hardpack. This is not Georgia red clay. The base is coastal sand that the trail crew has worked, packed, and rooted over twenty years, so 80% of the mileage rides like real singletrack. The other 20% — sand washes at the bottom of dune dips, sand pits where the canopy doesn’t shade enough — is just sand. Loose, deep, draining your speed to zero.

Three things change the sand:

  1. Recent rain. A wet Hanna is a fast Hanna. Twelve to thirty-six hours after a steady rain, the sand packs tacky and the whole place rides 20% quicker. Forty-eight hours later it’s dry again. Don’t ride during the rain (the trail crew will hate you, and some sections close), but the day after is gold.

  2. Tire pressure. Drop it. Whatever you run in clay, drop another 3–5 psi. Most locals on 29×2.4 or 2.5 tubeless run low 20s — 21–24 psi front, 22–26 rear. Anything in the high 20s pings off roots and skates over sand.

  3. Tire choice. A fast-rolling XC tire with light side knobs will not hold a line through the sandy corners. You want a real mid-tread — Maxxis Forekaster, Schwalbe Nobby Nic, Vittoria Mezcal SG2 — in 2.3 to 2.6. 29er is standard. Tubeless is non-negotiable; the roots will pinch-flat a tube within one lap.

Who Hanna is for

This is intermediate terrain. Calling it beginner sells the sand short. Calling it advanced is silly — there’s no exposure, no committed features, nothing you can’t ride around.

The honest filter:

  • If you can ride Pinellas Trail end-to-end without getting bored, you’re fit enough but you haven’t ridden dirt — start on Loop 1 only, get used to roots, then build up.
  • If you’ve ridden clay singletrack — Alafia, Santos, Croom — Hanna will feel slower, twistier, and weirder than what you know. Sand is the new variable.
  • If you came from out of state with Pisgah / DuPont / Brevard miles in your legs, the climbs will feel like rollers and the corners will feel impossibly tight. The tree spacing is what people remember.

Bring a real bike. A 100–120mm hardtail is perfect, a short-travel full suspension is fine, a gravel bike with 50mm tires will technically survive Loop 1 and embarrass you on Loop 3. A fat bike is overkill but works great in deep sand.

The race

The Hanna Park 50/100 is the local sandy classic — a fall endurance race that runs as a 4-hour timed format, a 50-mile distance, or the masochist’s 100-mile. Sponsored by NEFLMBA with shop support, field of 200+ riders, registration through Bike Reg in late summer. The 50-mile is most riders’ first endurance race; the 100 is a different conversation involving lights and nutrition.

The course is laps of the full network. Stage support is at the campground side. The vibe is friendly — Florida MTB is a small enough scene that everyone knows everyone after one lap.

You do not need to race to ride Hanna. But if you want a goal for a winter of training, this is the obvious one.

Beyond the bike

This is a real park with a family attached. The rider’s partner / kids / dog can be at the swim beach or the freshwater lake while you’re on Loop 3, and you can all eat lunch together in the picnic area without anyone having to leave.

  • Campground. ~50 sites, RV and tent, reservable through the city of Jacksonville parks system. Gates close at sunset; campers stay inside the park. Ride-in camping is the move for a long weekend.
  • Swim beach. Atlantic side. Lifeguarded in season.
  • Freshwater lake. Paddleboard and kayak rental, no motors. Don’t swim at dawn or dusk — there are gators in there.
  • Surf access. Mayport jetty side has surfable wave when there’s a north or east swell. Different sport, different post, but useful to know.
  • Water rinse stations at the campground bathhouses. Hose your bike, hose yourself, drive 5–10 minutes north into Atlantic Beach for tacos at Tacolu, lunch at North Beach Fish Camp, or coffee at Mezza.

When to ride, when not to

Best season: late October through April. Cool, dry, no afternoon thunderstorms, low humidity, no mosquitos in the deep palmetto. Race weekend in fall is the peak energy.

Summer: rideable, but start before 11 AM or you will cook. Afternoon thunderstorms close some sections. Mosquitos in the shaded north loop are a real thing — DEET or long sleeves.

Right after a hurricane / tropical storm: wait 48–72 hours minimum and check NEFLMBA’s Trailforks status. They close sections when there’s blowdown, washout, or nesting bird activity. Riding closed trail is how a community loses a venue.

Sunset: the gates close. If you start a Loop 3 lap at 5:30 in January, you will be locked inside. Plan to be back at your car 30 minutes before official sunset.

What’s around if Hanna isn’t enough

  • Jacksonville–Baldwin Rail-Trail — 14 miles of paved rail-trail west of town. Rest-day pavement spin.
  • Mike Roess Goldhead Branch State Park — 35 minutes south. Different terrain, more ridge climbs, less sand. A solid second day.
  • Alafia River State Park — south of Tampa, ~3 hours. Florida’s most famous MTB venue, longer travel.
  • For the broader paved network in Florida, see the Florida cycling routes guide. For paved rail-trail comparisons, Pinellas Trail and Withlacoochee are the obvious counterparts — different sport, same flat-Florida geography.

Wildlife on trail

You will see things. The vibe is more “Florida nature park with a bike trail through it” than “trail center.” Standard rules:

  • Gopher tortoise — federally protected. Burrows look like crescent-shaped sand entrances on the verge. Never ride over one. If a tortoise is on the trail, stop and wait or walk around with the bike off the ground.
  • Black racers and ratsnakes — common, non-venomous, fast. They’ll be gone before you brake.
  • Pygmy rattlesnake / cottonmouth — uncommon on trail, more likely near the freshwater lake edge. Don’t put your hand into palmetto blindly when you go for a pee break.
  • Bobcat tracks — yes, you’ll see them in the sand. You almost certainly won’t see the cat.
  • Alligators — only in the freshwater lake, not on the trails. Don’t swim the lake at dawn or dusk.
  • Pileated woodpeckers — the loud knocking in the canopy. Worth stopping for.

Carry water, carry a multi-tool with chain breaker and a quick link, carry a spare tube even if you’re tubeless, and tell someone roughly when you’ll be out. The trails are well-trafficked on weekends but a midweek crash in the far north loop could mean a long wait.

Where to get a bike if you don’t have one

  • Open Road Bicycles (Atlantic Beach) — closest shop to the park. Hardtail rentals roughly $40–60/day. Call ahead in race week.
  • Champion Cycling (Jacksonville) — bigger fleet, slightly further drive. Also rents full-suspension.
  • NEFLMBA skills clinics — monthly, usually first Saturday. Cheap, often free with membership, taught by people who’ve ridden these trails for two decades. The single fastest way to learn the sand is to ride behind someone who knows it.

Practical card

  • Where: Kathryn Abbey Hanna Park, 500 Wonderwood Dr, Jacksonville FL 32233.
  • Entry: $5 per car. Dawn to dusk. Camping by reservation through City of Jacksonville Parks.
  • Distance: ~15 miles of singletrack across 3 loops. 2-hour full lap, 4+ hours for a 50-mile race pace.
  • Skill level: intermediate. Loop 1 is approachable for fit beginners; Loops 2 and 3 expect comfort on roots and sand.
  • Bike: 100–120mm hardtail or short-travel FS, 29×2.3–2.6, tubeless, low-20s psi.
  • Trail map: Trailforks, “Hanna Park” — NEFLMBA-maintained, current.
  • Best season: Nov–Apr.
  • Avoid: during named storms, 48 hours after heavy rain, summer afternoons.
  • Race: Hanna Park 50/100, fall, register via Bike Reg.
  • Combine with: swim beach, paddleboard lake, campground stay, Atlantic Beach lunch.
  • Don’t: ride closed trail, run over a tortoise burrow, swim the freshwater lake at dawn, leave anything visible in the car at the lot.
Silvio Alves
Silvio Alves
Published January 15, 2026