How to Remove Hard Water Stains From Glass, Faucets, Toilets and Stainless

White mineral crust dissolves in mild acid. The trick is choosing the right strength for each surface, keeping acid off stone, and never letting it meet bleach.

How to Remove Hard Water Stains From Glass, Faucets, Toilets and Stainless
Photo: Brett Jordan / Pexels

Hard water stains are dried mineral deposits, and they dissolve in mild acid. For most glass, chrome faucets, glazed tile and porcelain, wipe or soak the area with plain white vinegar for 5 to 15 minutes, scrub with a non-scratch pad, rinse with water and dry. For heavy crust, use a commercial lime and scale remover exactly as labeled. Keep acids off marble, limestone and travertine, and never use any acid cleaner together with, or right after, bleach.

What hard water stains are

Hard water contains dissolved calcium and magnesium. When a drop evaporates, the minerals stay behind. One drop leaves a faint spot; months of drops leave a chalky white crust on faucets, cloudy glass, and a gray-brown ring at the toilet waterline. Because the deposits are alkaline minerals, acids such as acetic acid (vinegar) or citric acid loosen them. Soap mixed with those minerals forms soap scum, a related but greasier film.

What you need

  • Distilled white vinegar in a spray bottle (label the bottle)
  • Paper towels or microfiber cloths for soaking
  • Non-scratch scrub sponge and an old toothbrush
  • Rubber gloves
  • For toilets: a toilet brush and, for some rings, a pumice stone made for toilets
  • Optional: a commercial lime and scale remover labeled for your surface

By surface: what to use

Surface Use Avoid
Uncoated glass shower doors, mirrors Vinegar spray, then non-scratch pad, squeegee Abrasive powders, steel wool
Coated or “easy-clean” glass Only what the glass maker lists Abrasives, razor blades, strong acids not on the care sheet
Chrome faucets Vinegar-soaked cloth wrap, soft brush Scouring pads
Brushed, matte or colored fixture finishes Mild soap first; acid only if the maker allows Lime removers, abrasives
Porcelain toilet bowl Acidic toilet-bowl cleaner or vinegar; wet pumice for stubborn rings Any bleach product at the same time
Stainless steel sinks Vinegar briefly, then rinse and dry; baking soda paste Bleach and chloride cleaners, steel wool
Marble, limestone, travertine pH-neutral stone cleaner; a stone professional for etching Vinegar, lemon, any acid

Glass shower doors and mirrors

  1. Spray the glass with vinegar until it is wet but not running.
  2. Wait 5 to 10 minutes. For thick spots, press a vinegar-soaked paper towel onto the glass so it stays wet longer.
  3. Scrub in small circles with a non-scratch sponge.
  4. Rinse with water and squeegee or dry with a microfiber cloth.

If your glass has a factory protective coating, read its care sheet first; several coating makers rule out abrasive cleaners, razor blades and certain acids. More detail is in our guide to cleaning glass shower doors.

Faucets and fixtures

  1. Soak a cloth or paper towel in vinegar and wrap it around the crusty base or spout. Secure it with a rubber band.
  2. Wait 15 to 30 minutes on chrome. Check delicate finishes sooner, and skip this if the care sheet says no acids.
  3. Scrub around the base with a toothbrush.
  4. Rinse with water and dry so new spots do not form right away.

Unscrew the aerator at the tip of the spout and soak it separately. For the shower head, see how to clean a shower head.

The toilet ring

A ring at the waterline is usually minerals, sometimes with stains caught in them.

  1. Apply an acidic toilet-bowl cleaner under the rim and on the ring, following the label and wait time. Vinegar works on light rings, but it is weaker.
  2. Scrub with the toilet brush and flush.
  3. For a stubborn ring on white porcelain, a pumice stone sold for toilets can help. Wet the stone and keep both stone and surface wet the whole time, rub gently, and stop if you see scratches. Pumice packaging warns that some colored porcelain bowls are fragile, so test a small spot first. Do not use pumice on plastic seats, fiberglass, or colored and coated finishes.

Our full guide on how to clean a toilet covers the rest of the bowl and seat.

Stainless steel

Wipe stainless sinks with vinegar on a cloth, wait a few minutes, wipe with the grain, then rinse well and dry. Do not leave acid sitting on stainless for long. Avoid bleach and other chloride-containing cleaners and steel wool, which can mark or pit the surface. A paste of baking soda and water, rubbed with the grain, lifts light spots without acid.

Acid cleaner safety

  • Never mix acids with bleach. Vinegar, lime and rust removers, and many toilet-bowl cleaners are acids. With chlorine bleach they release chlorine gas. If you used a bleach product in the last cleaning, rinse the surface thoroughly with water before switching.
  • Do not combine commercial cleaners, and do not use two toilet cleaners one after another without flushing in between.
  • Ventilate. Open a window or run the exhaust fan.
  • Wear gloves, and eye protection with stronger scale removers.
  • Read the label for surfaces it should not touch. Many strong removers say to avoid natural stone, colored grout or certain metals.
  • Keep it safe: original containers, out of reach of children and pets.

If you prefer store-bought cleaners reviewed for safer ingredients, look for the U.S. EPA Safer Choice label. If someone swallows, inhales or gets a cleaning product in the eyes, call Poison Control at 1-800-222-1222 (US) or emergency services.

The natural stone exception

Marble, limestone, travertine and onyx are calcium-based, just like the scale you are trying to remove. An acid that dissolves scale also dissolves the stone, leaving dull “etch” marks that do not wipe off. On these surfaces, use a pH-neutral cleaner labeled safe for stone, dry the surface after each use, and call a stone restoration professional for etched areas. Granite tolerates more than marble, but many fabricators still advise pH-neutral cleaners only.

Preventing hard water stains

  • Squeegee glass and wipe faucets dry after showers.
  • Clean lightly every week so deposits never get thick.
  • Fix dripping faucets; constant drips build crust fast.
  • If hard water is a problem through the whole house, a water softener deals with the source. Your local water utility’s annual water quality report usually lists hardness.

Bottom line

Hard water stains come off with time and mild acid: vinegar for routine spots, a labeled scale remover for heavy crust, wet pumice for a stubborn porcelain toilet ring. Rinse and dry afterward. Check fixture and glass care sheets, keep acids off natural stone, and never let an acid cleaner meet bleach.

FAQ

Can I use lemon juice instead of vinegar?

Yes, on the same surfaces. Lemon juice contains citric acid, so the same rules apply: not on stone, never with bleach, and rinse afterward.

Why do the spots come back so quickly?

Every drop that dries leaves minerals. Drying glass and faucets after use is the most effective, and cheapest, prevention.

Will baking soda remove hard water stains?

It can scrub off light spots mechanically, but it does not dissolve scale the way acids do. It is a good option for stainless steel.

Can hard water stains be permanent?

On glass, very old deposits can etch the surface. If the cloudiness remains when the glass is wet and clean, it may be etching rather than scale.