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, trains and flights can carry you and your bike from Whitehorse, YT to Kamloops.

For scale
As the crow flies1,441 km
Biking whole wayno route found
By carno route found

We found three 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 · two legs✈ the splurge
Fly most of the way, then let transit finish the trip.
CarrierRideYour bike
✈️Air NorthKelowna (YLW) – Whitehorse (YXY) via VancouverYXY (Whitehorse) →Kelowna Airport1550 kmHard case or bike box — a box needs a signed release; 32 kg max$50 plus taxAdd your bike to the booking ahead — space availableE-bikes only with a small battery — removable, 160 Wh max, carried in the cabin
Daily, with a stop in Vancouver on the same plane.
🚌EbusKamloops – Kelowna (via Salmon Arm)Kelowna Airport →Kamloops177 kmRides in the hold — bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚲You arrive at Kamloops.
Option two · three legs✈ the splurge
The splurge: hop a flight.
CarrierRideYour bike
✈️Air NorthVancouver (YVR) – Whitehorse (YXY)or Air Canada (Vancouver (YVR) – Whitehorse (YXY))YXY (Whitehorse) →Vancouver Airport (YVR) (Richmond)1487 kmHard case or bike box — a box needs a signed release; 32 kg max$50 plus taxAdd your bike to the booking ahead — space availableE-bikes only with a small battery — removable, 160 Wh max, carried in the cabin
Nonstop, two or three flights a day, year-round.
🚝SkyTrainTransLinkVancouver Airport (YVR) (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.
🚲You arrive at Kamloops.
Option three · three legs✈ the splurge
The same trip, but with Air Canada for the plane leg.
CarrierRideYour bike
✈️Air CanadaVancouver (YVR) – Whitehorse (YXY)YXY (Whitehorse) →Vancouver Airport (YVR) (Richmond)1487 kmBox or sturdy bag requiredBook ahead for your bikeAbout $50 per directionNo e-bikes
🚝SkyTrainTransLinkVancouver Airport (YVR) (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.
🚲You arrive at Kamloops.
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: Kamloops to Whitehorse, YT (best: bus + plane)

Connections from Whitehorse, YT: Skagway, AK (best: plane + SkyTrain + bus) · Qualicum Beach (best: plane + SkyTrain + ferry) · Mayne Island (best: plane + SkyTrain + bus) · Fernie (best: plane + bus)

Connections from Kamloops: Logan Lake (best: bus) · Langley (best: bus) · Qualicum Beach (best: bus + SkyTrain + ferry) · Skagway, AK (best: bus + ferry)

Check out BC Bike Stops in Kamloops