BC Driving Distances & Times: The Ultimate Planning Map
How long does it take to drive from Vancouver to Whistler?
Vancouver to Whistler is 120 km and takes approximately 1 hour 40 minutes to 2 hours on the Sea-to-Sky Highway (Highway 99), depending on stops and traffic. Allow more time on summer Friday afternoons.
How to use this guide
This guide provides realistic driving times for all major routes in southwestern British Columbia. Times are based on typical conditions — not Google Maps minimums. They account for the reality of BC driving: mountain highways with varying speed limits, seasonal traffic patterns, and the fact that the scenery is good enough that you will stop.
All times assume a standard passenger vehicle in dry conditions. Add 20–40% for winter mountain driving, holiday weekends, and summer Friday afternoons on the Sea-to-Sky Highway.
For route conditions in real time, use DriveBC.ca — BC’s official road conditions and incident reporting service.
Vancouver to Whistler
Distance: 120 km Driving time: 1h40m–2h Route: Highway 99 North (Sea-to-Sky Highway)
The Sea-to-Sky Highway is one of Canada’s most celebrated drives: cliffs above Howe Sound, Coast Mountain peaks, and the community of Squamish at the midpoint. The road is two lanes for most of its length and has a posted speed of 80–90 km/h in the mountain sections.
Key stops along the route:
- West Vancouver (start of the scenic section): 20 minutes from downtown
- Horseshoe Bay (BC Ferries terminal for Nanaimo): 30 minutes
- Shannon Falls (Squamish): 50 minutes. Park and walk 5 minutes to the base of the 84m falls
- Stawamus Chief viewpoint (Squamish): 55 minutes
- Sea to Sky Gondola (optional, Squamish): 1h. Summit views over Howe Sound
- Downtown Squamish: 1h05m. Good coffee and craft beer
- Whistler Village: 1h40m–2h
Friday afternoon warning: The northbound Sea-to-Sky Highway on summer Friday afternoons is one of BC’s worst traffic bottlenecks. Departing Vancouver after 5pm on a Friday in July or August can add 45–90 minutes to the journey. Go early or go Saturday morning.
Vancouver to Victoria (via BC Ferries)
Distance: 110 km (drive) + 1h35m (ferry) + 30 km (drive) Total time: 3h–3h30m door to door Route: Tsawwassen Terminal → BC Ferries → Swartz Bay → Highway 17 South
The drive breakdown:
- Downtown Vancouver → Tsawwassen Terminal: 45 minutes (longer in summer traffic; allow 1h)
- BC Ferries sailing: 1h35m (Tsawwassen to Swartz Bay)
- Swartz Bay → Victoria city centre: 30 minutes
Ferry logistics:
- Book vehicle reservations at bcferries.com — essential in July–August, advisable year-round
- Arrive at the terminal 30–45 minutes before your sailing
- Sailings run approximately every 1–2 hours throughout the day
- Foot passenger fares: approximately CAD 18 each way; vehicle: approximately CAD 45–60 each way (car, not including driver)
Alternative — BC Ferries Horseshoe Bay → Departure Bay (Nanaimo): This crossing is slightly shorter (1h40m) and deposits you in Nanaimo rather than Swartz Bay. From Nanaimo to Victoria is a further 1.5h south on the Island Highway. This route makes more sense if Victoria is a stop along an island circuit rather than the sole destination.
Vancouver to Tofino
Distance: Approx. 350 km including ferry Total time: 6h–7h door to door including ferry Route: Vancouver → Tsawwassen ferry → Swartz Bay → Island Highway → Highway 4 → Tofino
The breakdown:
- Vancouver → Tsawwassen: 45m
- BC Ferries crossing: 1h35m
- Swartz Bay → Nanaimo (via Island Highway): 1h15m
- Nanaimo → Parksville: 30m
- Parksville → Cathedral Grove (MacMillan PP): 45m
- Cathedral Grove → Tofino: 1h15m
Alternative routing via Horseshoe Bay–Nanaimo ferry:
- Vancouver → Horseshoe Bay: 30m
- BC Ferries crossing: 1h40m
- Departure Bay (Nanaimo) → Tofino: approximately 3h
This alternative is marginally faster in total time and avoids the longer southern Island Highway drive. It works well when starting from the north side of Vancouver (Burnaby, North Vancouver, Squamish).
Tofino driving note: Highway 4 west of Parksville is winding mountain highway — well-maintained but requiring concentration. Do not rely on Google Maps timing for this section; it consistently underestimates travel time. Allow a full travel day for Vancouver–Tofino rather than half a day.
Vancouver to Kelowna (Okanagan)
Distance: 400 km Driving time: 3h45m–4h30m Route: Trans-Canada Highway (Highway 1) to Hope, then Coquihalla Highway (Highway 5) to Merritt, then Highway 97C to Kelowna
Key sections:
- Vancouver → Hope: 1h40m. This section of the Trans-Canada through the Fraser Valley is flat and relatively fast, though heavy trucks are common
- Hope → Merritt (Coquihalla Highway): 1h. The Coquihalla climbs to 1,244m at the summit; speed limit is 120 km/h on the divided highway sections. Weather can change rapidly in winter
- Merritt → Kelowna (Highway 97C): 1h30m. Gentler terrain through the Nicola Valley and up onto the Okanagan benchlands
Alternative routing: Highway 3 (Crowsnest Highway) from Hope through Manning Provincial Park and Princeton to Osoyoos, then north on Highway 97 to Penticton and Kelowna. This is 30–40 minutes longer but significantly more scenic, particularly through Manning Park. Good option for daylight driving when scenery matters.
Kelowna airport (YLW): Flying Kelowna–Vancouver takes 45 minutes. The one-way car rental option (drive one way, fly the other) makes sense if the Coquihalla drive is not appealing in both directions.
Vancouver to Victoria via Kelowna (the Interior Circuit)
Distance: 850 km (full loop) Driving time: 2 days minimum Route: Vancouver → Kelowna (Hwy 1/5/97C) → Osoyoos → Princeton → Hope → Vancouver
This loop opens up BC’s southern interior — the Okanagan wine country, the pocket desert near Osoyoos, and the dramatic Hope–Princeton corridor through the Cascade Mountains. It is a 2-day circuit rather than a day trip.
Whistler to Victoria
Distance: 300 km including ferry Driving time: 3h30m–4h including 1h40m ferry Route: Whistler → Vancouver/Horseshoe Bay → BC Ferries → Departure Bay (Nanaimo) → Victoria
Whistler to Horseshoe Bay: 1h20m south on Highway 99. Then BC Ferries across to Departure Bay (Nanaimo): 1h40m. Then Island Highway south to Victoria: 1h30m.
Victoria to Tofino
Distance: 310 km Driving time: 4h–4h30m Route: Victoria → Island Highway North → Parksville → Highway 4 West → Tofino
This is a full driving day if done without stops. With Cathedral Grove (mandatory) and a beach walk at Long Beach on arrival, allow 5–6 hours.
Key milestones:
- Victoria → Nanaimo (Island Highway): 1h15m
- Nanaimo → Parksville: 30m
- Parksville → Port Alberni (start of mountain section): 45m
- Port Alberni → Cathedral Grove: 30m
- Cathedral Grove → Tofino: 1h15m
Nanaimo to Tofino
Distance: 190 km Driving time: 3h Route: Island Highway north to Parksville, then Highway 4 west
This is the most common single-day driving leg if you have taken the Horseshoe Bay–Nanaimo ferry. Allow the full 3 hours not including stops, and budget extra for Cathedral Grove and Long Beach.
Victoria to Kelowna
Distance: 460 km Driving time: 5h30m–6h Route: Island Highway north → Swartz Bay ferry → Tsawwassen → Trans-Canada east → Coquihalla north → Kelowna
Alternatively: drive north on the Island Highway to Nanaimo, take the Departure Bay–Horseshoe Bay ferry, then drive east and north. Similar total time.
Gulf Islands ferry times from Tsawwassen and Swartz Bay
The Gulf Islands are served by BC Ferries from both Tsawwassen (mainland) and Swartz Bay (Vancouver Island):
| Route | Sailing time | Frequency |
|---|---|---|
| Tsawwassen → Salt Spring (Long Harbour) | 1h10m–2h30m (varies with stops) | Multiple daily |
| Tsawwassen → Galiano Island | 1h | Multiple daily |
| Swartz Bay → Salt Spring (Fulford Harbour) | 35m | Multiple daily |
| Swartz Bay → Galiano | 50m | Multiple daily |
| Swartz Bay → Mayne Island | 1h10m | Multiple daily |
| Swartz Bay → Saturna Island | 1h45m | Limited daily |
Inter-island connections allow hopping between islands, but careful scheduling is required as connections can be hourly or less frequent.
Key distances at a glance
| Route | Distance | Driving time |
|---|---|---|
| Vancouver → Whistler | 120 km | 1h40m–2h |
| Vancouver → Kelowna | 400 km | 3h45m–4h30m |
| Vancouver → Hope | 150 km | 1h40m |
| Whistler → Squamish | 60 km | 45m |
| Victoria → Nanaimo | 110 km | 1h15m |
| Nanaimo → Tofino | 190 km | 3h |
| Victoria → Tofino | 310 km | 4h–4h30m |
| Kelowna → Penticton | 60 km | 45m |
| Penticton → Osoyoos | 60 km | 50m |
| Hope → Kelowna (via Coquihalla) | 260 km | 2h30m |
| Horseshoe Bay → Nanaimo (ferry) | — | 1h40m |
| Tsawwassen → Swartz Bay (ferry) | — | 1h35m |
Planning your BC road trip
For itinerary suggestions that put these distances into a practical sequence:
- 7-day BC road trip — covers Vancouver, Whistler, Tofino, Victoria in one loop
- 10-day BC extended Pacific loop — adds Gulf Islands
- 14-day BC grand circuit — includes Okanagan
- Vancouver Island 7-day road trip — island-only circuit
For car rental logistics and insurance advice, see car rental in BC.
Browse BC guided tours for those who prefer not to self-driveBC’s road network is well-maintained and the routes between major destinations are straightforward. The challenge is not driving difficulty but distance management — understanding that a “short” 250km in BC mountain terrain takes 3 hours is the planning insight that most first-time visitors miss.