Drinking Water
Ontario water softeners
Hardness from municipal reports across the province.
As an Amazon Associate, OpenStats earns from qualifying purchases.
OpenStats lists 123 Ontario municipalities with hardness readings from utility reports or regional estimates. The table below links every tracked city in ON and shows the grain class we match from municipal mg/L data.
Tiered picks for this province
Named Amazon.ca units from the Nov 2026 shortlist.
Above 300 mg/L
Aquasure Harmony 64,000 grain
48K to 64K grain class
Check price on Amazon.ca โ250 to 320 mg/L
Fleck 5600SXT 48,000 grain
45K to 50K grain class
Check price on Amazon.ca โ180 to 250 mg/L
Fleck 5600SXT 40,000 grain
32K to 40K grain class
Check price on Amazon.ca โ
Ontario hardness table
Every OpenStats city in this province, sorted by mg/L.
ON cities
| City | Hardness | Class | Grain match |
|---|---|---|---|
| Guelph | 460 mg/L | Very hard | 64,000 grain |
| Kitchener | 400 mg/L | Very hard | 64,000 grain |
| Waterloo | 400 mg/L | Very hard | 64,000 grain |
| Whitchurch-Stouffville | 318 mg/L | Very hard | 64,000 grain |
| Brantford | 289 mg/L | Very hard | 48,000 grain |
| Belleville - Quinte West | 279 mg/L | Very hard | 48,000 grain |
| Cochrane | 277 mg/L | Very hard | 48,000 grain |
| Hawkesbury | 271 mg/L | Very hard | 48,000 grain |
| Ingersoll | 271 mg/L | Very hard | 48,000 grain |
| Hanover | 269 mg/L | Very hard | 48,000 grain |
| Greater Sudbury | 259 mg/L | Very hard | 48,000 grain |
| Penetanguishene | 259 mg/L | Very hard | 48,000 grain |
| Perth | 259 mg/L | Very hard | 48,000 grain |
| Norfolk County | 258 mg/L | Very hard | 48,000 grain |
| Brockville | 257 mg/L | Very hard | 48,000 grain |
| Collingwood | 255 mg/L | Very hard | 48,000 grain |
| Peterborough | 252 mg/L | Very hard | 48,000 grain |
| Port Hope | 252 mg/L | Very hard | 48,000 grain |
| Brant | 251 mg/L | Very hard | 48,000 grain |
| Minto | 249 mg/L | Very hard | 48,000 grain |
| Smiths Falls | 249 mg/L | Very hard | 48,000 grain |
| Halton Hills | 247 mg/L | Very hard | 48,000 grain |
| Temiskaming Shores | 246 mg/L | Very hard | 48,000 grain |
| Plympton-Wyoming | 244 mg/L | Very hard | 40,000 grain |
| Wasaga Beach | 244 mg/L | Very hard | 40,000 grain |
| The Blue Mountains | 243 mg/L | Very hard | 40,000 grain |
| Gananoque | 241 mg/L | Very hard | 40,000 grain |
| Lakeshore | 238 mg/L | Very hard | 40,000 grain |
| Stratford | 235 mg/L | Very hard | 40,000 grain |
| Centre Wellington | 229 mg/L | Very hard | 40,000 grain |
| Chatham-Kent | 229 mg/L | Very hard | 40,000 grain |
| Prince Edward County | 228 mg/L | Very hard | 40,000 grain |
| Huntsville | 226 mg/L | Very hard | 40,000 grain |
| Niagara-on-the-Lake | 225 mg/L | Very hard | 40,000 grain |
| Shelburne | 222 mg/L | Very hard | 40,000 grain |
| Orangeville | 216 mg/L | Very hard | 40,000 grain |
| Kawartha Lakes | 214 mg/L | Very hard | 40,000 grain |
| Kirkland Lake | 210 mg/L | Very hard | 40,000 grain |
| Gravenhurst | 209 mg/L | Very hard | 40,000 grain |
| New Tecumseth | 209 mg/L | Very hard | 40,000 grain |
| Owen Sound | 209 mg/L | Very hard | 40,000 grain |
| Essa | 208 mg/L | Very hard | 40,000 grain |
| Sault Ste. Marie | 207 mg/L | Very hard | 40,000 grain |
| Petrolia | 204 mg/L | Very hard | 40,000 grain |
| St. Thomas | 204 mg/L | Very hard | 40,000 grain |
| South Bruce Peninsula | 203 mg/L | Very hard | 40,000 grain |
| Fort Frances | 202 mg/L | Very hard | 40,000 grain |
| Bracebridge | 200 mg/L | Very hard | 40,000 grain |
| Saugeen Shores | 199 mg/L | Very hard | 40,000 grain |
| LaSalle | 198 mg/L | Very hard | 40,000 grain |
| Tecumseh | 192 mg/L | Very hard | 32,000 grain |
| Milton | 191 mg/L | Very hard | 32,000 grain |
| Port Colborne | 188 mg/L | Very hard | 32,000 grain |
| Kapuskasing | 185 mg/L | Very hard | 32,000 grain |
| Welland | 181 mg/L | Very hard | 32,000 grain |
| Midland | 177 mg/L | Hard | 32,000 grain |
| Thorold | 172 mg/L | Hard | 32,000 grain |
| Grimsby | 169 mg/L | Hard | 32,000 grain |
| Mono | 169 mg/L | Hard | 32,000 grain |
| Sudbury | 168 mg/L | Hard | 32,000 grain |
| Renfrew | 165 mg/L | Hard | 32,000 grain |
| Essex | 164 mg/L | Hard | 32,000 grain |
| Lincoln | 163 mg/L | Hard | 32,000 grain |
| Sarnia | 162 mg/L | Hard | 32,000 grain |
| Mississippi Mills | 157 mg/L | Hard | 32,000 grain |
| Cambridge | 156 mg/L | Hard | 32,000 grain |
| Woodstock | 155 mg/L | Hard | 32,000 grain |
| Caledon | 152 mg/L | Hard | 32,000 grain |
| Haldimand County | 151 mg/L | Hard | 32,000 grain |
| Innisfil | 146 mg/L | Hard | 32,000 grain |
| Georgina | 144 mg/L | Hard | 32,000 grain |
| Dryden | 142 mg/L | Hard | 32,000 grain |
| Kingsville | 142 mg/L | Hard | 32,000 grain |
| Parry Sound | 142 mg/L | Hard | 32,000 grain |
| Kenora | 138 mg/L | Hard | 32,000 grain |
| Fort Erie | 135 mg/L | Hard | 32,000 grain |
| Pembroke | 133 mg/L | Hard | 32,000 grain |
| Timmins | 133 mg/L | Hard | 32,000 grain |
| Belleville | 132 mg/L | Hard | 32,000 grain |
| Aurora | 130 mg/L | Hard | 32,000 grain |
| Cornwall | 130 mg/L | Hard | 32,000 grain |
| St. Catharines | 130 mg/L | Hard | 32,000 grain |
| Barrie | 129 mg/L | Hard | 32,000 grain |
| Pelham | 129 mg/L | Hard | 32,000 grain |
| Vaughan | 128 mg/L | Hard | 32,000 grain |
| Richmond Hill | 127 mg/L | Hard | 32,000 grain |
| Aylmer | 126 mg/L | Hard | 32,000 grain |
| Markham | 126 mg/L | Hard | 32,000 grain |
| Niagara Falls | 126 mg/L | Hard | 32,000 grain |
| Ajax | 125 mg/L | Hard | 32,000 grain |
| Brampton | 125 mg/L | Hard | 32,000 grain |
| Mississauga | 125 mg/L | Hard | 32,000 grain |
| Oshawa | 125 mg/L | Hard | 32,000 grain |
| Pickering | 125 mg/L | Hard | 32,000 grain |
| Whitby | 125 mg/L | Hard | 32,000 grain |
| Burlington | 124 mg/L | Hard | 32,000 grain |
| Clarence-Rockland | 124 mg/L | Hard | 32,000 grain |
| Oakville | 124 mg/L | Hard | 32,000 grain |
| Toronto | 121 mg/L | Hard | 32,000 grain |
| Hamilton | 120 mg/L | Hard | 32,000 grain |
| St. Marys | 120 mg/L | Hard | 32,000 grain |
| Espanola | 119 mg/L | Moderate | 32,000 grain |
| London | 119 mg/L | Moderate | 32,000 grain |
| Petawawa | 118 mg/L | Moderate | 32,000 grain |
| Norfolk | 115 mg/L | Moderate | 32,000 grain |
| Kingston | 114 mg/L | Moderate | 32,000 grain |
| Goderich | 111 mg/L | Moderate | 32,000 grain |
| Amherstburg | 110 mg/L | Moderate | 32,000 grain |
| Windsor | 110 mg/L | Moderate | 32,000 grain |
| Carleton Place | 108 mg/L | Moderate | 32,000 grain |
| Orillia | 106 mg/L | Moderate | 32,000 grain |
| Elliot Lake | 105 mg/L | Moderate | 32,000 grain |
| Quinte West | 102 mg/L | Moderate | 32,000 grain |
| Cobourg | 91 mg/L | Moderate | 32,000 grain |
| North Bay | 90 mg/L | Moderate | 32,000 grain |
| Erin | 86 mg/L | Moderate | 32,000 grain |
| Greater Napanee | 85 mg/L | Moderate | 32,000 grain |
| Bradford West Gwillimbury | 84 mg/L | Moderate | 32,000 grain |
| East Gwillimbury | 83 mg/L | Moderate | 32,000 grain |
| Arnprior | 81 mg/L | Moderate | 32,000 grain |
| Tillsonburg | 81 mg/L | Moderate | 32,000 grain |
| Thunder Bay | 46 mg/L | Soft | 32,000 grain |
| Ottawa | 21 mg/L | Soft | 32,000 grain |