Hot Springs in BC You Can Drive Right Up To, Including One Inside a Cave (Ainsworth)

Hot Springs in BC You Can Drive Right Up To, Including One Inside a Cave (Ainsworth)

Most hot springs worth the name in B.C. ask for something first: a boat, a long hike, a forest road you’d rather not take in November. The ones here ask for a parking spot. At Ainsworth, on the west shore of Kootenay Lake, you change, walk out to the pool and wade into a cave. The water starts in the Cody Caves system above the resort, where BC Parks describes an underground stream flowing more than a kilometre through ancient limestone.

None of these are on the Sea to Sky, so think road trip. Most sit in the Kootenays and along the Trans-Canada, with free inland ferries tying several of them together. There’s a Parks Canada pool in a canyon, a community-owned spring in the forest above Nakusp, a lakeside resort on Upper Arrow Lake and a roadside stop on Highway 1. One far-north natural pool makes the list as a bucket-list drive.

Each entry has the latest posted hours, adult prices where the operator publishes them, booking rules and, where known, who owns the place. Two come with warnings: Canyon Hot Springs is done for the year, and Harrison’s public pool, the closest to Vancouver, was last reported closed. Where official sources disagree with each other, you’ll see that too.

Adult single-entry price at B.C. drive-up hot springs (CAD, before tax)
Adult single-entry prices before tax: Liard’s park day-use fee is lowest, and Radium needs a park pass on top.

9. Canyon Hot Springs (Albert Canyon, closed until 2027)

Historic railway station with water tower in forested mountain valley
Historic railway station with water tower in forested mountain valley

Where: Trans-Canada Hwy 1, 35 km east of Revelstoke

When: Closed; 2026 season was May 15 to Sept 19; 2027 dates aren’t posted yet

Cost: 2026 rates: adult $18.50 single swim or $29.50 day pass; junior (14 and under) and senior (60+) $16.50 or $25.50; family (2 adults, 2 juniors) $54.50 or $78.50; under 4 free

Getting there: Trans-Canada Hwy, 35 km east of Revelstoke toward Rogers Pass

Water from a natural spring is piped more than three kilometres down the valley to a 15,000-gallon hot pool at 40°C and a 60,000-gallon swimming pool at 32°C. The resort says Canadian Pacific Railway workers first found the springs around the turn of the century. The resort itself dates to the 1970s.

The 2026 season ran May 15 to September 19, 9 am to 7 pm, and the resort is closed now. 2027 dates aren’t posted yet. In season you don’t need a reservation or a stay, but resort guests get priority when it’s busy. Watch the official hot springs page for next year’s dates.

Save it for a summer trip toward Rogers Pass. This time of year, Crazy Creek on the other side of Revelstoke is the year-round option.

8. Harrison Hot Springs (Fraser Valley)

Mountains reflected in lagoon at Harrison Lake's south shore
Mountains reflected in lagoon at Harrison Lake’s south shore

Where: Village of Harrison Hot Springs, south end of Harrison Lake

When: Public pool status unconfirmed, last reported closed April 2026; call 604-796-2244 ext. 5; spa day pool access 10 am to 4 pm

Cost: Resort pools for spa day guests: $75 plus GST per person, on top of a treatment

Getting there: About 90 minutes from Vancouver: Hwy 1 east to Exit 135, or Hwy 7

The closest to Vancouver, and the one to check most carefully. The area has two springs: potash at 40°C and sulphur at 62°C. Water is pumped from one of them, cooled and sent to both the public mineral pool, kept at 38°C, and the resort pools. There’s no natural outdoor hot spring open to the public in the village. Tourism Harrison asks people to stay out of the pooled water beside the source building.

The public pool is owned and run by Harrison Hot Springs Resort. A local newspaper reported in April 2026 that it was temporarily closed for renovations until further notice. That’s the last report found. Tourism Harrison says to call 604-796-2244 ext. 5 for hours.

The resort’s five pools are for registered guests and spa day guests only. Day guests book a spa treatment and pay an extra pool fee, which gives access from 10 am to 4 pm.

Tourism Harrison puts it at 90 minutes east of Vancouver: Highway 1 east past Chilliwack to Exit 135, then follow the signs. The slower option is Highway 7 along the north side of the Fraser. Call before you leave.

