BC Cycle Tourism Society

To and Fro: moving your bike around British Columbia

My bike and I are in and we’d like to be in .
We show what transit connections accept bikes. Check with the operator for prices, schedules, and reservations.
Same place twice. You’re already there, so enjoy the ride.

Good news: buses, ferries, trains and flights can carry you and your bike from Victoria to Sparwood.

For scale
As the crow flies634 km
Biking whole wayWe can't compute the bike route from the ferry dock but it may be rideable: please consult other sources.
By car1,051 km · 12 h 44 m

We found eight ways to get you there.

🎒 Riding a coach? Most BC coach operators want your bike bagged or boxed. Our field note walks through packing it, including an inexpensive packable bike bag we like: How to bike-and-bus in BC ›
Note: Most carriers carry only a handful of bikes, and summer weekends fill up fast. Reserve where you can. Where you can't, go early or have a backup plan.
Option one · five legs⚠ doesn't run every day — check the schedule
Grab a window seat, the scenery's included.
CarrierRideYour bike
🚌Wilson's Transportation (BC Connector)BC Ferries Connector — Vancouver / VictoriaDouglas St at Pandora Ave (Victoria) →Tsawwassen (Delta)70 kmRides in the hold — bagged or boxed$42 per bike — 50 lb maxReserve bike spot — recommended
⛴️ Downtown to downtown via the Tsawwassen–Swartz Bay ferry crossing.
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚌Mountain Man Mike'sKaslo – Calgaryor Mountain Man Mike's (Kaslo – Cranbrook – Calgary (weekly)) (doesn't run every day)1680 Hwy 3A/6 (Nelson) →Sparwood240 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week, continuing east into Alberta.
🚲You arrive at Sparwood.
Option two · five legs⚠ doesn't run every day — check the schedule
The same trip, but with Ebus for the coach bus leg.
CarrierRideYour bike
🚌Wilson's Transportation (BC Connector)BC Ferries Connector — Vancouver / VictoriaDouglas St at Pandora Ave (Victoria) →Tsawwassen (Delta)70 kmRides in the hold — bagged or boxed$42 per bike — 50 lb maxReserve bike spot — recommended
⛴️ Downtown to downtown via the Tsawwassen–Swartz Bay ferry crossing.
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →Pacific Central Station (Vancouver)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌EbusVancouver – Calgary (Hwy 1)Pacific Central Station (Vancouver) →Calgary AB783 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs the same Highway 1 corridor as Rider Express, so compare schedules and fares.
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Calgary AB →Sparwood275 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚲You arrive at Sparwood.
Option three · six legs⚠ doesn't run every day — check the schedule
Halfway across the province, no car required.
CarrierRideYour bike
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Douglas St at Pandora Ave (Victoria) →Swartz Bay (North Saanich)29 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
⛴️BC FerriesTsawwassen – Swartz BaySwartz Bay (North Saanich) →Tsawwassen (Delta)41 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚌Mountain Man Mike'sKaslo – Calgaryor Mountain Man Mike's (Kaslo – Cranbrook – Calgary (weekly)) (doesn't run every day)1680 Hwy 3A/6 (Nelson) →Sparwood240 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week, continuing east into Alberta.
🚲You arrive at Sparwood.
Option four · six legs⚠ doesn't run every day — check the schedule
Another way: the same trip, but with Ebus for the coach bus leg.
CarrierRideYour bike
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Douglas St at Pandora Ave (Victoria) →Swartz Bay (North Saanich)29 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
⛴️BC FerriesTsawwassen – Swartz BaySwartz Bay (North Saanich) →Tsawwassen (Delta)41 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →Pacific Central Station (Vancouver)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌EbusVancouver – Calgary (Hwy 1)Pacific Central Station (Vancouver) →Calgary AB783 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs the same Highway 1 corridor as Rider Express, so compare schedules and fares.
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Calgary AB →Sparwood275 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚲You arrive at Sparwood.
Show four moreShow fewer
Option five · six legs⚠ doesn't run every day — check the schedule
Mountain Man Mike's will get you there.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria ExpressLegislature Exch (Belleville St) Bay G (Victoria) →Duncan54 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressDuncan →Bay D at Downtown Nanaimo Exch46 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Bay D at Downtown Nanaimo Exch to Hullo Nanaimo Terminal (Port Way), about 1.4 km. If pedalling it doesn't appeal, A.C. Taxi, Yellow Cab Nanaimo might help.
⛴️HulloHullo (Nanaimo – Vancouver)Hullo Nanaimo Terminal (Port Way) →CXH (Vancouver)61 kmBook online ahead — 6 bike spots per sailing, 1 per guest$19.99 one way — $25 in personNo e-bikes — no trailers, 80 in / 50 lb max
🚲Travel the short hop from CXH (Vancouver) to Vancouver Canada Place, about 0.8 km. If pedalling it doesn't appeal, Black Top Cabs, Maclure'S Cabs might help.
🚝SkyTrainTransLinkVancouver Canada Place →New WestminsterRoll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster →1680 Hwy 3A/6 (Nelson)495 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚌Mountain Man Mike'sKaslo – Calgaryor Mountain Man Mike's (Kaslo – Cranbrook – Calgary (weekly)) (doesn't run every day)1680 Hwy 3A/6 (Nelson) →Sparwood240 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
Runs once a week, continuing east into Alberta.
🚲You arrive at Sparwood.
Option six · six legs⚠ doesn't run every day — check the schedule
Another way: the same trip, but with Ebus for the coach bus leg.
CarrierRideYour bike
🚎BC Transit66 CVX Cowichan - Victoria ExpressLegislature Exch (Belleville St) Bay G (Victoria) →Duncan54 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚎BC Transit70 NCX Nanaimo - Cowichan ExpressDuncan →Bay D at Downtown Nanaimo Exch46 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Bay D at Downtown Nanaimo Exch to Hullo Nanaimo Terminal (Port Way), about 1.4 km.
⛴️HulloHullo (Nanaimo – Vancouver)Hullo Nanaimo Terminal (Port Way) →CXH (Vancouver)61 kmBook online ahead — 6 bike spots per sailing, 1 per guest$19.99 one way — $25 in personNo e-bikes — no trailers, 80 in / 50 lb max
🚲Travel the short hop from CXH (Vancouver) to Vancouver Canada Place, about 0.8 km.
🚝SkyTrainTransLinkVancouver Canada Place →Pacific Central Station (Vancouver)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚌EbusVancouver – Calgary (Hwy 1)Pacific Central Station (Vancouver) →Calgary AB783 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs the same Highway 1 corridor as Rider Express, so compare schedules and fares.
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Calgary AB →Sparwood275 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚲You arrive at Sparwood.
Option seven · seven legs⚠ doesn't run every day — check the schedule
Every leg of this works, there are just a lot of them.
CarrierRideYour bike
🚎BC Transit70 Swartz Bay / Downtownor the 72 Swartz Bay / Downtown (via Saanichton)Douglas St at Pandora Ave (Victoria) →Swartz Bay (North Saanich)29 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
⛴️BC FerriesTsawwassen – Swartz BaySwartz Bay (North Saanich) →Tsawwassen (Delta)41 kmRoll on, free — no reservation neededE-bikes OK — no charging on board
🚎TransLink620 Bridgeport Station / Tsawwassen FerryTsawwassen (Delta) →Bridgeport (Richmond)22 kmRack on the bus, free2 bikes — first come, first servedE-bikes OK
The 620 is year-round, roughly hourly, timed to sailings, with two bike-rack spots. On busy summer ferry days the seasonal 900 Bike Bus can carry an extra 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) →Lougheed Stn Bay 5 (Burnaby)Roll on, free — 2 bikes per carAvoid rush hourE-bikes OK
🚎BC Transit66 Fraser Valley ExpressLougheed Stn Bay 5 (Burnaby) →Downtown Chilliwack Bay B76 kmRack on the bus, free — 2 bikes · first come, first servedE-bikes OK
🚲Travel the short hop from Downtown Chilliwack Bay B to Chilliwack, about 1.3 km. If pedalling it doesn't appeal, Chilliwack Taxi might help.
🚌Rider ExpressVancouver – Calgary (Hwy 1)Chilliwack →Calgary AB690 kmRides in the hold — bagged, wrapped, or boxed$50 per bike — non-refundable
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Calgary AB →Sparwood275 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚲You arrive at Sparwood.
Option eight · two legs✈ the splurge⚠ doesn't run every day — check the schedule
Plane to Calgary AB, then a coach bus into Sparwood.
CarrierRideYour bike
🚲First, get from Central Victoria to YYJ (Victoria), about 25 km. Ride it, or take a local bus or taxi. If pedalling it doesn't appeal, Bluebird Cabs, Sidney Taxi might help.
✈️Flair AirlinesVictoria (YYJ) – Calgary (YYC)YYJ (Victoria) →Calgary AB723 kmRides in the hold — boxed, bagged, or wrappedBike feeReserve bike spotNo e-bikes
🚌Mountain Man Mike'sKaslo – Cranbrook – Calgary (weekly)Calgary AB →Sparwood275 kmBikes acceptedCall for a quote — fee and packaging arranged with the booking agent
The only ground service between Cranbrook and Calgary; weekly, eastbound Monday and westbound Tuesday.
🚲You arrive at Sparwood.
Route facts last checked July 2026. We check that every leg here carries bikes, but policies and seasons change. Check times and book with the operator. Something wrong or out of date? Tell us and we'll fix it.
Explore more

Heading back: Sparwood to Victoria (best: bus + SkyTrain + ferry)

Connections from Victoria: Salt Spring Island (best: bus + ferry) · Parksville (best: bus) · Enderby (best: bus + SkyTrain) · Prince Rupert (best: bus + rental car + ferry)

Connections from Sparwood: Cranbrook (best: bus) · Clearwater (best: bus) · Galiano Island (best: bus + SkyTrain + ferry) · Haida Gwaii (best: bus + train + ferry)

Check out BC Bike Stops in Victoria and Sparwood