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 Seton Portage.

For scale
As the crow flies231 km
Biking whole way412 km Β· 24 h 36 m
By car318 km Β· 6 h 41 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 · six legs⚠ doesn't run every day — check the schedule
Beautiful BC from a coach window.
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 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 – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary (Hwy 1))Pacific Central Station (Vancouver) β†’Kamloops301 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.
🚎BC TransitLillooet – Kamloops (Health Connections)or the Lillooet – Lytton – Kamloops (Health Connections) (doesn't run every day)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)116 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Lillooet – Kamloops: Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Tuesday only.
Lillooet – Lytton – Kamloops: Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Thursday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Option two · six legs⚠ doesn't run every day — check the schedule
The same idea as Option one, 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.
🚎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) β†’Surrey CentralRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚲Travel the short hop from Surrey Central to Surrey (Guildford Rec Centre), about 3.4 km. If pedalling it doesn't appeal, Aldergrove-Langley Taxi Ltd., Green Cab might help.
🚌EbusVancouver – Calgary (Hwy 1)or Rider Express (Vancouver – Calgary (Hwy 1))Surrey (Guildford Rec Centre) β†’Kamloops280 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.
🚎BC TransitLillooet – Lytton – Kamloops (Health Connections)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)200 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Thursday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Option three · five legs⚠ doesn't run every day — check the schedule
The long way round, but it works.
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.
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary (Hwy 1))Pacific Central Station (Vancouver) β†’Kamloops301 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.
🚎BC TransitLillooet – Kamloops (Health Connections)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)116 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Tuesday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Option four · seven legs⚠ doesn't run every day — check the schedule
Pedal the first stretch, then let the coach buses take over.
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.
🚎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.
🚎TransLink351 White Rock Centre / Bridgeport StationBridgeport (Richmond) β†’White Rock Centre30 kmRack on the bus, free2 bikes β€” first come, first servedE-bikes OK
Express to the Canada Line at Bridgeport, seven days a week, with two bike-rack spots.
🚎TransLink321 White Rock / Newton / Surrey Central StationWhite Rock Centre β†’Surrey Central18 kmRack on the bus, free2 bikes β€” first come, first servedE-bikes OK
Daily service up King George Boulevard to Surrey Central SkyTrain, with two bike-rack spots.
🚲Travel the short hop from Surrey Central to Surrey (Guildford Rec Centre), about 3.4 km.
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary (Hwy 1))Surrey (Guildford Rec Centre) β†’Kamloops277 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.
🚎BC TransitLillooet – Kamloops (Health Connections)or the Lillooet – Lytton – Kamloops (Health Connections) (doesn't run every day)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)116 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Lillooet – Kamloops: Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Tuesday only.
Lillooet – Lytton – Kamloops: Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Thursday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Show four moreShow fewer
Option five · five 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.
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary (Hwy 1))Pacific Central Station (Vancouver) β†’Kamloops301 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.
🚎BC TransitLillooet – Kamloops (Health Connections)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)116 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Tuesday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Option six · seven 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 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 – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary (Hwy 1))Pacific Central Station (Vancouver) β†’Kamloops301 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.
🚎BC TransitLillooet – Kamloops (Health Connections)or the Lillooet – Lytton – Kamloops (Health Connections) (doesn't run every day)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)116 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Lillooet – Kamloops: Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Tuesday only.
Lillooet – Lytton – Kamloops: Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Thursday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Option seven · seven legs⚠ doesn't run every day — check the schedule
Another way: 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 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) β†’Surrey CentralRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚲Travel the short hop from Surrey Central to Surrey (Guildford Rec Centre), about 3.4 km.
🚌EbusVancouver – Calgary (Hwy 1)or Rider Express (Vancouver – Calgary (Hwy 1))Surrey (Guildford Rec Centre) β†’Kamloops280 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.
🚎BC TransitLillooet – Lytton – Kamloops (Health Connections)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)200 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Thursday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
Option eight · six legs✈ the splurge⚠ doesn't run every day — check the schedule
A long haul, but it all connects.
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) – Kelowna (YLW)Vancouver Airport (YVR) (Richmond) β†’Kelowna Airport288 kmBox or sturdy bag requiredBook ahead for your bikeAbout $50 per directionNo e-bikes
🚌EbusKamloops – Kelowna (via Salmon Arm)Kelowna Airport β†’Kamloops177 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚎BC TransitLillooet – Kamloops (Health Connections)Kamloops β†’Lillooet (Buy Low / Reynolds Hotel)116 kmFront rack, no fee β€” 2 bikes, first come; space not guaranteedE-bikes under 25 kg only β€” lithium battery off the bike and carried on board
Health Connections bus: medical patients get priority. You must call ahead to book a seat. Runs Tuesday only.
🚌Tsal'alh Seton TrainLillooet – Shalalth – Seton PortageLillooet (Buy Low / Reynolds Hotel) β†’Seton Portage26 kmBikes ride along β€” $2.50 each wayCheck before you go β€” schedule changes and closures are posted on Facebook; call (250) 259-8300
Daily shuttle bus: leaves Lillooet at 9:00 am and 3:40 pm, heads back from Seton Portage at 10:30 am and 4:55 pm. Check the Facebook page or call before you go, since slides can close the road.
🚲You arrive at Seton Portage.
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: Seton Portage to Salt Spring Island (best: bus + SkyTrain + ferry)

Connections from Salt Spring Island: Langford (best: ferry + bus) · Chilliwack (best: ferry + bus + SkyTrain) · Grand Forks (best: ferry + bus + SkyTrain) · Whitehorse, YT (best: ferry + bus + SkyTrain)

Connections from Seton Portage: Clinton (best: bus) · Clearwater (best: bus) · Castlegar (best: bus) · Whitehorse, YT (best: bus + plane)

Check out BC Bike Stops in Salt Spring Island