Remove an oil stain from a driveway
Oil soaks into concrete because concrete is porous. A fresh spill can usually be pulled out almost completely if you get an absorbent on it quickly, while an old, dark stain takes a stronger cleaner or a poultice that draws the oil back up over a day or two. Asphalt is different: it's made with petroleum, so the solvents that help on concrete can soften it. Know which surface you have, then work from the mildest method up.


Why oil soaks into a driveway
Concrete looks solid, but it's full of tiny pores and channels. Motor oil is thin enough to wick into those pores and spread below the surface, which is why a stain often looks bigger a day later than when it dripped. Over weeks, dirt sticks to the oily surface and the oil partly oxidizes, turning the spot darker and harder to lift. That's why speed matters: an absorbent on a fresh drip pulls most of it out before it soaks in deeply.
To remove an older stain, you need something that loosens the oil and something that pulls it back up. Dish soap and degreasers break the oil into droplets that rinse away. A poultice, a paste of fine absorbent mixed with a cleaner or solvent, works slowly: the liquid dissolves oil in the pores, and as the paste dries it draws the oil up into itself. Asphalt driveways are bound with petroleum, so solvents and harsh degreasers can soften or discolor them. On asphalt, absorbents, dish soap and cleaners labeled for asphalt are the safe choices.
Why the stain won't come out
Oil left for days or weeks spreads into the pores below the surface.
Water alone or a quick rinse just spreads the surface oil.
Degreasers and poultices need time to work into the pores.
Fresh drips keep adding oil to the same spot.
Bare concrete absorbs oil much faster than sealed concrete.
| You notice | Likely cause | Start at |
|---|---|---|
| Oil is still wet and shiny | Fresh spill | Step 1 |
| Dark spot, a few days old | Surface oil and dirt | Step 2 |
| Dark stain on concrete, months old | Oil deep in the pores | Step 4 |
| Stain on an asphalt driveway | Use mild methods only | Step 2 |
| Faint shadow left after cleaning | Needs a rinse or another round | Step 5 |
| New drips keep showing up | Car is leaking | Step 6 |
Let's fix it
- Soak up fresh oil right awayBlot any standing oil with paper towels or rags without wiping it around. Pour a thick layer, about 1/2 inch, of plain clay cat litter over the spot and a few inches past the edges. Sawdust, cornstarch or a commercial oil absorbent also work. Grind it into the surface with the sole of your shoe to break the litter into a powder that pulls oil out of the pores. Leave it for several hours or overnight, then sweep it into a bag. Repeat if the litter came up dark and the spot is still wet. Keep it dry: rain on the litter can spread the oil.

- Scrub with dish soap or a degreaserWet the stain lightly. Squirt on a generous amount of grease-cutting dish soap, or spray on a concrete and driveway degreaser following its label. Scrub hard with a stiff nylon brush for several minutes, working in different directions. Let it sit for 10 to 15 minutes, or as long as the label says, without letting it dry out. Then soak up the dirty suds with cat litter or rags before you rinse with a little water. On asphalt, use only dish soap or a cleaner labeled safe for asphalt, and skip metal-bristle brushes, which scratch the surface. Repeat once or twice if the stain is lighter but still visible.

- Try a commercial oil stain removerIf soap and degreaser leave a shadow, use a product made for oil stains on concrete or asphalt. Some are enzyme or microbe cleaners that slowly break down the oil, others are powders or gels that you spread on, let dry and sweep off. Match the product to your surface, since many concrete products aren't safe on asphalt. Follow the label for how long to leave it, often several hours to a day, and how to rinse. Test it first in a small out-of-the-way spot, especially on colored or stamped concrete, pavers or a sealed surface, since some cleaners can lighten or dull them.

- Lift an old concrete stain with a poulticeFor deep, old stains on concrete, make a poultice: mix a fine absorbent such as diatomaceous earth, powdered cat litter or baking soda with enough cleaner to make a paste like peanut butter. Use a degreaser for most stains, or a solvent such as mineral spirits for heavy, old oil, outdoors, away from any flame, and with gloves and eye protection. Let solvent-soaked rags and poultice dry outdoors before bagging them, since oily, solvent-soaked material can catch fire. Spread it about 1/4 to 1/2 inch thick over the stain and an inch past the edges. Cover it with plastic sheeting and tape the edges so it dries slowly, which gives it time to draw the oil out. After 24 hours, remove the plastic and let it dry completely, then scrape and sweep it up. Repeat if needed. Don't use solvent poultices on asphalt.

- Rinse and check the resultOnce the cleaner or poultice is off, rinse the area with a small amount of water and a push broom, soaking up the rinse water with litter or rags rather than letting it run to the street. Let the concrete dry completely, since wet concrete looks darker than it is. A faint shadow often remains on stains that sat for a long time; a second round of poultice usually lightens it more. A pressure washer helps on concrete, used with a fan tip held at least a foot away and kept moving, since a narrow tip held close can etch the surface. On asphalt, use low pressure and a wide fan tip, or skip the pressure washer, since it can loosen the surface.

- Stop new stainsFix the leak or have it checked, since a car that drips oil can also run low on it. Until then, keep a drip pan, a commercial driveway mat or a flattened cardboard box under the engine. Once the concrete is clean and fully dry, a penetrating concrete sealer (applied as the label says, usually after the concrete has dried for a day or two) makes future spills bead up so they wipe away. Asphalt driveways are protected by sealcoating every few years, which also covers light stains. Keep a bag of cat litter in the garage for fast cleanup.

Watch it done
- The spot is gone or only a faint shadow when the concrete is dry
- No oily sheen when you splash water on it
- No new drips after the leak is fixed
Still dark? Repeat the poultice, or ask a pressure washing pro.
If it comes back
If the stain seems to come back after it dries, oil deep in the concrete is wicking back to the surface. Another poultice or two usually pulls more of it out. Some very old stains won't disappear completely, but they fade with each round.
If the concrete is cracked or flaking where the oil sat, see how to patch a crack in concrete. For an asphalt driveway with cracks, see how to fill driveway cracks before you sealcoat.
If water pools on the driveway or runs toward the house when you rinse, see the guide for water pooling near the foundation.
What a pro typically charges (a rough estimate; prices vary by area): A pressure washing service typically charges about $100–$300 to clean a standard driveway, and more for stain treatment. Sealing concrete often adds a few hundred dollars.
Find a pressure washing pro near you