Guest, Sign inJoin
Oak BayOak Bay, #1 on this list · Photo: rpaterso (CC BY-SA 2.0)
Canada · 2026

Towns with the fewest frosts in Canada

Oak Bay, British Columbia, tops the list at 10 frost days. Second and third places go to Esquimalt (10 frost days) and View Royal (10 frost days). Charlottetown, the median town on the list, is at 159 frost days. Furthest down the list is Iqaluit, at 261 frost days. The list’s top ten all come from one province.

Days a year when the low falls to 0°C or below, 1991–2020 normals at the nearest station How grades work

#1

Oak Bay

British Columbia · 18,626 people
10 frost days Frost days a year

Overall A+·#45 of 2,556

Strongest: health A+, safety A+·lowest: cost of living D−

#2

Esquimalt

British Columbia · 19,512 people
10 frost days Frost days a year

Overall B+·#614 of 2,556

Strongest: walkability A+, health A+·lowest: cost of living D−

#3

View Royal

British Columbia · 12,795 people
10 frost days Frost days a year

Overall B+·#806 of 2,556

Strongest: health A+, jobs & income A·lowest: cost of living D−

The top 100 of 2,562

Ranked by its measure (Frost days a year), best first; each town’s overall grade and national rank sit beside it.

The full ranking →

100 towns

