Water softeners for hard water
Very hard water. Whole-house softeners are the high-ticket fit; salt and test kits support the install.
Drinking Water
Municipal drinking water for Canadian cities: hardness, pH, lead, fluoride, and chlorine graded against Health Canada guidelines, plus where each city draws water and how it is treated.
Every tracked municipality. Sort by grade, hardness, pH, lead, fluoride, chlorine, or source type. Open a city for lab grades, or see where its water comes from (sources, plants, map).
172 of 172 cities
| 1.GuelphONGrade B | B | 460 | Very hard | 7.2 | 0.1 | 0.6 | 0.6 | Groundwater | Outlook |
| 2.KitchenerONGrade B | B | 400 | Very hard | 8.0 | 0.3 | 0.5 | 0.8 | Mixed surface and groundwater | Outlook |
| 3.WaterlooONGrade C | C | 400 | Very hard | 8.2 | 0.7 | 0.7 | 1.2 | Mixed surface and groundwater | Outlook |
| 4.Belleville - Quinte WestONGrade C | C | 279 | Very hard | 7.7 | 0.7 | 0.5 | 1.2 | Surface | Outlook |
| 5.YorktonSKGrade C | C | 279 | Very hard | 7.2 | 0.7 | 0.6 | 1.2 | Groundwater | Outlook |
| 6.SherbrookeQCGrade C | C | 277 | Very hard | 7.5 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 7.VictoriavilleQCGrade C | C | 276 | Very hard | 7.9 | 0.4 | 0.7 | 0.9 | Surface | Outlook |
| 8.HawkesburyONGrade C | C | 271 | Very hard | 7.9 | 0.7 | 0.7 | 1.2 | Surface | Outlook |
| 9.IngersollONGrade C | C | 271 | Very hard | 7.4 | 0.7 | 0.5 | 1.2 | Groundwater | Outlook |
| 10.MataneQCGrade C | C | 271 | Very hard | 6.9 | 0.7 | 0.6 | 1.2 | Groundwater | Outlook |
| 11.SydneyNSGrade C | C | 270 | Very hard | 6.8 | 0.6 | 0.5 | 1.1 | Groundwater | Outlook |
| 12.BrantfordONGrade B | B | 266 | Very hard | 7.4 | 0.2 | 0.5 | 0.7 | Surface | Outlook |
| 13.Prince AlbertSKGrade B | B | 265 | Very hard | 7.8 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
| 14.Sainte-MarieQCGrade B | B | 262 | Very hard | 8.0 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 15.TerrebonneQCGrade B | B | 259 | Very hard | 7.7 | 0.3 | 0.5 | 0.8 | Surface | Outlook |
| 16.BrockvilleONGrade B | B | 257 | Very hard | 7.0 | 0.1 | 0.7 | 0.6 | Surface | Outlook |
| 17.CollingwoodONGrade B | B | 255 | Very hard | 6.8 | 0.7 | 0.5 | 1.2 | Surface | Outlook |
| 18.Port AlberniBCGrade B | B | 253 | Very hard | 8.1 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 19.LavalQCGrade B | B | 253 | Very hard | 7.1 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 20.EdmundstonNBGrade B | B | 252 | Very hard | 7.0 | 0.4 | 0.7 | 0.9 | Groundwater | Outlook |
| 21.PeterboroughONGrade B | B | 252 | Very hard | 8.0 | 0.4 | 0.5 | 0.9 | Surface | Outlook |
| 22.Port HopeONGrade B | B | 252 | Very hard | 7.5 | 0.4 | 0.6 | 0.9 | Surface | Outlook |
| 23.Quebec CityQCGrade B | B | 250 | Very hard | 7.3 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 24.Val-d'OrQCGrade B | B | 249 | Very hard | 7.7 | 0.1 | 0.5 | 0.6 | Surface | Outlook |
| 25.CourtenayBCGrade B | B | 246 | Very hard | 6.9 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 26.Wasaga BeachONGrade B | B | 244 | Very hard | 8.2 | 0.4 | 0.7 | 0.9 | Surface | Outlook |
| 27.New GlasgowNSGrade B | B | 241 | Very hard | 7.4 | 0.1 | 0.5 | 0.6 | Surface | Outlook |
| 28.Swift CurrentSKGrade C | C | 238 | Very hard | 7.1 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 29.StratfordONGrade C | C | 235 | Very hard | 7.3 | 0.3 | 0.7 | 0.8 | Groundwater | Outlook |
| 30.BrooksABGrade C | C | 234 | Very hard | 8.2 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 31.Fort St. JohnBCGrade C | C | 233 | Very hard | 8.1 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
| 32.CamroseABGrade C | C | 232 | Very hard | 7.0 | 0 | 0.7 | 0.5 | Surface | Outlook |
| 33.GanderNLGrade C | C | 230 | Very hard | 7.8 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 34.Centre WellingtonONGrade B | B | 229 | Very hard | 8.2 | 0.5 | 0.7 | 1 | Groundwater | Outlook |
| 35.Chatham-KentONGrade B | B | 229 | Very hard | 8.2 | 0.5 | 0.7 | 1 | Mixed surface and groundwater | Outlook |
| 36.MarkhamONGrade B | B | 229 | Very hard | 7.2 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 37.SummersidePEGrade B | B | 220 | Very hard | 6.8 | 0.4 | 0.5 | 0.9 | Groundwater | Outlook |
| 38.Trois-RivieresQCGrade B | B | 216 | Very hard | 7.4 | 0 | 0.5 | 0.5 | Mixed surface and groundwater | Outlook |
| 39.LacombeABGrade B | B | 215 | Very hard | 7.3 | 0.7 | 0.7 | 1.2 | Surface | Outlook |
| 40.Dawson CreekBCGrade B | B | 215 | Very hard | 7.8 | 0.7 | 0.6 | 1.2 | Surface | Outlook |
| 41.Kawartha LakesONGrade B | B | 214 | Very hard | 8.2 | 0.6 | 0.7 | 1.1 | Mixed surface and groundwater | Outlook |
| 42.BurlingtonONGrade B | B | 210 | Very hard | 7.3 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 43.Red DeerABGrade B | B | 209 | Very hard | 7.3 | 0.4 | 0.7 | 0.9 | Surface | Outlook |
| 44.Owen SoundONGrade B | B | 209 | Very hard | 7.7 | 0.1 | 0.5 | 0.6 | Surface | Outlook |
| 45.Sept-ÎlesQCGrade B | B | 209 | Very hard | 7.2 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
| 46.PentictonBCGrade B | B | 208 | Very hard | 7.6 | 0 | 0.7 | 0.5 | Surface | Outlook |
| 47.BathurstNBGrade B | B | 208 | Very hard | 8.1 | 0 | 0.6 | 0.5 | Surface | Outlook |
| 48.EssaONGrade B | B | 208 | Very hard | 7.1 | 0 | 0.5 | 0.5 | Mixed surface and groundwater | Outlook |
| 49.ReginaSKGrade B | B | 208 | Very hard | 7.8 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 50.Sault Ste. MarieONGrade B | B | 207 | Very hard | 7.0 | 0.7 | 0.7 | 1.2 | Mixed surface and groundwater | Outlook |
| 51.Saint-GeorgesQCGrade B | B | 207 | Very hard | 8.0 | 0.7 | 0.5 | 1.2 | Surface | Outlook |
| 52.MiramichiNBGrade B | B | 204 | Very hard | 7.7 | 0.4 | 0.5 | 0.9 | Surface | Outlook |
| 53.GatineauQCGrade B | B | 203 | Very hard | 7.6 | 0.3 | 0.7 | 0.8 | Surface | Outlook |
| 54.Medicine HatABGrade B | B | 200 | Very hard | 7.9 | 0.6 | 0.7 | 1.1 | Surface | Outlook |
| 55.GranbyQCGrade B | B | 200 | Very hard | 7.8 | 0 | 0.6 | 0.5 | Surface | Outlook |
| 56.SaskatoonSKGrade B | B | 196 | Very hard | 8.2 | 0 | 0.7 | 0.5 | Surface | Outlook |
| 57.Sainte-Agathe-des-MontsQCGrade C | C | 195 | Very hard | 6.8 | 0.3 | 0.5 | 0.8 | Surface | Outlook |
| 58.SaguenayQCGrade C | C | 194 | Very hard | 8.2 | 0.2 | 0.7 | 0.7 | Mixed surface and groundwater | Outlook |
| 59.OkotoksABGrade C | C | 192 | Very hard | 8.0 | 0 | 0.5 | 0.5 | Groundwater | Outlook |
| 60.CalgaryABGrade C | C | 191 | Very hard | 7.7 | 0.7 | 0.6 | 1.2 | Surface | Outlook |
| 61.TruroNSGrade C | C | 190 | Very hard | 6.8 | 0.6 | 0.5 | 1.1 | Groundwater | Outlook |
| 62.Grand Falls-WindsorNLGrade B | B | 189 | Very hard | 7.2 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 63.Baie-ComeauQCGrade B | B | 189 | Very hard | 8.2 | 0.5 | 0.7 | 1 | Surface | Outlook |
| 64.JolietteQCGrade B | B | 189 | Very hard | 7.2 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 65.Moose JawSKGrade B | B | 187 | Very hard | 7.5 | 0.3 | 0.6 | 0.8 | Surface | Outlook |
| 66.Saint JohnNBGrade B | B | 186 | Very hard | 7.4 | 0.2 | 0.5 | 0.7 | Mixed surface and groundwater | Outlook |
| 67.SurreyBCGrade B | B | 184 | Very hard | 7.7 | 0 | 0.5 | 0.5 | Surface | Outlook |
| 68.St. CatharinesONGrade B | B | 182 | Very hard | 8.0 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 69.DuncanBCGrade B | B | 181 | Very hard | 6.9 | 0.5 | 0.6 | 1 | Groundwater | Outlook |
| 70.BramptonONGrade B | B | 181 | Very hard | 6.9 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 71.LongueuilQCGrade B | B | 181 | Very hard | 7.9 | 0.5 | 0.7 | 1 | Surface | Outlook |
| 72.BurnabyBCGrade B | B | 179 | Hard | 7.7 | 0.3 | 0.5 | 0.8 | Surface | Outlook |
| 73.QuesnelBCGrade B | B | 179 | Hard | 7.7 | 0.3 | 0.5 | 0.8 | Groundwater | Outlook |
| 74.Dolbeau-MistassiniQCGrade B | B | 178 | Hard | 7.1 | 0.2 | 0.5 | 0.7 | Surface | Outlook |
| 75.Thetford MinesQCGrade B | B | 178 | Hard | 7.1 | 0.2 | 0.5 | 0.7 | Mixed surface and groundwater | Outlook |
| 76.EdmontonABGrade A | A | 177 | Hard | 7.9 | 0 | 0.6 | 0.5 | Surface | Outlook |
| 77.Sylvan LakeABGrade B | B | 177 | Hard | 7.0 | 0.1 | 0.7 | 0.6 | Groundwater | Outlook |
| 78.MidlandONGrade B | B | 177 | Hard | 8.0 | 0.1 | 0.5 | 0.6 | Surface | Outlook |
| 79.WinklerMBGrade B | B | 176 | Hard | 6.9 | 0 | 0.6 | 0.5 | Groundwater | Outlook |
| 80.KentvilleNSGrade B | B | 176 | Hard | 7.9 | 0 | 0.7 | 0.5 | Groundwater | Outlook |
| 81.MississaugaONGrade B | B | 175 | Hard | 7.8 | 0.7 | 0.6 | 1.2 | Surface | Outlook |
| 82.Spruce GroveABGrade B | B | 174 | Hard | 7.7 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 83.YellowknifeNTGrade B | B | 174 | Hard | 7.7 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 84.North BattlefordSKGrade B | B | 174 | Hard | 7.2 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 85.DrummondvilleQCGrade B | B | 173 | Hard | 7.6 | 0.5 | 0.7 | 1 | Surface | Outlook |
| 86.SteinbachMBGrade B | B | 171 | Hard | 6.9 | 0.3 | 0.6 | 0.8 | Groundwater | Outlook |
| 87.WeyburnSKGrade B | B | 171 | Hard | 7.4 | 0.3 | 0.5 | 0.8 | Surface | Outlook |
| 88.SudburyONGrade A | A | 168 | Hard | 7.1 | 0 | 0.5 | 0.5 | Mixed surface and groundwater | Outlook |
| 89.AlmaQCGrade A | A | 168 | Hard | 8.1 | 0 | 0.6 | 0.5 | Surface | Outlook |
| 90.NelsonBCGrade A | A | 167 | Hard | 7.0 | 0.7 | 0.7 | 1.2 | Surface | Outlook |
| 91.CharlottetownPEGrade B | B | 167 | Hard | 7.8 | 0.4 | 0.6 | 0.9 | Groundwater | Outlook |
| 92.High RiverABGrade A | A | 165 | Hard | 7.8 | 0.5 | 0.6 | 1 | Groundwater | Outlook |
| 93.StrathmoreABGrade A | A | 165 | Hard | 6.8 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 94.Rouyn-NorandaQCGrade A | A | 164 | Hard | 8.2 | 0.4 | 0.7 | 0.9 | Surface | Outlook |
| 95.Fort McMurrayABGrade A | A | 162 | Hard | 7.0 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 96.SarniaONGrade A | A | 162 | Hard | 8.0 | 0.2 | 0.5 | 0.7 | Surface | Outlook |
| 97.CambridgeONGrade C | C | 156 | Hard | 7.4 | 0.4 | 0.5 | 0.9 | Mixed surface and groundwater | Outlook |
| 98.VaughanONGrade C | C | 156 | Hard | 6.9 | 0.4 | 0.6 | 0.9 | Surface | Outlook |
| 99.WoodstockONGrade C | C | 155 | Hard | 7.3 | 0.3 | 0.7 | 0.8 | Groundwater | Outlook |
| 100.Salaberry-de-ValleyfieldQCGrade C | C | 154 | Hard | 7.2 | 0.2 | 0.6 | 0.7 | Surface | Outlook |
| 101.Prince RupertBCGrade C | C | 152 | Hard | 7.5 | 0 | 0.6 | 0.5 | Surface | Outlook |
| 102.LethbridgeABGrade B | B | 151 | Hard | 7.9 | 0 | 0.7 | 0.5 | Surface | Outlook |
| 103.BrandonMBGrade C | C | 150 | Hard | 6.9 | 0.4 | 0.6 | 0.9 | Surface | Outlook |
| 104.WhitehorseYTGrade A | A | 149 | Hard | 7.7 | 0.4 | 0.5 | 0.9 | Groundwater | Outlook |
| 105.VernonBCGrade B | B | 148 | Hard | 7.6 | 0.4 | 0.7 | 0.9 | Surface | Outlook |
| 106.EstevanSKGrade B | B | 143 | Hard | 7.1 | 0.7 | 0.5 | 1.2 | Surface | Outlook |
| 107.Prince GeorgeBCGrade B | B | 141 | Hard | 7.9 | 0.5 | 0.7 | 1 | Groundwater | Outlook |
| 108.SquamishBCGrade B | B | 139 | Hard | 7.7 | 0.3 | 0.5 | 0.8 | Groundwater | Outlook |
| 109.AbbotsfordBCGrade B | B | 138 | Hard | 7.6 | 0.2 | 0.7 | 0.7 | Mixed surface and groundwater | Outlook |
| 110.KenoraONGrade B | B | 138 | Hard | 7.1 | 0.2 | 0.5 | 0.7 | Surface | Outlook |
| 111.Portage la PrairieMBGrade B | B | 137 | Hard | 8.0 | 0.1 | 0.5 | 0.6 | Surface | Outlook |
| 112.AmosQCGrade B | B | 137 | Hard | 7.5 | 0.1 | 0.6 | 0.6 | Groundwater | Outlook |
| 113.KamloopsBCGrade B | B | 134 | Hard | 7.2 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 114.Powell RiverBCGrade B | B | 134 | Hard | 7.2 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 115.RimouskiQCGrade B | B | 134 | Hard | 7.7 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 116.PembrokeONGrade B | B | 133 | Hard | 7.1 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 117.TimminsONGrade B | B | 133 | Hard | 7.1 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 118.LachuteQCGrade B | B | 133 | Hard | 7.1 | 0.5 | 0.5 | 1 | Groundwater | Outlook |
| 119.CornwallONGrade B | B | 130 | Hard | 7.3 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 120.BarrieONGrade A | A | 129 | Hard | 7.2 | 0.1 | 0.6 | 0.6 | Mixed surface and groundwater | Outlook |
| 121.NanaimoBCGrade A | A | 127 | Hard | 8.0 | 0.7 | 0.5 | 1.2 | Surface | Outlook |
| 122.Campbell RiverBCGrade A | A | 125 | Hard | 7.3 | 0.5 | 0.7 | 1 | Surface | Outlook |
| 123.TorontoONGrade C | C | 121 | Hard | 7.5 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 124.KelownaBCGrade A | A | 120 | Hard | 6.9 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
| 125.TrailBCGrade A | A | 120 | Hard | 6.8 | 0 | 0.5 | 0.5 | Mixed surface and groundwater | Outlook |
| 126.Corner BrookNLGrade A | A | 120 | Hard | 7.3 | 0 | 0.7 | 0.5 | Surface | Outlook |
| 127.HamiltonONGrade B | B | 120 | Hard | 7.7 | 0 | 0.5 | 0.5 | Mixed surface and groundwater | Outlook |
| 128.LevisQCGrade A | A | 120 | Hard | 6.8 | 0 | 0.5 | 0.5 | Surface | Outlook |
| 129.MontrealQCGrade B | B | 120 | Hard | 7.0 | 0.1 | 0.7 | 0.6 | Surface | Outlook |
| 130.CanmoreABGrade C | C | 119 | Moderate | 7.7 | 0.7 | 0.5 | 1.2 | Mixed surface and groundwater | Outlook |
| 131.IqaluitNUGrade C | C | 119 | Moderate | 7.2 | 0.7 | 0.6 | 1.2 | Surface | Outlook |
| 132.LondonONGrade B | B | 119 | Moderate | 7.3 | 0.4 | 0.7 | 0.9 | Surface | Outlook |
| 133.PetawawaONGrade C | C | 118 | Moderate | 8.1 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 134.LeducABGrade C | C | 117 | Moderate | 7.5 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 135.NorfolkONGrade C | C | 115 | Moderate | 7.3 | 0.3 | 0.7 | 0.8 | Mixed surface and groundwater | Outlook |
| 136.KingstonONGrade A | A | 114 | Moderate | 6.8 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 137.WetaskiwinABGrade C | C | 112 | Moderate | 7.0 | 0 | 0.7 | 0.5 | Surface | Outlook |
| 138.ThompsonMBGrade C | C | 110 | Moderate | 7.8 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 139.WindsorONGrade C | C | 110 | Moderate | 7.8 | 0.6 | 0.6 | 1.1 | Surface | Outlook |
| 140.TerraceBCGrade B | B | 108 | Moderate | 8.1 | 0.4 | 0.6 | 0.9 | Groundwater | Outlook |
| 141.FrederictonNBGrade A | A | 108 | Moderate | 7.8 | 0 | 0.6 | 0.5 | Groundwater | Outlook |
| 142.ShawiniganQCGrade B | B | 108 | Moderate | 7.1 | 0.4 | 0.5 | 0.9 | Surface | Outlook |
| 143.AirdrieABGrade B | B | 106 | Moderate | 7.4 | 0.2 | 0.5 | 0.7 | Surface | Outlook |
| 144.CampbelltonNBGrade B | B | 106 | Moderate | 7.9 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 145.OrilliaONGrade B | B | 106 | Moderate | 6.9 | 0.2 | 0.6 | 0.7 | Surface | Outlook |
| 146.Elliot LakeONGrade B | B | 105 | Moderate | 7.8 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
| 147.Salmon ArmBCGrade B | B | 103 | Moderate | 8.1 | 0.7 | 0.6 | 1.2 | Surface | Outlook |
| 148.LloydminsterSKGrade B | B | 103 | Moderate | 7.6 | 0.7 | 0.7 | 1.2 | Surface | Outlook |
| 149.Grande PrairieABGrade B | B | 102 | Moderate | 8.0 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 150.Rivière-du-LoupQCGrade B | B | 100 | Moderate | 6.8 | 0.4 | 0.5 | 0.9 | Mixed surface and groundwater | Outlook |
| 151.OakvilleONGrade B | B | 99 | Moderate | 8.2 | 0.3 | 0.7 | 0.8 | Surface | Outlook |
| 152.RichmondBCGrade B | B | 98 | Moderate | 8.1 | 0.2 | 0.6 | 0.7 | Surface | Outlook |
| 153.ChilliwackBCGrade B | B | 97 | Moderate | 7.0 | 0.1 | 0.7 | 0.6 | Groundwater | Outlook |
| 154.CowansvilleQCGrade B | B | 96 | Moderate | 7.4 | 0 | 0.5 | 0.5 | Surface | Outlook |
| 155.Saint-HyacintheQCGrade B | B | 94 | Moderate | 8.2 | 0.6 | 0.7 | 1.1 | Surface | Outlook |
| 156.OshawaONGrade B | B | 93 | Moderate | 7.6 | 0.5 | 0.7 | 1 | Surface | Outlook |
| 157.CobourgONGrade B | B | 91 | Moderate | 7.9 | 0.3 | 0.7 | 0.8 | Surface | Outlook |
| 158.Williams LakeBCGrade B | B | 90 | Moderate | 6.8 | 0.2 | 0.5 | 0.7 | Groundwater | Outlook |
| 159.North BayONGrade B | B | 90 | Moderate | 7.3 | 0.2 | 0.7 | 0.7 | Surface | Outlook |
| 160.CranbrookBCGrade A | A | 89 | Moderate | 7.2 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
| 161.Sorel-TracyQCGrade A | A | 86 | Moderate | 7.4 | 0.6 | 0.5 | 1.1 | Surface | Outlook |
| 162.LadysmithBCGrade A | A | 85 | Moderate | 7.8 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 163.ParksvilleBCGrade A | A | 83 | Moderate | 8.1 | 0.3 | 0.6 | 0.8 | Mixed surface and groundwater | Outlook |
| 164.WinnipegMBGrade C | C | 81 | Moderate | 7.9 | 0.7 | 0.7 | 1.2 | Surface | Outlook |
| 165.TillsonburgONGrade A | A | 81 | Moderate | 6.9 | 0.1 | 0.6 | 0.6 | Groundwater | Outlook |
| 166.Thunder BayONGrade C | C | 42 | Soft | 7.5 | 0.5 | 0.6 | 1 | Surface | Outlook |
| 167.St. John'sNLGrade B | B | 25 | Soft | 6.9 | 0.2 | 0.6 | 0.7 | Surface | Outlook |
| 168.MonctonNBGrade C | C | 24 | Soft | 8.0 | 0.5 | 0.5 | 1 | Surface | Outlook |
| 169.VancouverBCGrade C | C | 22 | Soft | 7.6 | 0.1 | 0.7 | 0.6 | Surface | Outlook |
| 170.OttawaONGrade C | C | 21 | Soft | 7.6 | 0 | 0.5 | 0.5 | Surface | Outlook |
| 171.HalifaxNSGrade B | B | 20 | Soft | 7.6 | 0.5 | 0.5 | 1 | Mixed surface and groundwater | Outlook |
| 172.VictoriaBCGrade B | B | 17 | Soft | 7.6 | 0.1 | 0.6 | 0.6 | Surface | Outlook |
Coverage
Hardness and chemistry from municipal reports, with source waters, treatment plants, and distribution notes on every city page.
Comprehensive supply and treatment research sits alongside the graded chemistry: each city page names how the system draws water, which plants treat it, and how distribution is described in utility publications. Research method · Data sources.
Very hard water. Whole-house softeners are the high-ticket fit; salt and test kits support the install.
Best for hardness ≥ 180 mg/L
As an Amazon Associate, OpenStats earns from qualifying purchases.
Pitcher and under-sink filters, plus hardness strips and TDS meters for tap checks.
Popular everyday tap filter
Recurring purchase
Higher capacity drinking water
As an Amazon Associate, OpenStats earns from qualifying purchases.
Softener guide · Filter guide · Test kits · Hardness guide
Source water
Every city page states whether the municipal system draws surface water, groundwater, or a mix, with named source waters when utilities publish them.
Rivers, lakes, and reservoirs. Treatment usually includes coagulation, filtration, and disinfection before distribution.
Wellfields and aquifers. Often harder mineral content; some systems are GUDI (groundwater under the direct influence of surface water).
Utilities that blend lake or river water with wells, or that switch seasonally between sources.
Every city page names source waters where utilities publish them, with links into municipal reports. How to read supply notes.
Treatment
City pages list treatment plants and distribution notes drawn from utility publications.
Municipal systems move water from the source through a treatment plant (or plants), into transmission mains and reservoirs, then into neighbourhood distribution. Plant names and notes on each city page come from the same cited materials as the supply type, not from guessed process flowsheets.
Typical steps include screening or aeration, coagulation and settling where needed, filtration, and disinfection (often free chlorine). Corrosion control and fluoride adjustment appear where the utility practices them. Open a city profile for the plants that serve that municipality.
From source to sink
How drinking water reaches your tap
Reading the numbers
Hardness describes dissolved minerals. Lead is assessed against a Health Canada maximum.
Health Canada does not set a maximum acceptable concentration for hardness. Classes on city pages follow common treatment convention: soft under 60, moderate 60 to 120, hard 120 to 180, very hard above 180. Harder water often means more scale in heaters and less soap lather; it is not a safety score on its own.
Example class for a 200 mg/L reading: Very hard. Full hardness primer
City pages compare lead to Health Canada's maximum acceptable concentration of 5 μg/L. Lead at the tap can differ from the plant outlet when older service lines or premise plumbing contribute. A municipal average is a community signal, not a measurement of your kitchen tap.
Letter grades also weigh pH, fluoride, and free chlorine against guideline ranges. Active advisories override routine parameter reading for immediate safety decisions; see boil water advisories.
Confidence
Every city page carries a tier badge so you can see whether the hardness and chemistry figures come from a direct municipal report or a regional estimate.
Parameters taken from that city's or utility's published water quality report. These pages are indexable and preferred for YMYL comparisons.
Best available figure until a direct municipal report is ingested. Pages stay labeled and are not promoted as verified plant lab results. Supply profiles may still name sources and plants from separate research.
Supply-profile research confidence across the atlas: 130 high, 42 medium, 0 low. Details on methodology.
Reading the scale
Letter grades from Health Canada guideline compliance, with hardness and lead compared to provincial averages.
Water quality grade
Good
Graded against Health Canada drinking water guidelines
Sample reading from Airdrie, AB. Individual city pages show full parameter tables, supply notes, and provincial comparisons.
City supply profiles
Each city page combines the latest graded parameters with supply type, named source waters where published, treatment plant names, and cited utility links. Start from a province list or jump into a supply example above.
19 municipalities with water quality and supply profiles
31 municipalities with water quality and supply profiles
6 municipalities with water quality and supply profiles
7 municipalities with water quality and supply profiles
Browse by region
Drinking water quality and supply profiles for every tracked municipality
Featured cities
Highest measured hardness among tracked municipalities with verified or regional estimates
ON · 460 mg/L hardness
Explore →ON · 400 mg/L hardness
Explore →ON · 400 mg/L hardness
Explore →ON · 279 mg/L hardness
Explore →SK · 279 mg/L hardness
Explore →QC · 277 mg/L hardness
Explore →QC · 276 mg/L hardness
Explore →ON · 271 mg/L hardness
Explore →Explore drinking water quality and supply for Canadian cities: hardness, lead, treatment plants, and source type on every page.
Browse all cities