Stains are a fact of life, but the greasy oil marks that are notoriously difficult to remove once they set in.
The good news is it doesn’t have to be hard. With a few household items and the right method, you can remove most oil stains from your clothes for good.
KEY TAKEAWAYS
- Act fast, as fresh oil stains lift far more easily than set-in ones.
- The simplest method wins: bicarb soda (or baking powder) for 10 minutes, then rub in dishwashing liquid, then a normal wash.
- Skip the viral baking-paper-and-iron trick. It did nothing in my test.
- Never tumble-dry a stained garment; the heat sets the stain for good.
- Set-in stains need a longer soak and, in some cases, may only fade rather than vanish completely.
How to get oil stains out of clothes (the method that worked for me)
To put these tips to the test, I deliberately spilt olive oil on a grey cotton t-shirt and left it to settle into the fabric.
That’s when I discovered I’d run out of bicarb soda. Rather than head back to the shops, I reached for baking powder instead. I covered the oil stain and left it for about 10 minutes. When I brushed off the excess, the stain had already visibly improved (see below).
Next, I tried a trick I’d seen on social media, laying baking paper over the stain and ironing it to lift the oil. For me, this did nothing, so I wouldn’t bother.
What actually worked was the simple stuff. I squirted dishwashing liquid straight onto the stain, rubbed it in with my fingers and let it sit for a few minutes. Then I washed the T-shirt as normal. After a single wash cycle, the oil stain was completely gone (see above).
The quick version
- Blot up any excess oil with a paper towel.
- Cover the stain with baking powder (or bicarb soda) and leave for 10 minutes, then brush off.
- Apply dishwashing liquid directly to the stain and rub it in.
- Let it sit for a few minutes.
- Wash as normal and air-dry — check the stain has gone before putting it through the dryer.

Other options, depending on what you’ve got
The method above is the one I’d reach for first. These are worth knowing for specific situations.
No baking soda on hand? A grease-cutting dishwashing detergent on its own will lift most fresh oil stains. Work a little into the stain, scrub gently with a soft toothbrush until it starts to lift, then wash as normal.
Got a laundry stain remover? Make a paste of three parts baking soda to one part water, apply it to the oil stain and let it dry completely. Brush off the powder, spray with your stain remover per the instructions, then wash. This is good for stains that have settled.
How to remove dried or set-in oil stains
The method I used works for stubborn oil stains, too. This time I made a paste out of baking powder (bi carb works fine too) and dishwashing liquid. Applied it to the stains and let it sit for a few hours. Wash and normal.
Fabric-specific tips for oil stains
Different fabrics need slightly different care, so check the care label before you start.
Cotton is the most forgiving. It handles a dish soap pretreat, a baking soda paste and a warm wash well, so you can treat oil stains fairly aggressively.
Synthetics like polyester and nylon hold onto grease, so blot the excess first and pretreat with dish soap before washing. Use warm rather than hot water, as high heat can set the stain into the fibres.
Silk and linen are delicate, so skip the scrubbing brush and harsh rubbing. Gently dab dish soap onto the oil stain, leave it for a moment, then rinse. For valuable silk pieces, take them to a dry cleaner.
Colour-fastness warning: always test any method on a hidden spot first, such as an inside seam. Some dyes run, and dish soap or stain remover can lift the colour as well as the stain.
How to stop oil stains from setting
The single most important rule is never tumble-dry your oil-stained clothes. The heat bakes the grease into the fabric for good. Always check the spot in good light before drying, and air-dry if you’re not sure it’s gone.
Speed matters too. Treat oil stains as soon as you can, blotting up the excess with a paper towel before it soaks in. Fresh stains lift far more easily than set-in ones, so a quick pretreat with dish soap can save the garment.
Dried stains need a longer pretreat. Work dish soap into the oil stain, leave it for at least 30 minutes, then cover it with a baking soda paste to draw out the grease. Wash in warm water and air-dry, repeating if the stain hasn’t fully lifted.
Old stains respond best to a dish soap soak or a baking soda paste left on for several hours, followed by a warm wash. For stubborn marks, a small amount of WD-40 can re-soften set-in grease so detergent can lift it, just spot-test first.
Yes, oil can permanently stain clothes if it’s been heat-dried or left untreated for a long time. The sooner you treat it, the better your chances. Even then, some old stains may only fade rather than disappear completely.