7. Liard River Hot Springs Provincial Park (Alaska Highway)

Liard River Hot Springs Provincial Park (Alaska Highway)

Where: Alaska Highway, far northern B.C.

When: Pool 7 am to 10:30 pm daily, no admission after 10 pm

Cost: Day-use May 1 to Thanksgiving: adult $5, child $3, family $10; annual pass $10 adult, $20 family

Getting there: Multi-day drive up the Alaska Highway; about 700 m boardwalk to the pool

This is the outlier, and the one natural pool on the list you can soak in. The Alpha pool runs from 42°C to 52°C, with a shallow end for children and benches in the water. You reach it on a boardwalk across a warm-water swamp and boreal forest. BC Parks says to watch for moose feeding in the swamps.

It’s not strictly drive-right-up. The pool is about 700 m from the parking area, and the springs themselves can only be reached by stairs. There’s a change house and a composting toilet.

Pool hours are 7 am to 10:30 pm daily, with no admission after 10 pm. BC Parks charges a day-use fee from May 1 to Thanksgiving, payable in cash, credit or debit at the park. The campground runs with limited services and winter fees in the off-season; check BC Parks for current dates.

From Vancouver it’s a multi-day drive up the Alaska Highway. This is bear and moose country, so stay on the boardwalk. In winter, take the highway only in a properly equipped vehicle.

6. Crazy Creek Hot Pools Resort (Malakwa)

Where: 6162 Trans-Canada Hwy, Malakwa, between Sicamous and Revelstoke

When: Daily, 9 am to 10 pm; adults only 9 pm to 10 pm

Cost: Single dip adult $19.95, senior $16.95, 16 and under $14.95, family $54.95; day pass adult $29.95; 2 and under free; taxes extra

Getting there: Right on Hwy 1; about 5 hours from Vancouver per the resort

The operator is upfront: this is not quite a natural hot spring. The pools are filled with geothermally heated water. There are three outdoor hot pools, kept at 40°C and 37°C year-round plus a 32°C pool from May to October, and an 8°C cold plunge.

The property was once a small sawmill town called Taft, and the resort says its ruins still stand in the forest. It sits right on Highway 1, which makes it the easiest stop on this list if you’re already driving the Trans-Canada.

It’s open every day of the year, 9 am to 10 pm, with the last hour adults only. No booking is needed, but passes are sold on site only. A single dip lets you stay as long as you like with no re-entry. The day pass adds re-entry. Towels are for rent in the pool building, along with showers and lockers.

The resort puts it 30 minutes west of Revelstoke, about 20 minutes east of Sicamous and about 5 hours from Vancouver. The neighbouring Crazy Creek Waterfall and suspension bridge is a separate business, closed for 2026 and reopening spring 2027.

5. Halcyon Hot Springs (Upper Arrow Lake)

Snowy mountain across Upper Arrow Lake from steamy terrace
Snowy mountain across Upper Arrow Lake from steamy terrace

Where: Hwy 23 North on Upper Arrow Lake, north of Nakusp

When: Daily 9 am to 10 pm; adults only 9 pm to 10 pm; seasonal mineral pool opens May 15

Cost: Single day or evening $25; family $55; 4 and under free with a parent (Thursdays: $18 single / $48 family)

Getting there: Hwy 23 north of Nakusp, or from Revelstoke via the free Shelter Bay to Galena Bay ferry

A lakeside resort on Highway 23 with hot and warm mineral pools and a cold plunge open to drop-in visitors. A seasonal mineral swimming pool opens May 15. The resort lists sodium, magnesium, calcium, strontium and lithium among the minerals in its water.

Pools are open 9 am to 10 pm daily. Day drop-in runs 9 am to 5 pm and evening drop-in 5 pm to 10 pm, with the last hour adults only. Drop-in spots are limited, and passes are sold at Guest Services. If you book at least $100 per person in spa treatments, hot springs access is included.

Pricing on the official page needs a careful read. It shows $25 single and $55 family (1 or 2 adults with 1 or 2 kids aged 5 to 12, 4 and under free with a parent). Those are the Friday-to-Wednesday rates. On Thursdays the same page lists $18 single and $48 family.

