You clean the shower door and it still looks foggy. White crust builds up around the faucet base, a gray ring won’t scrub out of the toilet, and the inside of the kettle is lined with chalky scale. These are hard water stains, and regular soap and water barely touch them because they aren’t dirt. They’re mineral deposits.
This guide explains what causes hard water stains and how to remove them safely from glass shower doors, faucets, toilets and kettles using vinegar or citric acid. You’ll also learn which surfaces acids will damage, especially natural stone, how to prevent buildup from coming back, and when the problem calls for a water softener or a pro.
Quick answer: Hard water stains dissolve in mild acid. Spray or soak the deposits with white vinegar or a citric acid solution, give it 15 to 30 minutes to work, then scrub with a non-scratch pad and rinse. For thick buildup, wrap fixtures in vinegar-soaked cloths or use a baking soda paste. Never use acids on marble, limestone or travertine, and dry surfaces after each use to prevent new spots.
What causes hard water stains?
Hard water contains dissolved calcium and magnesium picked up as groundwater moves through soil and rock. When the water evaporates, those minerals stay behind as white or gray spots and crust. The U.S. Geological Survey classifies water with 121 to 180 milligrams per liter of hardness as hard and anything above 180 as very hard.
Calcium also reacts with soap to form soap scum, which is why the two problems usually show up together. Because the deposits are alkaline minerals, mild acids like vinegar (acetic acid) and citric acid dissolve them. The key is giving the acid enough contact time, rather than scrubbing harder.
Best method by surface
| Surface | Best cleaner | How to apply | Avoid |
|---|---|---|---|
| Glass shower doors | Warm white vinegar; baking soda paste for heavy film | Spray, let sit 15 to 30 minutes, scrub with a non-scratch pad | Steel wool, abrasive powders |
| Chrome faucets | Vinegar or 1:1 vinegar and water | Wrap with a soaked cloth for 30 to 60 minutes | Long soaks on specialty finishes |
| Toilet bowl ring | Undiluted vinegar or citric acid | Lower the water level, apply, let it sit, scrub | Mixing with bleach cleaners |
| Kettle or coffee maker | Citric acid solution or vinegar | Fill, heat or run a cycle, let sit, rinse well | Scrubbing with metal tools |
| Porcelain sink or tub | Vinegar spray, then baking soda paste | Spray, wait, scrub gently, rinse | Abrasives on older enamel |
| Marble, limestone, travertine | Stone-safe, pH-neutral cleaner only | Wipe and dry; call a stone pro for etching | Vinegar, lemon, citric acid, acidic cleaners |
Tools and materials
- White distilled vinegar
- Citric acid powder (sold in canning and baking aisles)
- Baking soda
- Spray bottle
- Non-scratch scrub pads, an old toothbrush and microfiber cloths
- Squeegee for glass
- Rubber gloves
- Small plastic bags and rubber bands (for faucet aerators and shower heads)
- Wet pumice stone for porcelain toilets only (optional)
How to remove hard water stains from glass shower doors
Step 1: Check the glass first
Many newer shower doors have a factory protective coating. Check the manufacturer’s care instructions, because some coatings shouldn’t be scrubbed with abrasive pads or strong cleaners.
Step 2: Apply warm vinegar
Warm a cup or two of white vinegar until it’s warm to the touch, not hot, and pour it into a spray bottle. Spray the glass generously, focusing on cloudy areas. For vertical glass, press paper towels soaked in vinegar onto the worst spots so the acid stays in contact instead of running off.
Step 3: Wait, then scrub
Leave it for 15 to 30 minutes, respraying if it dries. Scrub with a non-scratch pad in small circles. For heavy film, make a paste of baking soda and a little water, spread it on and scrub, then spray vinegar over it.
Step 4: Rinse and dry
Rinse the glass thoroughly with warm water and dry it with a squeegee and microfiber cloth. Drying is what keeps the glass clear, so don’t skip it. The same squeegee technique helps when you clean windows without streaks.
How to clean hard water off faucets and fixtures
For crust around a faucet base or handles, soak a cloth or paper towel in white vinegar and wrap it around the deposits for 30 to 60 minutes. Use an old toothbrush to scrub the softened scale, especially where the faucet meets the sink, then rinse and buff dry.
For a clogged aerator or shower head, fill a small plastic bag with vinegar, slip it over the end so the nozzles are submerged and secure it with a rubber band. Leave it for about an hour, run the water to flush loosened scale, and scrub any remaining spots. Our guide on how to clean a shower head covers removing it for a full soak.
Be cautious with specialty finishes such as brushed nickel, oil-rubbed bronze, matte black and unlacquered brass. Some manufacturers advise against acidic or abrasive cleaners on these finishes, so check the care guide and test on a hidden spot before a long soak.

