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 Salt Spring Island to Grand Forks.

For scale
As the crow flies367 km
Biking whole way586 km Β· 38 h 27 m
By car579 km Β· 7 h 38 m

We found five 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 · four legs⚠ doesn't run every day — check the schedule
SkyTrain helps connect the dots.
CarrierRideYour bike
🚲First, get from Central Salt Spring Island to Long Harbour (Salt Spring Island), about 9.2 km. Ride it, or take a local bus or taxi. If pedalling it doesn't appeal, Silver Shadow Taxi Ltd. might help.
⛴️BC FerriesTsawwassen – Southern Gulf IslandsLong Harbour (Salt Spring Island) β†’Tsawwassen (Delta)67 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Sailing times vary a lot by routing: some trips are about 50 minutes, others run 2 to 3 hours via Swartz Bay. Check the specific sailing before you book.
🚎TransLink620 Bridgeport Station / Tsawwassen Ferryor the 900 Bike Bus (seasonal)Tsawwassen (Delta) β†’Bridgeport (Richmond)22 kmRack on the bus, free2 bikes β€” first come, first servedE-bikes OK
620 Bridgeport Station / Tsawwassen Ferry: 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.
900 Bike Bus: Seasonal: June 12 to September 7, Fridays, weekends and holidays; hourly, timed to ferry sailings. Carries 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) β†’New WestminsterRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster β†’Grand Forks395 kmBikes acceptedCall for a quote β€” fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚲You arrive at Grand Forks.
Option two · five legs⚠ doesn't run every day — check the schedule
Option one, plus a ferry at the start.
CarrierRideYour bike
⛴️BC FerriesFulford Harbour – Swartz BayFulford Harbour (Salt Spring Island) β†’Swartz Bay (North Saanich)9.4 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
⛴️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 Ferryor the 900 Bike Bus (seasonal)Tsawwassen (Delta) β†’Bridgeport (Richmond)22 kmRack on the bus, free2 bikes β€” first come, first servedE-bikes OK
620 Bridgeport Station / Tsawwassen Ferry: 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.
900 Bike Bus: Seasonal: June 12 to September 7, Fridays, weekends and holidays; hourly, timed to ferry sailings. Carries 10 bikes.
🚝SkyTrainTransLinkBridgeport (Richmond) β†’New WestminsterRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚌Mountain Man Mike'sKaslo – VancouverNew Westminster β†’Grand Forks395 kmBikes acceptedCall for a quote β€” fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚲You arrive at Grand Forks.
Option three · three legs⚠ doesn't run every day — check the schedule
The coach takes care of the long stretch.
CarrierRideYour bike
⛴️BC FerriesFulford Harbour – Swartz BayFulford Harbour (Salt Spring Island) β†’Swartz Bay (North Saanich)9.4 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
🚌Wilson's Transportation (BC Connector)BC Ferries Connector β€” Vancouver / VictoriaSwartz Bay (North Saanich) β†’Pacific Central Station (Vancouver)74 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.
🚌Mountain Man Mike'sKaslo – VancouverPacific Central Station (Vancouver) β†’Grand Forks411 kmBikes acceptedCall for a quote β€” fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚲You arrive at Grand Forks.
Option four · three legs⚠ doesn't run every day — check the schedule
The same idea as Option three, on different routes.
CarrierRideYour bike
🚲First, get from Central Salt Spring Island to Long Harbour (Salt Spring Island), about 9.2 km. Ride it, or take a local bus or taxi.
⛴️BC FerriesTsawwassen – Southern Gulf IslandsLong Harbour (Salt Spring Island) β†’Tsawwassen (Delta)67 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Sailing times vary a lot by routing: some trips are about 50 minutes, others run 2 to 3 hours via Swartz Bay. Check the specific sailing before you book.
🚌Wilson's Transportation (BC Connector)BC Ferries Connector β€” Vancouver / VictoriaTsawwassen (Delta) β†’Pacific Central Station (Vancouver)33 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.
🚌Mountain Man Mike'sKaslo – VancouverPacific Central Station (Vancouver) β†’Grand Forks411 kmBikes acceptedCall for a quote β€” fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚲You arrive at Grand Forks.
Option five · four legs✈ the splurge⚠ doesn't run every day — check the schedule
Mountain Man Mike's will get you there.
CarrierRideYour bike
🚲First, get from Central Salt Spring Island to Ganges (Salt Spring Island), about 9.9 km. Ride it, or take a local bus or taxi.
πŸ›©οΈHarbour AirVancouver Harbour – Salt Spring (Ganges)Ganges (Salt Spring Island) β†’CXH (Vancouver)56 kmFront wheel must come off$20 handling fee β€” bike weight counts toward your baggage allowanceNot on the Twin Otter β€” other floatplanes are fine; confirm when booking
🚲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 β†’Vancouver Airport (YVR) (Richmond)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
✈️Air CanadaVancouver (YVR) – Castlegar (YCG)Vancouver Airport (YVR) (Richmond) β†’Castlegar402 kmBox or sturdy bag requiredBook ahead for your bikeAbout $50 per directionNo e-bikes
🚌Mountain Man Mike'sKaslo – VancouverCastlegar β†’Grand Forks67 kmBikes acceptedCall for a quote β€” fee and packaging arranged with the booking agent
Runs once a week; hop-on hop-off along the way.
🚲You arrive at Grand Forks.
Route facts last checked October 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: Grand Forks to Salt Spring Island (best: bus + SkyTrain + ferry)

Connections from Salt Spring Island: Langford (best: ferry + bus) · Chilliwack (best: ferry + bus + SkyTrain) · Port Hardy (best: ferry + bus + rental car) · Whitehorse, YT (best: ferry + bus + SkyTrain)

Connections from Grand Forks: Rossland (best: bus) · Cache Creek (best: bus) · Gabriola Island (best: bus + SkyTrain + ferry) · Whitehorse, YT (best: bus + SkyTrain + plane)

Check out BC Bike Stops in Salt Spring Island and Grand Forks