How to Remove Stain on Concrete | What Actually Works

Concrete stain removal works best when you match the cleaner to the stain type, starting with the gentlest method first before escalating to stronger chemicals.

A dark oil patch on a clean new driveway or a rust bloom across an otherwise perfect patio — concrete stains stand out because the surface is porous and absorbs them. The fix depends entirely on what caused the mark. Oil, rust, paint, and organic grime each need a different approach, but the sequence is always the same: absorb or sweep, apply the right cleaner, let it dwell, scrub, rinse, and repeat if needed. If you want a targeted product rather than mixing your own, our roundup of top-performing formulas can save you time.

Stain Types and the Right Cleaner for Each

Concrete doesn’t respond to a one-size-fits-all cleaner, but the choices narrow quickly once you identify the stain. Below is the quick-reference breakdown:

Stain Type Best First Cleaner Escalate To
Oil or grease (fresh) Dish soap or baking soda Degreaser
Oil or grease (set-in) Degreaser Pressure washing
Rust or mineral Vinegar solution Oxalic acid
Paint (latex or oil-based) TSP solution Paint thinner or pressure washing
Mold or mildew Mold-killing detergent Bleach and water
Food, dirt, organic grime Liquid dish soap Laundry detergent

The Step-by-Step Process for Common Stains

Most stains on driveways, patios, and sidewalks follow a similar workflow once you pick the cleaner.

Oil or Grease

Blot fresh spills immediately with paper towels or kitty litter to pull up as much oil as possible. For the remaining mark, apply a generous layer of baking soda or a few pumps of dish soap directly on the stain, scrub with a stiff nylon brush, and let it sit 15 minutes before rinsing. Stubborn stains need a concrete degreaser — spray it on, wait five minutes, scrub, and rinse. Repeat until the stain lifts.

Rust or Mineral Stains

Small rust spots usually respond to a vinegar solution. Mix 1 cup white vinegar with roughly 2/3 cup water in a spray bottle, saturate the stain, and let it work for 10 to 15 minutes. Scrub and rinse thoroughly. If the stain holds, switch to an oxalic acid cleaner designed for concrete — follow the manufacturer’s dilution instructions exactly and flush the area well afterward.

Paint Stains

For dried latex or oil-based paint, mix 1 cup trisodium phosphate (TSP) per gallon of hot water. Pour or brush the solution directly onto the stain so it soaks in for at least 30 minutes, then scrub and rinse. If that doesn’t remove it, try paint thinner or a pressure washer, then repeat the TSP step if necessary.

Mold and Mildew

Use a detergent with a mold-killing additive and water. Scrub the surface, let it sit 10 to 15 minutes, and rinse. If discoloration isn’t a concern — bleach can lighten the concrete itself — a mix of 1 part bleach to 3 parts water works on stubborn patches. Rinse thoroughly so no chemical residue remains.

When to Use Pressure Washing and Chemical Cleaners

Pressure washing works well for large exterior stains or sets of stains, but start at a low nozzle setting and increase pressure slowly. Too much force too fast can pit or etch the surface. For still-stubborn spots, the right chemical cleaner from a targeted roundup often finishes the job faster than brute pressure.

TSP is effective but requires good ventilation and thorough rinsing. Muriatic acid should be a last resort — it requires eye protection, rubber gloves, and careful dilution (roughly 1 part acid to 10 parts water), plus neutralization with an ammonia-water mix. For stamped or finished concrete, skip acids and alkalines entirely; stick with mild dish soap, stone cleaner, or Castile soap.

FAQs

Can I use vinegar on all concrete stains?

No. Vinegar works well on small rust and mineral deposits but is too mild for oil, paint, or deep-set organic stains. It also should not be used on stamped or sealed concrete because the acid can dull the finish.

How long should I let a cleaner sit on concrete?

Most detergent and degreaser cleaners need 10 to 15 minutes of dwell time before scrubbing. TSP requires at least 30 minutes for paint stains. Acid-based cleaners should usually sit no longer than 10 minutes, then be neutralized immediately.

What should I avoid when cleaning concrete?

Do not use wire-bristle brushes — they scratch the surface and make future stains harder to clean. Avoid harsh chemicals on stamped or finished concrete. Never mix bleach and ammonia, and always rinse cleaners completely so residue doesn’t remain in the porous concrete.

References & Sources

Please use a real email you check. If it's fake or mistyped, your message won't reach us and we can't reply — wrong addresses are rejected automatically.