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, rental cars and flights can carry you and your bike from Surrey to Haida Gwaii.

For scale
As the crow flies780 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,670 km Β· 23 h 24 m

We found eight ways to get you there, ferries doing the heavy lifting.

πŸŽ’ 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
The long way round, but it works.
CarrierRideYour bike
🚝SkyTrainTransLinkSurrey Central β†’Pacific Central Station (Vancouver)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
πŸš†VIA RailThe Canadian (Vancouver – Kamloops North – Jasper)Pacific Central Station (Vancouver) β†’Jasper AB541 kmChecked baggage β€” staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK β€” battery disconnected at check-in
Two departures a week in season; bikes can be checked on and off at Vancouver and Jasper only.
πŸš†VIA RailSkeena (Prince Rupert – Prince George – Jasper)Jasper AB β†’Downtown Prince Rupert (2nd Ave at 3rd St)922 kmChecked baggage β€” staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK β€” battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Option two · four legs⚠ doesn't run every day — check the schedule
Halfway across the province, no car required.
CarrierRideYour bike
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary) or Rider Express (Vancouver – Calgary (Hwy 1))Surrey β†’Kamloops280 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌EbusKamloops – Prince GeorgeKamloops β†’Downtown Exch Bay B (Prince George)456 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
πŸš†VIA RailSkeena (Prince Rupert – Prince George – Jasper)Downtown Exch Bay B (Prince George) β†’Downtown Prince Rupert (2nd Ave at 3rd St)591 kmChecked baggage β€” staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK β€” battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Option three · four legs⚠ doesn't run every day — check the schedule
Same as Option two, but a coach bus instead of the train.
CarrierRideYour bike
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Rider Express (Vancouver – Calgary) or Rider Express (Vancouver – Calgary (Hwy 1))Surrey β†’Kamloops280 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
🚌EbusKamloops – Prince GeorgeKamloops β†’Downtown Exch Bay B (Prince George)456 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
Runs Wed/Fri/Sun toward Prince George and Mon/Thu/Sat toward Kamloops; no service on Tuesdays.
🚌BC Bus North (Tahltan NST Busing Ltd.)Prince George – Prince Rupert (Hwy 16 West)Downtown Exch Bay B (Prince George) β†’Downtown Prince Rupert (2nd Ave at 3rd St)619 kmLuggage bay on the Prince Rupert routeOther routes: bagged or boxed β€” checked as luggage
Twice a week: Monday and Thursday westbound, Tuesday and Friday eastbound.
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Option four · five legs⚠ doesn't run every day — check the schedule
Mostly sailing, a little rolling.
CarrierRideYour bike
🚝SkyTrainTransLinkSurrey Central β†’Vancouver Canada PlaceRoll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
🚲Travel the short hop from Vancouver Canada Place to CXH (Vancouver), about 0.8 km. If pedalling it doesn't appeal, Black Top Cabs, Maclure'S Cabs might help.
⛴️HulloHullo (Nanaimo – Vancouver)CXH (Vancouver) β†’Hullo Nanaimo Terminal (Port Way)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 Hullo Nanaimo Terminal (Port Way) to Downtown Nanaimo, about 1.5 km. If pedalling it doesn't appeal, A.C. Taxi, Yellow Cab Nanaimo might help.
πŸš™BudgetOne-way rental: Port Hardy – Nanaimoor National Car & Truck Rental (One-way rental: Port Hardy – Nanaimo) (counter a short ride away on the 20/20A Hammond Bay / Dover)Downtown Nanaimo β†’YZT (Port Hardy)298 kmOne-way between BC Budget branches β€” bookable onlineBike rides inside β€” SUV or minivan, seats folded, wheels offConfirm one-way and vehicle when booking
🚲Travel the short hop from YZT (Port Hardy) to Bear Cove (Port Hardy), about 8 km. If pedalling it doesn't appeal, Waivin Flags Taxi might help.
⛴️BC FerriesPort Hardy – Prince Rupert (Inside Passage)Bear Cove (Port Hardy) β†’Downtown Prince Rupert (2nd Ave at 3rd St)445 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Sails alternate days, roughly 3–4 sailings a week each way in summer.
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Show four moreShow fewer
Option five · four legs⚠ doesn't run every day — check the schedule
Same as Option one, but a coach bus instead of the SkyTrain.
CarrierRideYour bike
🚌EbusVancouver – Kamloopsor Ebus (Vancouver – Calgary (Hwy 1)) or Ebus (Vancouver – Kelowna) or Rider Express (Vancouver – Calgary)Surrey β†’Pacific Central Station (Vancouver)20 kmRides in the hold β€” bagged or cloth-wrapped (no plastic), or boxed$30 per bike
πŸš†VIA RailThe Canadian (Vancouver – Kamloops North – Jasper)Pacific Central Station (Vancouver) β†’Jasper AB541 kmChecked baggage β€” staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK β€” battery disconnected at check-in
Two departures a week in season; bikes can be checked on and off at Vancouver and Jasper only.
πŸš†VIA RailSkeena (Prince Rupert – Prince George – Jasper)Jasper AB β†’Downtown Prince Rupert (2nd Ave at 3rd St)922 kmChecked baggage β€” staffed stations only, including Vancouver BC and Jasper AB$25 per directionE-bikes OK β€” battery disconnected at check-in
Three departures a week; the trip includes an overnight stop in Prince George (book your own hotel).
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Option six · five legs📅 seasonal⚠ doesn't run every day — check the schedule
Same as Option four, but a coach bus instead of the SkyTrain.
CarrierRideYour bike
🚲First, get from Surrey to South Surrey Border (176 St & 8 Ave), about 21 km. Ride it, or take a local bus or taxi. If pedalling it doesn't appeal, Aldergrove-Langley Taxi Ltd., Green Cab might help.
🚌Quick Shuttle (Quick Coach Lines / TRAXX)Vancouver – Seattle (SeaTac)South Surrey Border (176 St & 8 Ave) β†’Vancouver Canada Place46 kmBikes accepted β€” book as an add-on$42 USD each β€” about $57 CAD
Runs year-round; winter service drops to Friday–Monday only.
🚲Travel the short hop from Vancouver Canada Place to CXH (Vancouver), about 0.8 km.
⛴️HulloHullo (Nanaimo – Vancouver)CXH (Vancouver) β†’Hullo Nanaimo Terminal (Port Way)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 Hullo Nanaimo Terminal (Port Way) to Downtown Nanaimo, about 1.5 km.
πŸš™BudgetOne-way rental: Port Hardy – NanaimoDowntown Nanaimo β†’YZT (Port Hardy)298 kmOne-way between BC Budget branches β€” bookable onlineBike rides inside β€” SUV or minivan, seats folded, wheels offConfirm one-way and vehicle when booking
🚲Travel the short hop from YZT (Port Hardy) to Bear Cove (Port Hardy), about 8 km.
⛴️BC FerriesPort Hardy – Prince Rupert (Inside Passage)Bear Cove (Port Hardy) β†’Downtown Prince Rupert (2nd Ave at 3rd St)445 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Sails alternate days, roughly 3–4 sailings a week each way in summer.
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Option seven · six legs⚠ doesn't run every day — check the schedule
A long haul, but it all connects.
CarrierRideYour bike
🚌Rider ExpressVancouver – Calgary (Hwy 1)Surrey β†’Downtown Vancouver (Dunsmuir at Cambie)21 kmRides in the hold β€” bagged, wrapped, or boxed$50 per bike β€” non-refundable
🚎TransLink257 Horseshoe Bay ExpressDowntown Vancouver (Dunsmuir at Cambie) β†’Horseshoe Bay19 kmRack on the bus, free2 bikes β€” first come, first servedE-bikes OK
⛴️BC FerriesHorseshoe Bay – Departure BayHorseshoe Bay β†’Departure Bay (Nanaimo)53 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
🚲Travel the short hop from Departure Bay (Nanaimo) to Downtown Nanaimo, about 1.3 km.
πŸš™National Car & Truck Rental (Vancouver Island)One-way rental: Port Hardy – Nanaimoor Budget (One-way rental: Port Hardy – Nanaimo) (counter a short ride away on the 20/20A Hammond Bay / Dover)Downtown Nanaimo β†’YZT (Port Hardy)295 kmOne-way between Island branches β€” no drop chargeBike rides inside β€” SUV or minivan, seats folded, wheels offConfirm one-way and vehicle when booking
🚲Travel the short hop from YZT (Port Hardy) to Bear Cove (Port Hardy), about 8 km.
⛴️BC FerriesPort Hardy – Prince Rupert (Inside Passage)Bear Cove (Port Hardy) β†’Downtown Prince Rupert (2nd Ave at 3rd St)445 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Sails alternate days, roughly 3–4 sailings a week each way in summer.
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Option eight · four legs✈ the splurge⚠ doesn't run every day — check the schedule
A SkyTrain, a plane, and two ferries, riding the Inside Passage.
CarrierRideYour bike
🚝SkyTrainTransLinkSurrey Central β†’Vancouver Airport (YVR) (Richmond)Roll on, free β€” 2 bikes per carAvoid rush hourE-bikes OK
✈️Pacific Coastal AirlinesVancouver – Port HardyVancouver Airport (YVR) (Richmond) β†’YZT (Port Hardy)343 kmRides in the hold β€” small aircraft, limited spaceAbout $105 per directionNo e-bikes
🚲Travel the short hop from YZT (Port Hardy) to Bear Cove (Port Hardy), about 8 km.
⛴️BC FerriesPort Hardy – Prince Rupert (Inside Passage)Bear Cove (Port Hardy) β†’Downtown Prince Rupert (2nd Ave at 3rd St)445 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
Sails alternate days, roughly 3–4 sailings a week each way in summer.
⛴️BC FerriesPrince Rupert – Skidegate (Haida Gwaii)Downtown Prince Rupert (2nd Ave at 3rd St) β†’Skidegate (Graham Island)160 kmRoll on, free β€” no reservation neededE-bikes OK β€” no charging on board
About 5–6 sailings a week; no Tuesday sailing westbound and no Sunday sailing eastbound.
🚲You arrive at Skidegate (Graham Island).
Route facts last checked August 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: Haida Gwaii to Surrey (best: ferry + train + SkyTrain)

Connections from Surrey: Mission (best: SkyTrain + bus) · Powell River (best: bus + ferry) · Clearwater (best: bus) · Prince Rupert (best: SkyTrain + train)

Connections from Haida Gwaii: Prince Rupert (best: ferry) · Port Alberni (best: ferry + rental car) · Chilliwack (best: ferry + train + SkyTrain) · Sparwood (best: ferry + train + bus)

Check out BC Bike Stops in Surrey