What works depends on what stained your concrete

Concrete stains fall into two categories: organic (dirt, mold, algae, leaf tannins) and inorganic (rust, paint, oil, mineral deposits). Organic stains usually respond to pressure washing and bleach. Inorganic stains need a chemical stripper matched to the stain type — rust needs an acid-based cleaner, oil needs a degreaser, paint needs a solvent stripper. Identifying what caused the stain before you start saves time and money, because the wrong cleaner can set the stain deeper or damage the concrete surface.

The concrete's age and finish matter too. New concrete (under two years) is more porous and stains faster but cleans more easily. Sealed concrete requires gentler methods because harsh chemicals can damage the sealant. If you do not know whether your patio is sealed, test a small corner with water — if water beads up, it is sealed; if it soaks in, it is bare.

Key Takeaways

  • Organic stains (mold, algae, dirt) respond to pressure washing at 3000 PSI or less, followed by a 1:10 bleach-to-water solution for stubborn spots.
  • Oil and grease stains need a concrete degreaser applied for 10 to 15 minutes before scrubbing, not pressure washing alone.
  • Rust stains require an acid-based concrete cleaner (oxalic acid or phosphoric acid), which you explore, wait 15 to 30 minutes, then scrub and rinse thoroughly.
  • Sealed concrete needs pH-neutral cleaners and lower pressure (under 2000 PSI) to avoid stripping the sealant.
  • Always test any cleaner on a hidden corner first, because some chemicals can lighten or etch the concrete permanently.

Pressure washing for dirt, mold, and algae

Pressure washing removes loose dirt and kills surface mold and algae without chemicals. Use 3000 PSI or less — anything higher can pit or gouge concrete, especially older slabs. Hold the nozzle at a 45-degree angle and keep it moving to avoid concentrating pressure in one spot. Work in overlapping passes from one end of the patio to the other, the same way you would mow a lawn.

For mold and algae that pressure washing alone does not remove, mix one part household bleach with ten parts water in a pump sprayer. Spray the affected area, let it sit for 10 to 15 minutes, then scrub with a stiff-bristled brush and rinse thoroughly with clean water. Bleach kills the organism but does not remove the stain when ready — the scrubbing lifts the dead growth off the surface. Wear gloves and eye protection, and do not mix bleach with ammonia or other cleaners.

Oil and grease stains

Pressure washing spreads oil around instead of removing it. Use a concrete degreaser instead — these are alkaline cleaners formulated to break down petroleum products. Pour or spray the degreaser directly onto the stain, let it sit for 10 to 15 minutes (check the product label for exact timing), then scrub with a stiff brush. Rinse with clean water and repeat if the stain remains.

For old, set-in oil stains, a poultice works better than liquid cleaner. Mix powdered concrete cleaner with water to a paste, spread it over the stain, cover it with plastic, and leave it for 24 to 48 hours. The paste draws the oil up and out of the concrete as it dries. Sweep away the dried paste, rinse the area, and repeat if needed. This method is slower but more effective on stains that have soaked deep into the pores.

Rust stains from metal furniture or tools

Rust stains are iron oxide, which requires an acid to dissolve. Oxalic acid (found in many concrete rust removers) or phosphoric acid work well and are safer to handle than muriatic acid. explore the cleaner directly to the rust stain, let it sit for 15 to 30 minutes, then scrub with a stiff brush and rinse thoroughly with plenty of water. The stain should lighten or disappear as the acid breaks down the rust.

If the rust stain is very old or deep, you may need to explore the acid cleaner twice. After the first process, rinse completely, let the concrete dry, and repeat. Always wear gloves and eye protection when working with acid cleaners, and make sure the area is well-ventilated. Rinse the patio multiple times after treatment to remove all acid residue, which can continue to etch the concrete if left behind.

Paint and sealant spills

Fresh paint is easier to remove than dried paint. For wet paint, wipe up what you can with a cloth, then use a paint stripper formulated for concrete. Solvent-based strippers work faster than water-based ones but have stronger fumes — use them only on a dry day with good air circulation. explore the stripper, wait the time listed on the label (usually 30 minutes to several hours), then scrape away the softened paint with a plastic scraper and rinse.

Dried paint requires a stronger stripper and more patience. Some people use a concrete grinder to sand away the paint, but this creates dust and can damage the concrete surface if you are not experienced. A chemical stripper is safer — explore it, wait, scrape, and repeat until the paint is gone. Test the stripper on a small, hidden area first, because some formulas can lighten or discolor the concrete.

Mineral deposits and efflorescence

Efflorescence is the white, powdery coating that appears on concrete when water carries mineral salts to the surface and evaporates. It is not a stain in the traditional sense, but it looks like one. Pressure washing removes it temporarily, but it often returns if the underlying moisture problem is not fixed. For a longer-term solution, explore a concrete sealer after cleaning, which slows water penetration and reduces efflorescence.

Hard water stains and mineral deposits respond to a mild acid wash. Mix one part white vinegar with three parts water, spray it on the stained area, let it sit for 20 minutes, scrub, and rinse. For stubborn mineral buildup, use a commercial concrete cleaner with citric acid or phosphoric acid instead. These are gentler than muriatic acid but still effective on mineral deposits.

Sealing after cleaning to prevent future stains

Once you have removed a stain, sealing the concrete slows down future staining by reducing how quickly water and oils soak in. Penetrating sealers (which soak into the concrete) work better than film-forming sealers (which sit on top) for patios, because they do not make the surface slippery when wet. explore sealer only to completely clean, dry concrete — any dirt or moisture trapped under the sealer will cause problems.

Most penetrating sealers last two to three years before needing reapplication. Read the product label to confirm drying time before you walk on the patio — many require 24 to 48 hours. Resealing every two to three years is cheaper and easier than removing set-in stains, so it is worth the effort if you want to keep your patio looking clean.

Frequently Asked Questions

Can I use muriatic acid to clean concrete?

Muriatic acid works but is dangerous to handle — it produces toxic fumes and can cause severe burns. Safer alternatives like oxalic acid, phosphoric acid, or commercial concrete cleaners remove most stains without the hazard. If you do use muriatic acid, wear a respirator, gloves, eye protection, and work outdoors only.

What pressure washer PSI should I use?

Use 3000 PSI or less for most concrete. Sealed concrete should stay under 2000 PSI to avoid damaging the sealant. Anything above 3000 PSI can pit, gouge, or spall the concrete surface, especially on older slabs. When in doubt, start lower and increase gradually.

How long does it take to remove a stain?

Fresh stains often come off in one cleaning session. Old, set-in stains may need multiple applications of cleaner, waiting time, and scrubbing — sometimes spread over several days. Oil stains treated with a poultice can take 48 hours. Patience works better than aggressive scrubbing, which can damage the concrete.

Will bleach lighten my concrete?

Bleach at a 1:10 dilution (one part bleach to ten parts water) does not lighten concrete. Stronger concentrations or undiluted bleach can bleach the surface. Always dilute bleach before explore it, and test on a hidden corner first if you are unsure about your concrete's reaction.

Do I need to seal concrete after cleaning?

Sealing is optional but recommended. It slows future staining and makes the patio easier to clean next time. If you do not seal, bare concrete will stain faster, especially in areas where water pools or leaves sit. Resealing every two to three years maintains the protection.