From Revelstoke, Highway 23 south crosses the free Upper Arrow Lake ferry from Shelter Bay to Galena Bay, 49 km south of Revelstoke. The crossing is 20 minutes. Nakusp Hot Springs is in the same stretch of Highway 23, so you can do both in a day.

4. Fairmont Hot Springs Resort public pools (Columbia Valley)

Fairmont Hot Springs Resort sign beside highway below forested mountain
Fairmont Hot Springs Resort sign beside highway below forested mountain

Where: Fairmont Hot Springs, Columbia Valley, off Hwy 93/95

When: Daily, 8 am to 9 pm per the official page; late-night swim 7:30 pm to 9 pm

Cost: Adult $25; youth (5 to 17) and senior $22; 5 and under free; family $77; late-night $8; taxes extra

Getting there: Fairmont Resort Rd off Hwy 93/95

Day visitors get in by buying a day membership. Kootenay Rockies Tourism says more than 1.2 million gallons of mineral water flow through the pools every day. The hot pools sit at about 39°C and the large swimming pool at 32°C, so you can switch between a soak and a swim.

The history is very B.C. resort. In the early 1900s John Hankey bought the ranch and renamed it the Fairmont Hotel Springs. A room cost $2 a day and included the springs.

The official page lists the public pools open daily 8 am to 9 pm. The tourism partner page says 7 am. Confirm before an early start. The pools also close for about a week of maintenance each spring and fall, which is another reason to check this time of year.

The cheapest way in is the late-night swim, $8 per person from 7:30 pm to 9 pm. There are no lifeguards on duty, so keep kids within arm’s reach.

3. Nakusp Hot Springs (Kuskanax Valley)

Nakusp Hot Springs (Kuskanax Valley)

Where: Hot Springs Road, about 14 to 15 km northeast of Nakusp

When: Sun to Thu 9:30 am to 8 pm; Fri and Sat 9:30 am to 9 pm; closed Apr 19 to May 7, 2027

Cost: Adult $15 per dip or $22 all day; Winter Wednesday $8.50

Getting there: Paved Hot Springs Road from Nakusp

This one is owned and run by the community, with no reservations and no resort upsell. The Village of Nakusp says 200,000 litres of fresh, filtered water enter each pool every day. There are cedar chalets on site and a creekside campground in summer.

The pools reopened October 23, 2026 after the fall maintenance shutdown. Tile and grout work ran late, so only the small pool opened at first, capped at 25 people. The large pool was scheduled to reopen the afternoon of Monday, October 26, 2026. Check the pool update page if you’re going early in the week.

Hours from October 23 are Sunday to Thursday 9:30 am to 8 pm (last entry 7:30 pm) and Friday and Saturday 9:30 am to 9 pm (last entry 8:30 pm). Spring maintenance closes the pools April 19 to May 7, reopening May 8, 2027.

The value play is Winter Wednesday, $8.50 per swim from November 1 to March 31. To get there, take the paved Hot Springs Road into the forest from Nakusp, about 14 to 15 km depending on which official page you read.

2. Radium Hot Springs (Kootenay National Park)

Highway 93 passing through narrow red-rock Sinclair Canyon
Highway 93 passing through narrow red-rock Sinclair Canyon

Where: Sinclair Canyon, Hwy 93, just outside the Village of Radium Hot Springs

When: Daily, all year; fall hot pool hours Mon to Fri 11:30 am to 9 pm, Sat and Sun 10:30 am to 9 pm

Cost: Adult $19.75; senior and youth (3 to 17) $17.25; under 3 free; plus park pass, adult day pass $12.25, youth free

Getting there: Hwy 93 in Sinclair Canyon, just inside the Kootenay National Park boundary

Parks Canada runs two pools in Sinclair Canyon: a shallow hot soak pool and a deep, cooler swimming pool. The water is unusually odourless and clear, according to Parks Canada. The top minerals are sulphate at 302 mg/l and calcium at 135 mg/l.

The name came in 1915, after McGill University researchers found trace amounts of radon in the water. The springs became part of the new Kootenay National Park in 1922. The modernist Aquacourt opened on May 19, 1951, with more than 1,000 people at the opening. It’s now a Classified Federal Heritage Building, so the building is part of the reason to go.

