BC Cycle Tourism Society

Comfort between communities

For every BC community and its five nearest neighbours, the most comfortable bike route we can find, and how much of it is on roads very few people enjoy. Hover a line for the trip. Click a town for all its trips.

THIS IS EXPERIMENTAL WORK. FEEDBACK WELCOME. DO NOT RELY ON IT FOR NAVIGATION OR DECISION MAKING.

Routes use only maintained public roads, designated cycling trails, open Trans Canada Trail sections, and paved town paths. Forest roads and bare trails are left out.

475 of 486 pairs routed. Across the province, 36.9% of the routed kilometres are C1 or C2, and 48.6% are C4 to C6.

Go to:
Loading the map…

Ride comfort (traffic and surface combined)#

CR1 most riders
CR2 some
CR3 few
CR4 very few
CR5 experienced only
CR6 risk
backcountry (bare track)
not rated
ferry (not counted)

Solid is pavement. Short dashes are gravel or unknown surface. Long dashes are the Trans Canada Trail. Grey dots are a section tctrail.ca listed as closed in July 2026.

Community#

Share of the route on C4 to C6 roads.

What you're looking at#

Every community in our Plan Your To and Fro list, plus a few cycling towns it misses, joined to its five nearest neighbours by straight line: 153 places and 486 pairs. For each pair we route a bike trip on our own ride comfort ratings and colour every piece of it by its class. Ride comfort combines traffic and surface. The traffic classes are the ones behind the character map, C1 for most riders through C6 for risk. Where OpenStreetMap says the surface is chunky or worse, a loose pebble rail trail or a sandy climb, the piece moves up the ladder: a chunky surface makes it at least CR3, a rugged one at least CR4. Smooth and ordinary gravel change nothing, so a gravel rail trail stays CR1.

The route is the most comfortable one the model can find, not the shortest. Each metre costs its length times a multiplier for its comfort class, so a quiet road is cheap and a highway shoulder is expensive. Both directions are routed and the more comfortable one is kept, because one-way streets and where a start point snaps can make them differ.

What the shares say#

Across the province, with public roads and trails only, 36.9% of the routed kilometres are on CR1 or CR2 riding and 48.6% are on CR4 to CR6. With forest roads and bare trails allowed, the figures are 46.3% and 32.1%. The second set looks better because the model trades a highway for a forest road. Whether that is better depends on your bike and your appetite.

The list beside the map names the pairs with the largest share of CR4 to CR6 riding. Most are places where the only maintained road between two towns is the highway. That is the finding, not a bug in the map.

What the two views count as a road#

Public roads and trails: a road is in if the BC Digital Road Atlas calls it a public road, from highway through to lane, or if OpenStreetMap marks it as a cycleway, a designated bike route, or an open Trans Canada Trail section, or if it is a paved town path. Forest service roads, bare tracks, unsigned trails, and roads of unknown status are left out on purpose. The cost is honesty. Between many pairs in the north and the Kootenays, the only route left is the highway.

Plus forest roads and bare trails: everything rideable goes back in. Forest roads and roads of unknown status are priced as experienced-only riding, so the model still prefers a public road when one exists. Overgrown and decommissioned roads stay out in both views.

The limits#

  • Nobody has ridden these routes. The comfort classes are computed from OpenStreetMap, and the character map page explains their limits. Check conditions and closures before you go.
  • 11 of 486 pairs have no route in the public roads view, and 3 in the other. Nine involve Tofino or Ucluelet: our road data predates the Kennedy Hill highway rebuild, so neither town connects. Comox and Courtenay share a centre point. Mayne and Saturna have no ferry in OpenStreetMap.
  • We checked 30 gravel pieces from the public roads routes against satellite imagery. 28 were public gravel roads, rail trails, or dykes. Two were forest roads let in because a Trans Canada Trail route relation runs along them. The fix is queued.
  • Trips run town centre to town centre, and each place is paired only with its five nearest by straight line. A pair you expect may not be drawn.
  • Shares are over rated, non-ferry kilometres. Ferry kilometres are reported separately. Not rated is the few metres of footway or service road a route touches at its ends.
  • The surface lift only works where someone has tagged the surface in OpenStreetMap. Most BC trails carry a surface tag but almost none carry a condition tag, so a rail trail torn up by motorized use can still show as CR1 until it is tagged. We treat untagged forest tracks as unknown rather than rough.
  • Only the Trans Canada Trail sections tctrail.ca listed as closed in July 2026 are avoided. Other closures are not yet.
  • Where the direct road is a CR6 highway, the model sometimes takes a very long paved detour instead. Golden to Revelstoke, at 604 km, is the extreme. The multipliers will be retuned.
  • A neighbourhood street with no speed limit in OpenStreetMap lands at CR2 even when it is a signed bikeway. Streets posted 30 km/h climb to CR1.

If a route you know well looks wrong, we would genuinely like to hear about it: heather@bccycletourism.ca.

Methods and licence#

The traffic comfort classes are the character map's, and its methodology report, How we read the terrain (PDF), explains them. The surface side uses the same ruggedness scale as the character map's surface view, R0 paved to R4 extreme, and lifts a piece to CR3 at R3 and CR4 at R4. The routing itself, the multipliers, and the road rules are not written up for release yet. Ask and we will walk you through them. On this page backcountry is drawn magenta rather than the character map's purple, because purple and CR6 are hard to tell apart on a thin line.

Trail alignment from the Trans Canada Trail (tctrail.ca, retrieved July 2026). Road classes from the BC Digital Road Atlas. This map contains information from OpenStreetMap, © OpenStreetMap contributors, available under the Open Database Licence. Basemap cartography © OpenMapTiles.