Shipping line
BC Ferries
BC Ferries runs 83 crossings listed here, 4,099 sailings a week, busiest at Vancouver (Tsawwassen), Victoria (Swartz Bay) and Pender Island (Otter Bay). The most frequent is Campbell River to Quadra Island (Quathiaski Cove).
- 83
- routes
- 4,099
- sailings a week
- Victoria, British Columbia
- based in
What to know
- Foot passengers are asked to turn up at least 30 minutes before the sailing.
- BC residents aged 65 and over ride free as passengers on select routes from Monday to Thursday, except on holidays, with BC identification.
- There is no fare for children under 5.
- Since 15 October 2025, vehicles leaving Horseshoe Bay for Departure Bay must be booked and paid in advance; the rule applies in that direction only.
- Transport Canada rules require passengers to leave their vehicles on enclosed lower car decks while the ship is under way.
- Children under 12 cannot travel alone, except to and from school on designated commuter routes.
Checked on against bcferries.com.
About BC Ferries
Quadra Island's shuttle from Campbell River is the busiest BC Ferries crossing in our timetable, a ten-minute hop across Discovery Passage running from early morning to late evening. Much of the system is short island shuttles like this one, with the big ships between Vancouver and Vancouver Island running on top.
Our data covers 56 directions between 35 terminals, from Victoria and the Southern Gulf Islands up to Port McNeill; the northern coast routes are not included. The main Tsawwassen–Swartz Bay route is timetabled at 95 minutes, Horseshoe Bay to Departure Bay at 100 to 102, and Tsawwassen to Duke Point at 120 to 130; each route page carries the count for the season in force. The Gulf Islands are the tricky part: many sailings call at several islands, so the same pair of terminals can take anything from under an hour to several hours depending on the stops.
On bookable routes BC Ferries recommends reserving a vehicle for holiday weekends and busy afternoons; without a booking, cars load in order of arrival. At terminals with no ticket agent, any fare due is collected on board.
83 crossings
Routes they sail
Ordered by how often each crossing runs.
77 more crossings
- Bowen Island to Vancouver (Horseshoe Bay)20m109BC Ferries · 109 sailings a week · no fare this wayNo fare
- Vancouver (Horseshoe Bay) to Bowen Island20m103BC Ferries · 103 sailings a week · return from C$12.45C$12.45return
- Crofton to Salt Spring Island (Vesuvius Bay)25m83BC Ferries · 83 sailings a week · return from C$12.75C$12.75return
- Salt Spring Island (Vesuvius Bay) to Crofton25m83BC Ferries · 83 sailings a week · return from C$12.75C$12.75return
- Denman Island East (Gravelly Bay) to Hornby Island (Shingle Spit)10m83BC Ferries · 83 sailings a week · return from C$10.55C$10.55return
- Hornby Island (Shingle Spit) to Denman Island East (Gravelly Bay)10m83BC Ferries · 83 sailings a week · no fare this wayNo fare
- Vancouver (Tsawwassen) to Victoria (Swartz Bay)1h 35m78BC Ferries · 78 sailings a week · from C$21C$21
- Victoria (Swartz Bay) to Vancouver (Tsawwassen)1h 35m78BC Ferries · 78 sailings a week · from C$21C$21
- Thetis Island (Preedy Harbour) to Chemainus30m69BC Ferries · 69 sailings a week · no fare this wayNo fare
- Chemainus to Penelakut Island (Telegraph Harbour)30m69BC Ferries · 69 sailings a week · return from C$10.95C$10.95return
- Penelakut Island (Telegraph Harbour) to Chemainus30m69BC Ferries · 69 sailings a week · no fare this wayNo fare
- Chemainus to Thetis Island (Preedy Harbour)30m68BC Ferries · 68 sailings a week · return from C$10.95C$10.95return
- Vancouver (Horseshoe Bay) to Sunshine Coast (Langdale)40m56BC Ferries · 56 sailings a week · return from C$16.45C$16.45return
- Sunshine Coast (Langdale) to Vancouver (Horseshoe Bay)40m56BC Ferries · 56 sailings a week · no fare this wayNo fare
- Victoria (Swartz Bay) to Fulford Harbour (Salt Spring)35m56BC Ferries · 56 sailings a week · return from C$12.75C$12.75return
- Fulford Harbour (Salt Spring) to Victoria (Swartz Bay)35m55BC Ferries · 55 sailings a week · no fare this wayNo fare
- Departure Bay (Nanaimo) to Vancouver (Horseshoe Bay)1h 40m51BC Ferries · 51 sailings a week · from C$21C$21
- Vancouver (Horseshoe Bay) to Departure Bay (Nanaimo)1h 40m51BC Ferries · 51 sailings a week · from C$21C$21
- Pender Island (Otter Bay) to Victoria (Swartz Bay)timetable to 19 Nov40m51BC Ferries · 51 sailings a week · no fare this wayNo fare
- Port McNeill to Malcolm Island (Sointula)25m47BC Ferries · 47 sailings a week · return from C$12.45C$12.45return
- Victoria (Swartz Bay) to Mayne Island (Village Bay)53m47BC Ferries · 47 sailings a week · return from C$13.55C$13.55return
- Victoria (Swartz Bay) to Galiano Island (Sturdies Bay)1h 5m44BC Ferries · 44 sailings a week · return from C$13.55C$13.55return
- Pender Island (Otter Bay) to Vancouver (Tsawwassen)timetable to 19 Nov1h 25m44BC Ferries · 44 sailings a week · from C$10.30C$10.30
- Victoria (Swartz Bay) to Pender Island (Otter Bay)timetable to 19 Nov40m43BC Ferries · 43 sailings a week · return from C$13.55C$13.55return
- Cormorant Island (Alert Bay) to Port McNeill45m41BC Ferries · 41 sailings a week · no fare this wayNo fare
- Port McNeill to Cormorant Island (Alert Bay)40m41BC Ferries · 41 sailings a week · return from C$12.45C$12.45return
- Malcolm Island (Sointula) to Port McNeill25m41BC Ferries · 41 sailings a week · no fare this wayNo fare
- Vancouver (Tsawwassen) to Pender Island (Otter Bay)timetable to 19 Nov2h 5m41BC Ferries · 41 sailings a week · from C$20C$20
- Cortes Island (Whaletown) to Quadra Island (Heriot Bay)45m41BC Ferries · 41 sailings a week · no fare this wayNo fare
- Quadra Island (Heriot Bay) to Cortes Island (Whaletown)45m41BC Ferries · 41 sailings a week · return from C$12.45C$12.45return
- Cormorant Island (Alert Bay) to Malcolm Island (Sointula)35m40BC Ferries · 40 sailings a week · no fare this wayNo fare
- Malcolm Island (Sointula) to Cormorant Island (Alert Bay)35m40BC Ferries · 40 sailings a week · no fare this wayNo fare
- Mayne Island (Village Bay) to Vancouver (Tsawwassen)1h 7m38BC Ferries · 38 sailings a week · from C$10.30C$10.30
- Mayne Island (Village Bay) to Victoria (Swartz Bay)50m36BC Ferries · 36 sailings a week · no fare this wayNo fare
- Vancouver (Tsawwassen) to Mayne Island (Village Bay)1h 10m30BC Ferries · 30 sailings a week · from C$20C$20
- Mayne Island (Village Bay) to Pender Island (Otter Bay)timetable to 19 Nov25m29BC Ferries · 29 sailings a week—
- Galiano Island (Sturdies Bay) to Victoria (Swartz Bay)1h 10m28BC Ferries · 28 sailings a week · no fare this wayNo fare
- Vancouver (Tsawwassen) to Galiano Island (Sturdies Bay)54m28BC Ferries · 28 sailings a week · from C$20C$20
- Comox (Little River) to Powell River (Westview)1h 25m28BC Ferries · 28 sailings a week · from C$16.10C$16.10
- Powell River (Westview) to Comox (Little River)1h 25m28BC Ferries · 28 sailings a week · from C$16.10C$16.10
- Galiano Island (Sturdies Bay) to Pender Island (Otter Bay)timetable to 19 Nov40m28BC Ferries · 28 sailings a week—
- Galiano Island (Sturdies Bay) to Vancouver (Tsawwassen)55m27BC Ferries · 27 sailings a week · from C$10.30C$10.30
- Victoria (Swartz Bay) to Saturna Island (Lyall Harbour)1h 10m26BC Ferries · 26 sailings a week · return from C$13.55C$13.55return
- Saturna Island (Lyall Harbour) to Victoria (Swartz Bay)1h 5m26BC Ferries · 26 sailings a week · no fare this wayNo fare
- Pender Island (Otter Bay) to Mayne Island (Village Bay)timetable to 19 Nov25m23BC Ferries · 23 sailings a week—
- Pender Island (Otter Bay) to Galiano Island (Sturdies Bay)timetable to 19 Nov45m20BC Ferries · 20 sailings a week—
- Saturna Island (Lyall Harbour) to Pender Island (Otter Bay)timetable to 19 Nov40m18BC Ferries · 18 sailings a week—
- Saturna Island (Lyall Harbour) to Galiano Island (Sturdies Bay)1h 20m17BC Ferries · 17 sailings a week—
- Vancouver (Tsawwassen) to Salt Spring Island (Long Harbour)1h 23m15BC Ferries · 15 sailings a week · from C$20C$20
- Salt Spring Island (Long Harbour) to Vancouver (Tsawwassen)1h 23m14BC Ferries · 14 sailings a week · from C$10.30C$10.30
- Saturna Island (Lyall Harbour) to Vancouver (Tsawwassen)2h 15m14BC Ferries · 14 sailings a week · from C$10.30C$10.30
- Mayne Island (Village Bay) to Salt Spring Island (Long Harbour)35m13BC Ferries · 13 sailings a week—
- Galiano Island (Sturdies Bay) to Salt Spring Island (Long Harbour)1h 10m12BC Ferries · 12 sailings a week—
- Salt Spring Island (Long Harbour) to Pender Island (Otter Bay)timetable to 19 Nov40m11BC Ferries · 11 sailings a week—
- Pender Island (Otter Bay) to Salt Spring Island (Long Harbour)timetable to 19 Nov35m11BC Ferries · 11 sailings a week—
- Salt Spring Island (Long Harbour) to Galiano Island (Sturdies Bay)50m11BC Ferries · 11 sailings a week—
- Salt Spring Island (Long Harbour) to Mayne Island (Village Bay)35m11BC Ferries · 11 sailings a week—
- Pender Island (Otter Bay) to Saturna Island (Lyall Harbour)timetable to 19 Nov35m10BC Ferries · 10 sailings a week—
- Vancouver (Tsawwassen) to Saturna Island (Lyall Harbour)2h 15m9BC Ferries · 9 sailings a week · from C$20C$20
- Saturna Island (Lyall Harbour) to Salt Spring Island (Long Harbour)1h 25m7BC Ferries · 7 sailings a week—
- Salt Spring Island (Long Harbour) to Saturna Island (Lyall Harbour)2h 15m1BC Ferries · 1 sailing a week—
Before you sail
Sailing with a Canadian ferry line
Boarding, baggage and vehicle rules apply across the network, not just to one operator.