The facility is open every day of the year, including holidays. Fall hours run October 13, 2026 to May 2027. The hot pool is open Monday to Friday 11:30 am to 9 pm and weekends 10:30 am to 9 pm, last entry 8:30 pm. The cool pool is closed Monday to Thursday, open Friday 6 pm to 9 pm and weekends 10:30 am to 9 pm. If the kids want the swimming pool, plan a weekend.

Entry is first-come, first-served and sold in person at reception only. You can’t buy ahead. You also need a national park pass on top of pool admission. Forgot your suit? Radium rents swimsuits for $9 and towels for $5.

1. Ainsworth Hot Springs Resort (Kootenay Lake)

Ainsworth Hot Springs Resort (Kootenay Lake)

Where: Hwy 31, west shore of Kootenay Lake, between Balfour and Kaslo

When: Year-round; Wed to Sun 10 am to 7:30 pm, Mon 10 am to 3 pm, closed Tue (confirm Monday hours)

Cost: Adult $18; 65+ $17; 13 to 17 $14; 3 to 12 $12; under 3 free; family $50

Getting there: Hwy 31 north of Balfour, via Nelson or the free Kootenay Lake ferry from Kootenay Bay to Balfour

This is the cave. The site has a hot mineral pool, a cold plunge and a cave you wade through. The resort lists the pool at 27,000 gallons, the cave at 18,000 gallons and the cold plunge at 500 gallons. It says the water in the cave changes over six times a day, so you’re soaking in water that keeps moving.

The Ktunaxa have used these spirit waters, nupika wu’u, for healing since time immemorial. In 1882 George Ainsworth of Portland, Oregon, applied to pre-empt the townsite, which was first called Hot Springs Camp after nearby silver, lead and zinc finds. The springs weren’t developed much until the 1920s. Today the resort is owned by the Yaqan Nukiy, the Lower Kootenay Band. It also runs the Ktunaxa Grill and Spirit Water Spa.

It’s open year-round, and the pools are open to the public with no reservations needed. The official pools page lists Wednesday to Sunday 10 am to 7:30 pm (last entry 6 pm), Monday 10 am to 3 pm (last entry 2 pm), and closed Tuesday. The resort’s own pages disagree on Monday closing time, so check with the resort before you drive. Kids under 3 are free, and the age categories run Fry, Smolt and Spawner, which tells you something about the sense of humour here.

In summer you can pair it with a guided tour of Cody Caves, the source of the water. Entry is by tour only, and Cody Cave Tours says its tours suit ages 5 and up. BC Parks says the roughly 10 km forest road is passable for 2WD vehicles with moderate to high clearance only in July and August. Don’t try it in a car in fall or winter.

Hot pool temperatures (operator / park figures)
PlaceTemp
Liard River (Alpha pool, natural)42–52°C
Canyon Hot Springs40°C hot / 32°C swim
Crazy Creek40°C, 37°C, 32°C (May–Oct), 8°C plunge
Fairmont39°C hot / 32°C swim
Harrison public pool38°C
Harrison source springsPotash 40°C / Sulphur 62°C
Source: See per-row sources. Ainsworth, Radium and Halcyon are left out because the official temperature figures weren’t fully visible.
Season and access calendar, fall 2026
PlaceSeasonHours nowBooking
AinsworthYear-roundWed–Sun 10–7:30 (last entry 6); Mon 10–3; closed TueNo reservations
RadiumYear-roundHot pool Mon–Fri 11:30–9, Sat–Sun 10:30–9In person only
FairmontYear-round8 am–9 pmDay membership on site
NakuspYear-round (closed Apr 19–May 7, 2027)Sun–Thu 9:30–8; Fri–Sat 9:30–9No reservations
HalcyonYear-round9 am–10 pmLimited drop-in
Crazy Creek365 days9 am–10 pmNo booking, on-site passes
Liard RiverYear-round7 am–10:30 pmNone
CanyonMay 15–Sept 19, 2026ClosedNone needed in season
Harrison public poolUnconfirmedCall 604-796-2244 ext. 5n/a
Source: Operator and park pages cited in each item.

