To how to remove oil stain from fabric, act quickly: blot excess oil, apply a generous layer of baking soda or cornstarch to absorb the oil, wait 15–30 minutes, then brush away and treat with dish soap (Dawn works best) before washing. For dried or set stains, pre-treat with WD-40 first to re-loosen the oil before applying soap.
Oil stains – from cooking, salad dressing, lotion, or engine grease – all follow the same chemistry. Oil doesn’t dissolve in water, which is why plain washing doesn’t work. You need a degreaser or surfactant to emulsify the oil so it can be rinsed away.
Step-by-Step Method
Step 1 – Blot, don’t rub: Use a clean cloth to blot up as much oil as possible. Rubbing spreads it.
Step 2 – Cover with powder: Sprinkle baking soda, cornstarch, or talcum powder generously over the stain. These powders absorb the oil out of the fibers. Leave for 15-30 minutes, then brush away.
Step 3 – Apply dish soap: Put a dime-sized amount of grease-fighting dish soap (Dawn is the gold standard) directly on the stain. Work it in gently with your fingers or a soft brush.
Step 4 – Wait: Let the soap sit on the stain for 30 minutes to an hour. The longer the better for stubborn stains.
Step 5 – Wash in the warmest water safe for the fabric.
Step 6 – Check before drying: If the stain is still visible, repeat the process. Never put in the dryer – heat permanently sets the stain.
By Oil Type
| Oil Type | Best Treatment | Extra Tips |
| Cooking oil / olive oil | Baking soda absorption + Dawn | Works on both fresh and day-old stains |
| Salad dressing | Baking soda, then dish soap + H2O2 | Dressing has both oil and acid |
| Body lotion / sunscreen | Dish soap + warm water | May need 2 treatments |
| Motor / engine grease | WD-40 first, then heavy dish soap | Use Lestoil for very stubborn grease |
| Butter / animal fat | Baking soda + dish soap | Treat while warm if possible |
Treating Old, Dried Oil Stains

- Apply WD-40 or petroleum jelly to re-liquify the dried oil – let sit 20 minutes
- Then apply baking soda on top, press in, let absorb for 20-30 minutes
- Apply dish soap, work in thoroughly, let sit 1 hour
- Wash in warm water with an enzyme-based detergent
- Repeat if needed – old stains may need 2-3 treatments
Safe for All Fabrics?
| Fabric | Safe Methods | Avoid |
| Cotton | All methods | Bleach on colored cotton |
| Polyester | Dish soap + warm water | High heat drying |
| Silk / delicate | Enzyme cleaner, cold water only | WD-40, hot water, baking soda scrubbing |
| Wool | Cold water + dish soap, hand wash | |
| Denim | Full method + Lestoil for grease | None – denim is very durable |
Final Thoughts
The baking soda + dish soap method handles the vast majority of oil stains on fabric. Speed helps but isn’t mandatory – with WD-40 and patience, even dried, washed-and-missed stains can often be removed. The most important rule: never dry the item until the stain is completely gone.