#TownFrost days a yearGrade · national rankWhat drives it
1Oak BayBritish Columbia · 18,626 people10 frost daysA+#45 of 2,556 nationallyStrongest: health A+, safety A+·lowest: cost of living D−
2EsquimaltBritish Columbia · 19,512 people10 frost daysB+#614 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
3View RoyalBritish Columbia · 12,795 people10 frost daysB+#806 of 2,556 nationallyStrongest: health A+, jobs & income A·lowest: cost of living D−
4ColwoodBritish Columbia · 22,794 people10 frost daysB#997 of 2,556 nationallyStrongest: health A+, jobs & income A·lowest: cost of living D−
5MetchosinBritish Columbia · 5,207 people10 frost daysB#1,060 of 2,556 nationallyStrongest: health A, safety A−·lowest: cost of living D−
6LangfordBritish Columbia · 59,664 people10 frost daysB−#1,318 of 2,556 nationallyStrongest: health A+, jobs & income A·lowest: cost of living D−
7VictoriaBritish Columbia · 103,888 people10 frost daysB−#1,507 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
8Juan de Fuca (Part 1)British Columbia · 5,439 people10 frost daysC+#1,724 of 2,556 nationallyStrongest: health A−, schools B+·lowest: cost of living D−
9SookeBritish Columbia · 17,248 people10 frost daysC−#2,281 of 2,556 nationallyStrongest: health A−, walkability B+·lowest: cost of living D−
10North VancouverBritish Columbia · 97,845 people17 frost daysA#98 of 2,556 nationallyStrongest: health A+, walkability A·lowest: cost of living D−
11Bowen IslandBritish Columbia · 4,501 people17 frost daysA#103 of 2,556 nationallyStrongest: schools A+, safety A+·lowest: cost of living D−
12West VancouverBritish Columbia · 47,929 people17 frost daysB+#667 of 2,556 nationallyStrongest: health A+, walkability A·lowest: cost of living D−
13North VancouverBritish Columbia · 66,624 people17 frost daysB+#760 of 2,556 nationallyStrongest: health A+, walkability A+·lowest: cost of living D−
14FairviewBritish Columbia · 33,969 people17 frost daysB+#804 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
15HeightsBritish Columbia · 22,141 people17 frost daysB+#813 of 2,556 nationallyStrongest: walkability A+, schools A+·lowest: cost of living D−
16KitsilanoBritish Columbia · 27,320 people17 frost daysB+#835 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
17BrentwoodBritish Columbia · 22,170 people17 frost daysB+#844 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
18GreektownBritish Columbia · 16,618 people17 frost daysB+#847 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
19Roberts CreekBritish Columbia · 3,779 people17 frost daysB#936 of 2,556 nationallyStrongest: health A+, jobs & income A·lowest: cost of living D−
20BroadviewBritish Columbia · 8,008 people17 frost daysB#961 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
21West Point GreyBritish Columbia · 13,429 people17 frost daysB#981 of 2,556 nationallyStrongest: walkability A+, schools A+·lowest: cost of living D−
22HoldomBritish Columbia · 7,976 people17 frost daysB#998 of 2,556 nationallyStrongest: walkability A+, schools A·lowest: cost of living D−
23Deer LakeBritish Columbia · 8,417 people17 frost daysB#1,025 of 2,556 nationallyStrongest: walkability A, health A·lowest: cost of living D−
24Riley ParkBritish Columbia · 23,682 people17 frost daysB#1,068 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
25Lake CityBritish Columbia · 3,240 people17 frost daysB#1,080 of 2,556 nationallyStrongest: health A, walkability A·lowest: cost of living D
26Mount PleasantBritish Columbia · 37,091 people17 frost daysB#1,090 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
27LochdaleBritish Columbia · 7,463 people17 frost daysB#1,096 of 2,556 nationallyStrongest: walkability A+, schools A+·lowest: cost of living D−
28ShaughnessyBritish Columbia · 8,034 people17 frost daysB#1,107 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D
29MontecitoBritish Columbia · 10,734 people17 frost daysB#1,143 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
30Garden VillageBritish Columbia · 6,492 people17 frost daysB#1,163 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
31South CambieBritish Columbia · 9,846 people17 frost daysB#1,168 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
32Buckingham HeightsBritish Columbia · 8,794 people17 frost daysB−#1,182 of 2,556 nationallyStrongest: walkability A, health A·lowest: cost of living D−
33BainbridgeBritish Columbia · 3,015 people17 frost daysB−#1,192 of 2,556 nationallyStrongest: walkability A, health A·lowest: cost of living D−
34East BurnabyBritish Columbia · 17,233 people17 frost daysB−#1,194 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
35YaletownBritish Columbia · 40,297 people17 frost daysB−#1,202 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
36Little SaigonBritish Columbia · 11,086 people17 frost daysB−#1,216 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
37Royal OakBritish Columbia · 18,364 people17 frost daysB−#1,234 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
38Hastings-SunriseBritish Columbia · 36,072 people17 frost daysB−#1,303 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
39SecheltBritish Columbia · 11,558 people17 frost daysB−#1,315 of 2,556 nationallyStrongest: health A+, jobs & income A−·lowest: cost of living D−
40GibsonsBritish Columbia · 5,090 people17 frost daysB−#1,345 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
41CollingwoodBritish Columbia · 18,399 people17 frost daysB−#1,362 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
42Grandview-WoodlandBritish Columbia · 28,119 people17 frost daysB−#1,376 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
43Electoral Area E, Sunshine CoastBritish Columbia · 4,279 people17 frost daysB−#1,393 of 2,556 nationallyStrongest: health A+, jobs & income A−·lowest: cost of living D−
44Coal HarbourBritish Columbia · 10,407 people17 frost daysB−#1,426 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
45Renfrew-CollingwoodBritish Columbia · 23,392 people17 frost daysB−#1,434 of 2,556 nationallyStrongest: health A+, walkability A+·lowest: cost of living D−
46MetrotownBritish Columbia · 36,594 people17 frost daysB−#1,437 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
47West EndBritish Columbia · 30,785 people17 frost daysB−#1,492 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
48Granville Entertainment DistrictBritish Columbia · 19,125 people17 frost daysB−#1,505 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
49Kensington-Cedar CottageBritish Columbia · 39,668 people17 frost daysC+#1,524 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
50Davie VillageBritish Columbia · 16,833 people17 frost daysC+#1,532 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
51Welcome BeachBritish Columbia · 3,130 people17 frost daysC+#1,567 of 2,556 nationallyStrongest: health A+, schools B+·lowest: cost of living D−
52EdmondsBritish Columbia · 34,805 people17 frost daysC+#1,659 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
53Electoral Area F, Sunshine CoastBritish Columbia · 2,691 people17 frost daysC+#1,675 of 2,556 nationallyStrongest: health A+, walkability B+·lowest: cost of living D−
54KillarneyBritish Columbia · 32,167 people17 frost daysC+#1,734 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
55Burnaby MountainBritish Columbia · 9,248 people17 frost daysC+#1,747 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
56Norquay VillageBritish Columbia · 11,287 people17 frost daysC#1,845 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
57StrathconaBritish Columbia · 13,783 people17 frost daysC#1,896 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
58SaanichBritish Columbia · 126,011 people19 frost daysA#253 of 2,556 nationallyStrongest: health A+, walkability A+·lowest: cost of living D−
59TofinoBritish Columbia · 2,772 people21 frost daysC−#2,293 of 2,556 nationallyStrongest: jobs & income A, walkability A·lowest: cost of living D−
60Southern Gulf IslandsBritish Columbia · 6,691 people25 frost daysA−#360 of 2,556 nationallyStrongest: safety A, health A·lowest: cost of living D
61Prince RupertBritish Columbia · 12,903 people26 frost daysC#2,001 of 2,556 nationallyStrongest: jobs & income A+, walkability A·lowest: safety D
62KentBritish Columbia · 7,093 people35 frost daysC#1,815 of 2,556 nationallyStrongest: walkability A−, schools A−·lowest: cost of living D
63ChilliwackBritish Columbia · 105,520 people35 frost daysC−#2,198 of 2,556 nationallyStrongest: walkability B+, schools B·lowest: cost of living D
64HopeBritish Columbia · 7,183 people35 frost daysD−#2,547 of 2,556 nationallyStrongest: walkability A−, hazard risk B+·lowest: schools D−
65Dunbar-SouthlandsBritish Columbia · 21,117 people40 frost daysB#1,016 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D
66DeltaBritish Columbia · 124,670 people40 frost daysB#1,041 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
67South SlopeBritish Columbia · 8,989 people40 frost daysB#1,138 of 2,556 nationallyStrongest: walkability A, health A·lowest: cost of living D−
68KerrisdaleBritish Columbia · 14,105 people40 frost daysB#1,146 of 2,556 nationallyStrongest: walkability A+, schools A+·lowest: cost of living D−
69LantzvilleBritish Columbia · 4,276 people40 frost daysB−#1,207 of 2,556 nationallyStrongest: jobs & income A, schools A−·lowest: cost of living D−
70Arbutus RidgeBritish Columbia · 15,083 people40 frost daysB−#1,401 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
71OakridgeBritish Columbia · 14,071 people40 frost daysC+#1,545 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
72SunsetBritish Columbia · 37,186 people40 frost daysC+#1,670 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
73MarpoleBritish Columbia · 28,182 people40 frost daysC#1,828 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
74Victoria-FraserviewBritish Columbia · 31,095 people40 frost daysC#1,840 of 2,556 nationallyStrongest: walkability A+, health A+·lowest: cost of living D−
75RichmondBritish Columbia · 239,584 people40 frost daysC#1,877 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
76Electoral Area C, NanaimoBritish Columbia · 3,733 people40 frost daysC−#2,245 of 2,556 nationallyStrongest: jobs & income B, safety B−·lowest: cost of living D
77NanaimoBritish Columbia · 111,845 people40 frost daysD#2,373 of 2,556 nationallyStrongest: walkability A, jobs & income B·lowest: cost of living D−
78Electoral Area H, Cowichan ValleyBritish Columbia · 2,761 people40 frost daysD#2,454 of 2,556 nationallyStrongest: jobs & income B, health B−·lowest: schools D
79Electoral Area B, NanaimoBritish Columbia · 4,702 people40 frost daysD−#2,503 of 2,556 nationallyStrongest: walkability B, safety B−·lowest: cost of living D−
80Electoral Area A, NanaimoBritish Columbia · 7,825 people40 frost daysD−#2,518 of 2,556 nationallyStrongest: jobs & income B, hazard risk B−·lowest: cost of living D−
81TsawwassenBritish Columbia · 2,629 people40 frost daysStrongest: schools A, health A·lowest: jobs & income B−
82Central SaanichBritish Columbia · 18,184 people45 frost daysA#151 of 2,556 nationallyStrongest: jobs & income A+, health A+·lowest: cost of living D−
83Saltspring IslandBritish Columbia · 12,429 people45 frost daysA#230 of 2,556 nationallyStrongest: jobs & income A+, health A+·lowest: cost of living D
84North SaanichBritish Columbia · 12,986 people45 frost daysA−#349 of 2,556 nationallyStrongest: jobs & income A+, health A·lowest: cost of living D
85SidneyBritish Columbia · 13,445 people45 frost daysB+#764 of 2,556 nationallyStrongest: walkability A+, health A·lowest: cost of living D−
86Cobble HillBritish Columbia · 5,074 people45 frost daysB#1,070 of 2,556 nationallyStrongest: schools A+, jobs & income B+·lowest: cost of living D−
87ShawniganBritish Columbia · 9,903 people45 frost daysB#1,135 of 2,556 nationallyStrongest: schools A+, safety B+·lowest: cost of living D
88Electoral Area A, Cowichan ValleyBritish Columbia · 5,156 people45 frost daysB−#1,218 of 2,556 nationallyStrongest: schools A, safety B+·lowest: cost of living D
89HighlandsBritish Columbia · 2,753 people45 frost daysC−#2,035 of 2,556 nationallyStrongest: health A, jobs & income A·lowest: cost of living D
90LadysmithBritish Columbia · 9,926 people45 frost daysD#2,345 of 2,556 nationallyStrongest: walkability A−, health B·lowest: cost of living D
91Cowichan BayBritish Columbia · 3,713 people45 frost daysD#2,359 of 2,556 nationallyStrongest: jobs & income A−, walkability B−·lowest: cost of living D
92North CowichanBritish Columbia · 34,525 people45 frost daysD#2,393 of 2,556 nationallyStrongest: walkability B+, jobs & income B·lowest: cost of living D−
93Electoral Area E, Cowichan ValleyBritish Columbia · 4,482 people45 frost daysD#2,430 of 2,556 nationallyStrongest: jobs & income B+, health B−·lowest: cost of living D
94Electoral Area G, Cowichan ValleyBritish Columbia · 2,597 people45 frost daysD#2,479 of 2,556 nationallyStrongest: walkability B−, health B−·lowest: cost of living D−
95Lake CowichanBritish Columbia · 3,757 people45 frost daysD−#2,532 of 2,556 nationallyStrongest: walkability A, hazard risk B−·lowest: jobs & income D
96DuncanBritish Columbia · 5,745 people45 frost daysD−#2,539 of 2,556 nationallyStrongest: walkability A+, health B·lowest: cost of living D−
97ComoxBritish Columbia · 15,884 people46 frost daysA#228 of 2,556 nationallyStrongest: schools A, walkability A·lowest: cost of living D−
98Electoral Area B (Lazo North), Comox ValleyBritish Columbia · 7,830 people46 frost daysB#1,037 of 2,556 nationallyStrongest: health A−, jobs & income B+·lowest: cost of living D
99Qualicum BeachBritish Columbia · 9,640 people46 frost daysB#1,097 of 2,556 nationallyStrongest: schools A, walkability A−·lowest: cost of living D−
100Electoral Area G, NanaimoBritish Columbia · 8,412 people46 frost daysB#1,103 of 2,556 nationallyStrongest: schools A−, safety A−·lowest: cost of living D
Method

How this list is made

Days a year when the low falls to 0°C or below, 1991–2020 normals at the nearest station. Towns of 2,500 or more in Canada are listed by it, best first; a tie goes to the town with the better overall rank. How grades work

Rankings

More lists across Canada

Province by province

Best places to live, province by province

Photos: Oak Bay, rpaterso (CC BY-SA 2.0) · Esquimalt, The original uploader was IDuke at English Wikipedia . (CC BY-SA 2.5) · View Royal, John Newcomb (CC BY 3.0), via Wikimedia Commons.

Sources: TownRatings grades: our own summary of the data, ranking Canadian towns against each other only, run #73 of 10 November 2026. Under the Statistics Canada Open Licence.

Adapted from Statistics Canada (Census of Population 2021, population estimates 2025, 2021 census boundaries) under the Statistics Canada Open Licence; this does not constitute an endorsement by Statistics Canada. Neighbourhood names in some cities © OpenStreetMap contributors (ODbL).