Concrete looks bombproof. It is not. It is porous, so water, oil, and gasoline soak straight into the surface, and the stain you think is permanent is usually just a spill sitting in the pores.
That is the good news. Most of what a garage floor collects comes back out with the right absorbent, degreaser, or acid, and you do not need to hire a crew to do it.
This guide covers how to clean a garage floor in four stages: prep, spot-treating stains, a full deep clean, and the much lighter upkeep an epoxy coating needs.
Key Takeaways
- Prep first: Clear the floor, tape plastic sheeting over the bottom of the drywall and any outlets, sweep up all loose dust, and plan where the dirty rinse water will end up before you add water.
- Match the stain: Vinegar or diluted muriatic acid for rust, clay cat litter or baking soda for fresh oil, an enzymatic or microbial cleaner for old set-in oil, and a non-acidic efflorescence remover for winter salt haze.
- Deep clean: Scrub the floor in sections with an alkaline degreaser and a stiff push broom, then rinse with a pressure washer in the 2,500 to 3,500 PSI range using a wide fan tip or a surface cleaner attachment.
- Epoxy is different: Skip soap and acids; dust mop weekly and mop monthly with half a cup of clear ammonia per gallon of hot water.
A deep clean takes some muscle and maybe a weekend, but once the floor is done, routine upkeep is quick.
Prepare the Garage
Before any water or chemicals go down, tackle the tidying. Four quick steps get the space ready.
Clear the Floor
You cannot clean around bikes and toolboxes. Move everything off the floor: cars, storage bins, and loose equipment.
Items on high shelves can usually stay, as long as they sit above the splash zone of your hose or pressure washer.
Protect Outlets and Drywall
Drywall acts like a sponge. Once it soaks up water it turns soft and weak and can grow mold, which the CDC links to health problems and recommends removing promptly (1).
Cover at least the bottom three feet of the wall with a plastic tarp or drop cloth and secure it with painter’s tape. The same barrier keeps water out of low electrical outlets.
Remove Dust and Debris
Sweep the whole floor. Get up as much dirt, leaves, and drywall dust as you can before the floor gets wet, or you will just push muddy sludge around later.
Pick a mild, dry day if you can. Concrete dries faster in warm air, and you should never wash a floor that could freeze overnight.
Decide Where the Dirty Water Goes
The water leaving your garage is not clean water. It carries oil, degreaser, and whatever the tires dragged in, and if it runs down the driveway to the curb it enters a storm drain, which in most towns empties into a creek or lake with no treatment at all. The EPA calls used motor oil the largest single source of oil pollution in American waterways and asks homeowners to clean spilled fluids up rather than hose them into the street (2).
That changes your order of operations. Lift the oil spots with a dry absorbent before the hose ever comes out, so the final rinse is carrying mostly dirt. Then aim that rinse at a lawn or gravel strip where soil can filter it, not at the curb, and check your city’s rules if you are flushing a lot of degreaser.
How to Remove Stains
With the garage empty and swept, look over the concrete for specific spots. These six methods cover the stains a garage usually collects.
- Time: 15 to 60 minutes
- Difficulty: Easy to Intermediate
1. Natural Acid for Rust
Rust shows up where metal tools, paint cans, or bikes have sat for a while. Acid breaks it down.
Pour pure white vinegar or lemon juice straight onto the rust and let it sit about 10 minutes to dissolve the oxidation. Then scrub hard with a stiff-bristled brush.
For stubborn rust, step up to muriatic acid (hydrochloric acid). Mix one part acid into 10 parts water, always adding the acid to the water and never the other way around.
Precaution
Acid does not stop working the moment you rinse. Whatever soaks into the pores keeps attacking the slab, and it will stop a future sealer or epoxy from bonding, so neutralize the spot before the final rinse. Flood it with a baking soda solution (roughly a cup of baking soda per gallon of water, or two pounds per five gallons if you treated a large area), leave it wet for at least 10 minutes, then flush repeatedly with clean water. Cheap pH strips pressed to the wet concrete confirm you are back near neutral, which is where a coating needs it.
2. Detergent Scrub
For general grime, powdered laundry detergent works well. It is gritty enough to scour concrete but rinses away clean.
Sprinkle the detergent over the stain. Dip a stiff deck brush in warm water and scrub the area into a thick paste. The grit lifts dirt out of the concrete pores. Rinse and repeat if needed.
3. Absorbents for Fresh Oil
Change your own oil and you probably have a few dark spots. Fresh oil comes up best with a dry absorbent, and clay-based cat litter is the classic pick. Baking soda, sawdust, and cornstarch pull oil just as well if that is what you have on hand.
Pour a thick mound over the spill. The pro move: grind it in with your shoe to force the absorbent into the pores. Leave it overnight, then sweep it up the next day. Repeat with fresh material if a shadow remains.
Sweep the used absorbent into a bag and put it in the trash. Do not sweep it out the door, where the next rain carries it straight to the storm drain.
4. Commercial Degreasers
When household methods stall, reach for a purpose-made cleaner. Plenty of grease and oil removers, like this bio-remediating concrete oil stain remover, are formulated for concrete.
Follow the label. Some are spray-and-rinse; others need to dwell for hours. For old, set-in oil, choose an enzymatic or microbial cleaner: it seeds the stain with oil-eating microbes that digest what has soaked deep into the slab, which a surface scrub cannot reach.
Those microbes need time and moisture to work, so an enzymatic treatment is a multi-day job, not an afternoon one. Keep the area damp and leave it alone rather than scrubbing it off early.
5. Removing Sealer and Old Paint
Planning to lay down new epoxy? Strip any old paint or sealer first, or the new coating will not bond.
A chemical stripper dissolves the old layers. Apply it as directed, let it bubble, and scrape it off. If the slab still has old carpet or tile adhesive stuck to it, a soy-based mastic remover is the product made for that residue.
For small paint drops, spot-clean with a solvent instead. Keep the garage door open for airflow.
For large areas, a floor grinder is the most effective tool. Hardware stores rent them. It mechanically takes off the top layer of concrete, paint, and mastic and leaves a fresh surface.
Note: Grinding throws off a lot of dust. Wear a good mask and goggles.
6. Salt Stains and White Haze
If your floor goes chalky white every winter, that is not mold and it is not dirt. It is efflorescence: moisture moving up through the slab dissolves salts inside the concrete and leaves them on the surface as the water evaporates. Road salt dripping off the car feeds the problem from above.
Start dry. Light deposits usually come off with a stiff brush and a shop vacuum, and staying dry matters here, because wetting the haze just dissolves the salt back into the slab for it to resurface later. For a film that will not brush off, use a non-acidic efflorescence remover, or a very dilute muriatic acid (roughly 40 parts water to 1 part acid) with the same protective gear and the same neutralizing step as the rust method above.
The white will keep returning as long as moisture keeps travelling through the concrete. The real fix is an impregnating silane or siloxane sealer, which blocks the route the salts take to the surface instead of just cleaning up after them.
Deep Cleaning the Garage Floor
After spot-treating the worst stains, wash the whole floor corner to corner.
- Time: 1.5 to 2 hours
- Difficulty: Intermediate
What You Will Need
- Alkaline degreaser or heavy-duty detergent
- Warm water
- Large bucket
- Push broom with stiff bristles
- Pressure washer (optional but recommended)
- Surface cleaner attachment (optional)
- Floor buffer (optional)
- Garden hose
- Floor squeegee
1. Mix Your Solution
If the floor holds a lot of oil residue, use a dedicated alkaline degreaser, the most effective cleaner for grease on bare concrete. For general dirt, laundry detergent or TSP (trisodium phosphate) is enough.
Fill the bucket with hot water, which cuts grease far better than cold. Mix in your cleaner per the package (roughly 1/3 cup of detergent per gallon).
2. Scrub With a Broom
Pour the solution over one section at a time. Do the whole garage at once and the soap dries before you can scrub it.
Let it sit 5 to 10 minutes to loosen the grime, then work your push broom hard. Start at the back and move toward the door so you are not standing in dirty water.
3. Rinse With a Power Washer
A garden hose works, but a pressure washer gives concrete the deeper rinse it usually needs. You can rent a power washer cheaply if you do not own one.
For concrete, 2,500 to 3,500 PSI is the useful window, and a machine closer to 3,000 PSI is what makes short work of ground-in oil shadows. Below that range you are mostly moving water around.
Use a fan tip (25 or 40 degrees) so you do not etch the slab. Push the soap and dirt out the door in slow, broad strokes, overlapping slightly to avoid leaving zebra stripes.
A surface cleaner attachment removes that striping risk almost entirely. It is a shrouded disc that rides flat on the floor with jets spinning underneath, so the nozzles stay a fixed distance from the concrete and the pressure lands evenly across a wide path. Match its PSI and GPM rating to your machine before you buy or rent one.
4. Finish With a Buffer (Optional)
For a showroom finish, rent a buffer. Its nylon pad agitates the surface deeper than a broom can.
Apply your solution, run the buffer over the wet floor, then rinse. This is the best way to restore concrete floors that look dull and tired.
Once you finish rinsing, push the standing water out with a large floor squeegee. It stops puddles and helps the slab dry hours sooner.
What Are Epoxy Floors?
Epoxy is a tough, resin-based coating applied over concrete to seal it. Hardeners and resins react and cure into a rigid, plastic-like layer.
Because that layer is non-porous, epoxy is far easier to clean than bare concrete. It resists stains, repels water, and looks sleek. A few common styles:
- Epoxy mortar: The strongest option, used in heavy industrial settings.
- Epoxy flake: Colored chips for a decorative look; good at hiding imperfections.
- Self-leveling: A smooth, glass-like surface.
- Anti-static: For spaces where static electricity is a hazard.
Test the Slab for Moisture First
A clean floor is not automatically a coatable floor. If moisture is still pushing up through the concrete from below, epoxy bubbles and peels away in sheets a few months later, and no amount of scrubbing prevents that.
The standard check is the plastic sheet test (ASTM D4263). Tape an 18 by 18 inch square of polyethylene sheeting flat to the slab, seal all four edges, and leave it alone for at least 16 hours. Lift it and look: condensation on the underside, or a dark damp patch on the concrete below it, means the slab is still passing moisture and is not ready for a coating. Run the test on a few spots, since one corner of a garage can be wet while the rest is dry.
How to Clean Epoxy Floors
Epoxy is low maintenance. Skip the heavy scrubbers and harsh acids; being too aggressive dulls the finish.
- Time: 30 to 60 minutes
- Difficulty: Easy
What You Will Need
- Dust mop (microfiber is best)
- Foam mop or microfiber pad
- Bucket
- Clear ammonia
- Hot water
- Towels
1. Sweep Weekly
Grit is the enemy of epoxy. Sand and dirt grind under your shoes like sandpaper and scratch the finish over time.
Run a wide dust mop with a microfiber head over the floor once a week. It lifts abrasive debris without scratching.
2. Wash Monthly
Epoxy does not hold dirt the way concrete does, so a monthly mop is usually enough.
Mix 1/2 cup of clear ammonia into a gallon of hot water. Dip a foam or microfiber mop and wring it out well; you want it damp, not soaking.
Mop in sections and rinse the mop often so you are not spreading dirt. The ammonia cuts grime without leaving streaks.
Avoid Soap-Based Cleaners
3. Scrub Stains Gently
Spill something sticky? Spot-clean it right away with hot water and a towel. For stubborn spots, use a soft kitchen sponge and a mild, non-abrasive all-purpose cleaner.
Never use steel wool or harsh scouring pads on epoxy. They scratch the topcoat on contact.
Removing Tire Marks from Epoxy
Hot tire pickup is common. Drive in on hot tires and the softened rubber can leave black marks on the coating.
Spray the marks with a standard concrete cleaner or Simple Green, let it dwell a few minutes, then scrub gently with a nylon brush or a melamine sponge (Magic Eraser). The marks should lift right off.
Park on a mat or a set of tire pads if the same two spots keep marking. It is easier than re-cleaning the same rectangle of floor every month.
FAQs
Clearing the Clutter
We treat garages like oversized junk drawers, and the clutter piles up fast. A clean garage does more than look tidy: it keeps pests and moisture from settling into the mess.
Clear the floor and you will probably turn up stains you forgot were there. Work in order and most of them come up: absorbent on the fresh oil, acid on the rust, a dry brush on the winter salt, then one full degrease and rinse over the top. To make next year’s cleanup shorter, seal the slab or add an epoxy coating so the spills sit on the surface instead of soaking into it.