How to remove a hard water ring from a toilet
- Turn off the water supply valve behind the toilet and flush to lower the water level below the ring.
- Pour undiluted white vinegar or a citric acid solution over the ring, or press vinegar-soaked paper towels onto it.
- Let it sit for at least a few hours; overnight works best for thick rings.
- Scrub with a toilet brush. For stubborn spots on standard porcelain, rub gently with a wet pumice stone, keeping both the stone and the bowl wet to avoid scratches.
- Turn the water back on and flush.
Repeat if needed rather than switching to harsher chemicals. Mineral buildup in the rim jets can also weaken the flush, so clear them with a small brush while the water is down.
Safety note: Never mix vinegar, citric acid or acidic toilet bowl cleaners with chlorine bleach, and don’t use two different toilet cleaners back to back without flushing well in between. The CDC warns never to mix bleach with ammonia or any other cleaner. Wear gloves and keep the room ventilated.
How to descale a kettle or coffee maker
For an electric or stovetop kettle, fill it about halfway with water, add a spoonful of citric acid powder or replace half the water with white vinegar, and bring it to a boil. Turn it off, let it sit 15 to 30 minutes, then pour it out and scrub any remaining flakes with a soft brush. Boil and discard fresh water once or twice to remove any taste.
For coffee makers, follow the manufacturer’s descaling instructions, since some models have a dedicated descale cycle or warn against vinegar. Citric acid is less smelly than vinegar and is often preferred for small appliances.
Never use acids on natural stone
Marble, limestone, travertine and onyx are mostly calcium carbonate, the same material as the mineral deposits you’re trying to remove. Vinegar, lemon juice and citric acid will etch them, leaving dull, rough spots that cleaning can’t fix. Use only pH-neutral cleaners made for stone, wipe up water promptly and dry the surface after use.
Granite and quartz are more acid resistant, but acids can wear down the sealer on granite. If stone already has etching or heavy mineral buildup, a stone restoration professional can hone and polish it. The same caution applies to grout around stone tile; see our guide on how to clean grout for stone-safe options.
Common hard water cleaning mistakes
- Scrubbing instead of soaking. Hard scrubbing scratches glass and finishes. Let the acid sit and do the work.
- Letting vinegar dry on vertical surfaces. It stops working once it evaporates. Use soaked paper towels or respray.
- Using steel wool or scouring powder on glass and chrome. The scratches hold even more minerals afterward.
- Forgetting to rinse. Leftover acid and dissolved minerals can leave a new film. Rinse with clean water and dry.
- Assuming every surface is the same. What’s safe for porcelain can ruin marble or a specialty faucet finish.
How to prevent hard water stains
- Squeegee after every shower. A quick pass over glass and tile removes the water before minerals can dry on.
- Dry faucets and sinks. Keep a microfiber cloth nearby and wipe fixtures after use.
- Use a daily shower spray. A light mist of diluted vinegar on ceramic, porcelain and glass helps, but never on stone.
- Use rinse aid in the dishwasher. It helps prevent cloudy spots on glasses.
- Test your water. Test strips or your utility’s water quality report tell you how hard your water is.
- Consider a water softener. For very hard water, a whole-house softener reduces scale on fixtures, appliances and your water heater.
When to call a pro
Most hard water stains are a DIY job, but call for help if:
- Glass stays cloudy after thorough cleaning. Long-term mineral deposits can etch glass permanently, and only replacement or professional restoration will fix it.
- Natural stone countertops, floors or showers are etched or dull.
- Water pressure has dropped throughout the house, which can point to scale in pipes or fixtures.
- Your water heater rumbles or pops, a sign of sediment buildup. Our guide on how to flush a water heater explains the fix.
- You want a whole-house water softener installed and need the plumbing modified.
Water softener and stone restoration costs vary widely by system size, region and the extent of the damage, so get written quotes from two or three licensed contractors.
Frequently asked questions
Does vinegar remove hard water stains?
Yes. White vinegar is mildly acidic and dissolves calcium and magnesium deposits on glass, porcelain, ceramic and chrome. It works best with enough contact time, 15 minutes or more, rather than a quick wipe. Don’t use it on natural stone.
Is citric acid better than vinegar?
Citric acid is similarly effective, has little odor and is popular for kettles, coffee makers and toilets. Vinegar is easier to spray on large surfaces like shower glass. Both should be kept off natural stone and never mixed with bleach.
Can hard water stains be permanent?
On glass, years of buildup can etch the surface so that it stays cloudy even when clean. On stone, acids and some minerals can leave permanent dull spots. Regular cleaning and drying is the best way to prevent permanent damage.
How do I remove hard water stains from a toilet without scrubbing?
Lower the water level, pour undiluted vinegar or a citric acid solution over the ring and leave it overnight. Most light rings will wipe off easily in the morning. Heavy rings may still need a brush or a wet pumice stone.
Is it safe to use vinegar on granite?
Occasional, quick contact is unlikely to harm the stone itself, but regular acid use can break down the sealer and leave granite more prone to stains. Use a pH-neutral stone cleaner for routine care.
The bottom line
Hard water stains are mineral deposits, and mild acids like vinegar and citric acid dissolve them when you give them time to work. Soak, wait, scrub gently and always dry the surface afterward. Keep acids away from marble and other natural stone, never mix cleaners with bleach, and consider a water softener if your water tests very hard.




