Shipping line
BC Ferries
BC Ferries runs 56 crossings listed here, 3,566 sailings a week, busiest at Vancouver (Tsawwassen), Victoria (Swartz Bay) and Vancouver (Horseshoe Bay). The most frequent is Campbell River to Quadra Island (Quathiaski Cove).
- 56
- routes
- 3,566
- 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: ten minutes across Discovery Passage, 194 times a week in each direction. 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 with 105 sailings a week each way, Horseshoe Bay to Departure Bay at 100 to 102 minutes, and Tsawwassen to Duke Point at 120 to 130. 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.
56 crossings
Routes they sail
Ordered by how often each crossing runs.
50 more crossings
- Bowen Island to Vancouver (Horseshoe Bay)20m108BC Ferries · 108 sailings a week · no fare this wayNo fare
- Vancouver (Tsawwassen) to Victoria (Swartz Bay)1h 35m105BC Ferries · 105 sailings a week · from C$21C$21
- Victoria (Swartz Bay) to Vancouver (Tsawwassen)1h 35m105BC Ferries · 105 sailings a week · from C$21C$21
- Vancouver (Horseshoe Bay) to Bowen Island20m102BC Ferries · 102 sailings a week · return from C$12.45C$12.45return
- Crofton to Salt Spring Island (Vesuvius Bay)25m87BC Ferries · 87 sailings a week · return from C$12.75C$12.75return
- Salt Spring Island (Vesuvius Bay) to Crofton25m87BC Ferries · 87 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 · return from C$10.55C$10.55return
- Chemainus to Thetis Island (Preedy Harbour)30m70BC Ferries · 70 sailings a week · return from C$10.95C$10.95return
- Thetis Island (Preedy Harbour) to Chemainus30m70BC Ferries · 70 sailings a week · return from C$10.95C$10.95return
- 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 · return from C$10.95C$10.95return
- Vancouver (Horseshoe Bay) to Sunshine Coast (Langdale)40m68BC Ferries · 68 sailings a week · return from C$16.45C$16.45return
- Sunshine Coast (Langdale) to Vancouver (Horseshoe Bay)40m68BC Ferries · 68 sailings a week · no fare this wayNo fare
- Victoria (Swartz Bay) to Fulford Harbour (Salt Spring)35m65BC Ferries · 65 sailings a week · return from C$12.75C$12.75return
- Fulford Harbour (Salt Spring) to Victoria (Swartz Bay)35m65BC Ferries · 65 sailings a week · return from C$12.75C$12.75return
- Pender Island (Otter Bay) to Victoria (Swartz Bay)40m54BC Ferries · 54 sailings a week · return from C$13.55C$13.55return
- Victoria (Swartz Bay) to Pender Island (Otter Bay)40m51BC Ferries · 51 sailings a week · return from C$13.55C$13.55return
- Pender Island (Otter Bay) to Vancouver (Tsawwassen)1h 25m50BC Ferries · 50 sailings a week · from C$10.30C$10.30
- Departure Bay (Nanaimo) to Vancouver (Horseshoe Bay)1h 40m49BC Ferries · 49 sailings a week · from C$21C$21
- Vancouver (Horseshoe Bay) to Departure Bay (Nanaimo)1h 42m49BC Ferries · 49 sailings a week · from C$21C$21
- Port McNeill to Malcolm Island (Sointula)25m48BC Ferries · 48 sailings a week · return from C$12.45C$12.45return
- Victoria (Swartz Bay) to Mayne Island (Village Bay)53m48BC Ferries · 48 sailings a week · return from C$13.55C$13.55return
- Cormorant Island (Alert Bay) to Port McNeill45m42BC Ferries · 42 sailings a week · return from C$12.45C$12.45return
- Port McNeill to Cormorant Island (Alert Bay)40m42BC Ferries · 42 sailings a week · return from C$12.45C$12.45return
- Cormorant Island (Alert Bay) to Malcolm Island (Sointula)35m42BC Ferries · 42 sailings a week · return from C$12.45C$12.45return
- Malcolm Island (Sointula) to Cormorant Island (Alert Bay)35m42BC Ferries · 42 sailings a week · return from C$12.45C$12.45return
- Malcolm Island (Sointula) to Port McNeill25m42BC Ferries · 42 sailings a week · return from C$12.45C$12.45return
- Victoria (Swartz Bay) to Galiano Island (Sturdies Bay)1h 5m41BC Ferries · 41 sailings a week · return from C$13.55C$13.55return
- Cortes Island (Whaletown) to Quadra Island (Heriot Bay)45m41BC Ferries · 41 sailings a week · return from C$12.45C$12.45return
- Quadra Island (Heriot Bay) to Cortes Island (Whaletown)45m41BC Ferries · 41 sailings a week · return from C$12.45C$12.45return
- Mayne Island (Village Bay) to Victoria (Swartz Bay)50m40BC Ferries · 40 sailings a week · return from C$13.55C$13.55return
- Vancouver (Tsawwassen) to Pender Island (Otter Bay)2h 5m37BC Ferries · 37 sailings a week · from C$20C$20
- Vancouver (Tsawwassen) to Mayne Island (Village Bay)1h 10m32BC Ferries · 32 sailings a week · from C$20C$20
- Galiano Island (Sturdies Bay) to Vancouver (Tsawwassen)55m31BC Ferries · 31 sailings a week · from C$10.30C$10.30
- Galiano Island (Sturdies Bay) to Victoria (Swartz Bay)1h 10m30BC Ferries · 30 sailings a week · return from C$13.55C$13.55return
- Victoria (Swartz Bay) to Saturna Island (Lyall Harbour)1h 10m29BC Ferries · 29 sailings a week · return from C$13.55C$13.55return
- Saturna Island (Lyall Harbour) to Victoria (Swartz Bay)1h 5m29BC Ferries · 29 sailings a week · return from C$13.55C$13.55return
- 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
- Mayne Island (Village Bay) to Vancouver (Tsawwassen)1h 7m26BC Ferries · 26 sailings a week · from C$10.30C$10.30
- Vancouver (Tsawwassen) to Galiano Island (Sturdies Bay)54m26BC Ferries · 26 sailings a week · from C$20C$20
- Vancouver (Tsawwassen) to Saturna Island (Lyall Harbour)2h 15m22BC Ferries · 22 sailings a week · from C$20C$20
- Vancouver (Tsawwassen) to Salt Spring Island (Long Harbour)1h 23m19BC Ferries · 19 sailings a week · from C$20C$20
- Salt Spring Island (Long Harbour) to Vancouver (Tsawwassen)1h 23m18BC Ferries · 18 sailings a week · from C$10.30C$10.30
- Saturna Island (Lyall Harbour) to Vancouver (Tsawwassen)2h 15m16BC Ferries · 16 sailings a week · from C$10.30C$10.30
Before you sail
Sailing with a Canadian ferry line
Boarding, baggage and vehicle rules apply across the network, not just to one operator.