Skip to content

Stone-Safe Shower Cleaner

A pH-neutral spray for marble, granite, and travertine shower walls

15 min beginner Yields 16 oz spray bottle

Ingredients

  • 1 tbsp Liquid castile soap
  • 1/4 cup Hydrogen peroxide (3%)
  • 2 tbsp Rubbing alcohol (70%)
  • 1.5 cups Warm water

Steps

  1. Pour 1.5 cups of warm water into a clean 16 oz spray bottle.
  2. Add 1 tablespoon of liquid castile soap, 1/4 cup of hydrogen peroxide, and 2 tablespoons of rubbing alcohol. Cap the bottle and swirl gently to combine. Do not shake vigorously — castile soap foams easily.
  3. Spray the solution generously onto stone shower walls, tiles, and fixtures. Cover the entire surface, paying extra attention to grout lines and corners where soap scum collects.
  4. Let it sit for 5 to 10 minutes. The peroxide needs dwell time to break down mildew.
  5. Wipe the surface with a soft microfiber cloth using gentle, even strokes. Do not use abrasive scrub pads on polished stone.
  6. Rinse the walls thoroughly with warm water.
  7. Dry with a clean microfiber towel. Allowing water to air-dry on stone leaves mineral deposits and can seep into pores.

Why It Works

If you have natural stone in your shower, you cannot simply swap vinegar for hydrogen peroxide and expect the same result. They work through entirely different mechanisms. Vinegar is an acid that dissolves mineral deposits like calcium carbonate — the very same mineral that makes up marble, travertine, and limestone. That is why vinegar etches stone: it literally dissolves the surface. Hydrogen peroxide is an oxidizer, not an acid. It releases oxygen radicals that break apart organic stains like mildew and soap residue, but it does not dissolve mineral buildup. For stone showers, this is exactly what you want — mold and soap scum removal without attacking the stone itself.

Castile soap is the workhorse of this formula. At a pH of approximately 8.9, it is mildly alkaline and completely safe for natural stone. It acts as a surfactant that lifts soap scum by emulsifying the oils and fatty residues that bind scum to the surface. Rubbing alcohol evaporates quickly, which matters on porous stone — the less time moisture sits on the surface, the lower the risk of water staining or mineral absorption.

Alternative

  • For heavy soap scum that the spray alone cannot remove, make a paste of 2 tablespoons of baking soda mixed with 1 tablespoon of castile soap. Apply the paste with a soft cloth, let it sit for 5 minutes, and wipe clean. Baking soda is a 2.5 on the Mohs hardness scale, which is softer than stone and safe for gentle scrubbing on honed finishes. Avoid this paste on highly polished marble, as even soft abrasives can dull a mirror finish over time.
  • For daily maintenance between deep cleans, mix 1 teaspoon of castile soap in 2 cups of water in a spray bottle. Mist the shower walls after each use and squeegee. This prevents soap scum from building up in the first place.

Tips

  • Never use vinegar, lemon juice, or any cleaner containing citric or acetic acid on marble, granite, travertine, or limestone. Even diluted acid causes cumulative etching that dulls the surface permanently.
  • Use hydrogen peroxide from a fresh bottle. Peroxide degrades into water and oxygen over time, especially once opened. An old bottle may have lost its oxidizing power.
  • Store this cleaner in an opaque or dark spray bottle. Hydrogen peroxide breaks down when exposed to light, which is why it is sold in brown bottles.
  • Squeegee stone shower walls after every use. Removing standing water is the single most effective way to prevent both mineral deposits and mold growth on stone surfaces.
  • Reseal your stone shower tiles every 6 to 12 months with a penetrating stone sealer. Sealed stone resists staining and absorbs less moisture, making every cleaning session easier.
  • This recipe replaces the Shower Door Glass Cleaner, Soap Scum Remover, and Bathroom Mold Prevention Spray for anyone with natural stone in their shower.

More Bathroom Cleaning recipes

Try "vinegar cleaner" or "bathroom"