When to go this fall

  • Open year-round: Ainsworth (closed Tuesdays), Radium, Fairmont, Nakusp, Halcyon, Crazy Creek and Liard.
  • Nakusp reopened October 23 with only the small pool, capped at 25 people. The large pool was due back the afternoon of October 26, 2026.
  • Radium’s cool pool is closed Monday to Thursday until May 2027.
  • Fairmont closes for about a week of maintenance each spring and fall. Check dates before you go.
  • Canyon Hot Springs closed for the season on September 19, 2026. 2027 dates aren’t posted yet.
  • Harrison’s public pool was last reported closed in April 2026. Call first.

Passes and booking

  • Radium: you need a national park pass (adult day pass $12.25, youth free) on top of pool admission. Pool admission is sold in person only.
  • Ainsworth, Nakusp and Crazy Creek need no reservations. Crazy Creek passes are sold on site only.
  • Halcyon drop-in spots are limited, and passes are sold at Guest Services.
  • Harrison’s resort pools need a booked spa treatment plus a pool fee.

Ferries on the hot springs loop

Kootenay Lake and Arrow Lakes inland ferries run year-round and are free. The Kootenay Lake ferry from Kootenay Bay to Balfour is one way to reach Ainsworth from the east.

The Upper Arrow Lake ferry between Shelter Bay and Galena Bay on Highway 23 takes 20 minutes. Sailings leave Shelter Bay from 5 am to midnight. Expect minor delays after refuelling every Wednesday at 8:45 am.

Safety and etiquette

  • Fairmont has no lifeguards on duty. Keep kids close.
  • Liard’s springs can only be reached by stairs. Stay on the boardwalk: the swamp is sensitive habitat, and bears and moose are around.
  • Adults-only hours run 9 pm to 10 pm at Halcyon and Crazy Creek.
  • At Harrison, stay out of the pooled water beside the source building.
  • Cody Caves road is for July and August only, and only in a vehicle with moderate to high clearance.

What to bring

  • Cash or a card. Liard takes cash, credit or debit at the park.
  • A towel and swimsuit. Crazy Creek rents towels, and Radium rents swimsuits ($9) and towels ($5).
  • Warm layers for the walk back to the car in winter.
  • A winter-ready vehicle if you’re heading into the mountains or up the Alaska Highway this time of year.

Getting there from the Lower Mainland

Only two drive times here come from official sources. Harrison is about 90 minutes east of Vancouver, according to Tourism Harrison. Crazy Creek is about 5 hours, according to the resort. For the Kootenay springs, plan on a full day of driving, then let the free inland ferries link them: Nakusp and Halcyon are on Highway 23, and Ainsworth is on Highway 31 on the west shore of Kootenay Lake. Radium and Fairmont are farther east, on Highways 93 and 95.

Family and kids’ pricing compared
Hot springFamily rateWho the family rate coversKids free
Ainsworth$502 adults or seniors + 2 kidsUnder 3
Radium$64.25 or $84.50 (Parks Canada sources differ)Not specified in research; park pass extra for adultsUnder 3 (park pass free for youth)
Fairmont$772 adults + 2 youths5 and under
NakuspNo family rate listedn/a5 and under
Halcyon$55 (a $48 rate is also listed)1 to 2 adults + 1 to 2 kids aged 5 to 124 and under with a parent
Crazy Creek$54.952 adults + 2 kids2 and under
Liard River$10 (May 1 to Thanksgiving)FamilyNot specified
Source: ainsworthhotsprings.com, parks.canada.ca, fairmonthotsprings.com, nakusphotsprings.com, halcyon-hotsprings.com, crazycreekresort.com, bcparks.ca

If you only make one trip, the Kootenays give you the most soaking per tank of gas. Ainsworth has the cave, Nakusp is the community-run spring, and Halcyon has the lake, with free ferries in between. Radium and Fairmont reward the extra hours east. Crazy Creek is the easy Highway 1 stop. Hours and rates at several of these don’t match across official pages, so a quick call before you leave saves a wasted drive.

Get the weekend plan in your inbox. Burrard Bulletin is a free email on what’s actually on from Vancouver to Whistler. Sign up here.

Photo credits

Similar Posts