· Updated

How to Fix a Stained Concrete Floor: Step-by-Step Guide

Remove oil, rust, paint, and other stubborn stains from concrete floors using the right cleaners and techniques for a clean, restored surface.

A stained concrete floor does not have to stay that way. Whether you are dealing with a grease-soaked garage floor, a rust-streaked basement slab, or paint drips from a renovation project, the right approach can restore concrete to a clean, presentable surface.

A stained concrete floor does not have to stay that way. Whether you are dealing with a grease-soaked garage floor, a rust-streaked basement slab, or paint drips from a renovation project, the right approach can restore concrete to a clean, presentable surface. This guide covers the most common stain types and exactly how to tackle each one.

What You Need

Step 1: Identify the Stain Type

Effective stain removal starts with knowing what you are dealing with. The cleaner that works perfectly on oil will do nothing for rust, and vice versa.

Common concrete stain types:

  • Oil and grease: Dark, spreading stains common in garages, driveways, and utility rooms. Look oily or shiny when wet.
  • Rust: Orange-brown stains, often appearing beneath metal shelving, tools left on the floor, or near floor drains.
  • Paint: Splatter or spill patterns that sit on the surface and may be peeling or thick depending on age.
  • Efflorescence: White, chalky residue caused by water drawing mineral salts to the surface — common in basements and on patios.
  • Mold and mildew: Dark gray or black patches in consistently damp areas.
  • Tire marks: Black rubber marks from vehicle tires, common on garage floors.

Step 2: Sweep and Dry the Area

Sweep the entire floor thoroughly to remove loose dirt, grit, and debris. Any abrasive material left on the surface will scratch the concrete during scrubbing. If the stain is in a damp area, allow it to dry completely before applying chemical cleaners — moisture dilutes products and reduces effectiveness.

For fresh oil or fuel spills, pour cat litter or oil-dry absorbent directly onto the spill and grind it in with your foot. Leave it for 20–30 minutes to absorb as much liquid as possible, then sweep it up before proceeding to chemical treatment.

Step 3: Treat Oil and Grease Stains

  1. Apply a generous amount of heavy-duty concrete degreaser directly to the stained area. Do not dilute unless the product instructions specify otherwise.
  2. Let the degreaser dwell for 15–30 minutes. For thick or old stains, cover the wet degreaser with plastic sheeting to prevent it from drying out.
  3. Scrub vigorously with a stiff-bristle deck brush in a circular motion.
  4. Add a small amount of water and continue scrubbing to create a lather.
  5. Rinse thoroughly with a hose or pressure washer.
  6. Repeat the process a second time if the stain is still visible — stubborn oil stains often require two applications.

For deep-set oil stains: Mix a poultice of TSP powder and mineral spirits or acetone to form a thick paste. Apply the paste over the stain, cover with plastic, and tape the edges. Leave for 24 hours to allow the solvent to draw the oil out of the concrete pores. Remove the dried poultice and rinse.

Step 4: Treat Rust Stains

  1. Put on rubber gloves and eye protection — rust removers contain acids.
  2. Pour or spray the oxalic acid rust remover directly onto the rust stain.
  3. Let it sit for the time recommended on the product label (usually 5–15 minutes). You may see fizzing, which indicates the acid is reacting with the rust.
  4. Scrub with a stiff brush.
  5. Rinse thoroughly with plenty of water.
  6. Neutralize the treated area by sprinkling baking soda over it, scrubbing lightly, and rinsing again.

Step 5: Remove Paint Stains

  • Fresh paint: Wipe up immediately with a damp rag, then mop with warm soapy water.
  • Dried latex paint: Score the paint with a plastic scraper, then apply a latex paint remover and let it dwell. Scrub and rinse. Repeat if needed.
  • Dried oil-based paint: Use a paint stripper rated for concrete, following the product safety instructions carefully. Ventilate the area well and wear chemical-resistant gloves.
  • Thin paint splatter: A wire brush or angle grinder with a wire wheel can mechanically remove stubborn dried splatter without chemicals.

Step 6: Clear Efflorescence and Mold

Efflorescence: Scrub with a stiff brush and a solution of 1 part white vinegar to 3 parts water, or use a dedicated efflorescence cleaner. Rinse well. Sealing the floor afterward is critical to preventing recurrence, as efflorescence is a moisture-driven problem.

Mold and mildew: Mix 1 cup of bleach per gallon of water and apply to the affected area. Let it sit for 10 minutes, scrub, and rinse. Ensure the space is well ventilated and wear gloves and eye protection.

Step 7: Final Rinse and Inspection

Rinse the entire treated area thoroughly. Allow the floor to dry completely — this may take several hours depending on temperature and humidity. Inspect in good light to see if stains remain. Touch up problem areas with a second treatment before sealing.

Step 8: Apply Concrete Sealer

Once the floor is fully clean and dry (at least 24 hours after final rinsing):

  1. Sweep or vacuum any dust.
  2. Apply a penetrating concrete sealer with a roller or sprayer, following the manufacturer’s instructions.
  3. Allow the first coat to cure, then apply a second coat if the product recommends it.
  4. Keep foot traffic off the floor for the cure time specified on the sealer label (usually 24–48 hours).

Sealing creates a barrier that stops new stains from penetrating and makes future cleaning far easier.

Prevent Future Staining

  • Place rubber floor mats or interlocking floor tiles under vehicles and work areas.
  • Wipe up spills immediately — especially oil, chemicals, and rust-prone metal objects.
  • Re-apply sealer every 1–3 years depending on traffic and use.
⏰ PT4H 💰 $10–$50 🔧 Flooring planks or tiles, Underlayment, Tapping block and pull bar, Spacers, Flooring adhesive or stapler
  1. Identify the Stain Type

    Effective stain removal starts with knowing what you are dealing with. The cleaner that works perfectly on oil will do nothing for rust, and vice versa.

  2. Sweep and Dry the Area

    Sweep the entire floor thoroughly to remove loose dirt, grit, and debris. Any abrasive material left on the surface will scratch the concrete during scrubbing.

  3. Treat Oil and Grease Stains

    Apply a generous amount of heavy-duty concrete degreaser directly to the stained area. Do not dilute unless the product instructions specify otherwise.

  4. Treat Rust Stains

    Put on rubber gloves and eye protection — rust removers contain acids.

  5. Remove Paint Stains

    Fresh paint: Wipe up immediately with a damp rag, then mop with warm soapy water.

  6. Clear Efflorescence and Mold

    Efflorescence: Scrub with a stiff brush and a solution of 1 part white vinegar to 3 parts water, or use a dedicated efflorescence cleaner. Rinse well.

Free: 10-Point Home Maintenance Checklist

Prevent costly repairs with this seasonal checklist. Save hundreds every year by catching problems early.

Free instant download + weekly home tips. Unsubscribe anytime.