Skip to content
Grandma'sCleaning Tips
Menu

Oil · Carpet

Oil Stain on Carpet — How to Get It Out

Oil stains on carpet need immediate blotting and a grease-cutting treatment to lift the oil without spreading it deeper into the fibers. Fresh spills come out more easily, but even set-in oil responds to baking soda and dish soap if you work methodically. Never rub an oil stain outward — you'll only push it into a larger area.

  • Time45 min
  • DifficultyMedium
  • MaterialCarpet

Watch out

WarningDo not use hot water on oil stains in carpet — heat can set the oil and make it bond permanently to synthetic fibers.

TipTest the dish soap solution on an inconspicuous corner of the carpet first to make sure it doesn't discolor or damage the fibers.

TipAvoid soaking the carpet backing — too much water can cause mildew or loosen the adhesive that holds the carpet down.

Do this

  1. Blot up excess oil

    Press a clean white cloth or several layers of paper towel firmly onto the stain to soak up as much oil as possible. Work from the outside edge toward the center so you don't spread the stain wider.

    Change to a fresh section of cloth as soon as it looks saturated — a dirty cloth just moves oil around.

  2. Cover with baking soda

    Sprinkle about 1/2 cup of baking soda generously over the entire stain, making sure every oily spot is covered. Let it sit for at least 15 minutes so the powder can absorb the oil from the carpet fibers.

    For a very fresh spill, you can leave the baking soda on for several hours or overnight to pull out more grease.

  3. Vacuum thoroughly

    Vacuum up all the baking soda using your regular vacuum cleaner. Go over the area several times to make sure you've removed all the powder.

  4. Apply dish soap solution

    Mix 1 tablespoon of dish soap with 2 cups of warm tap water (comfortable on your hands, about 100 °F) in a bowl. Dip a clean cloth into the solution, wring it out well, and blot the stain repeatedly.

    Dish soap is designed to cut grease, so it works better on oil than laundry detergent.

  5. Work the soap in gently

    Use a soft brush or an old toothbrush to work the soapy solution into the carpet fibers with gentle circular motions. Brush for about one minute, then blot again with a clean damp cloth to lift the loosened oil.

  6. Rinse and blot dry

    Dampen a fresh cloth with plain cool water and blot the area to remove soap residue. Press a dry towel firmly onto the carpet to soak up as much moisture as possible, then let the spot air-dry completely.

Common questions

What if the oil stain is old and already set in?+

Start with the baking soda step and leave it on overnight to draw out as much oil as possible. You may need to repeat the dish soap treatment two or three times, letting the carpet dry completely between rounds.

Can I use baking soda on all carpet types?+

Baking soda is safe for most synthetic carpets like nylon and polyester. On wool or silk rugs, test it first in a hidden spot — it's mildly alkaline and can sometimes dull natural fibers. For delicate or antique rugs, call a professional cleaner instead.

Will a steam cleaner help remove oil from carpet?+

Not on its own — steam cleaners use heat and water, and oil repels water. You must treat the stain with baking soda and dish soap first to break down the grease. Once the oil is lifted, a steam cleaner can help rinse out any remaining soap residue.

What if I don't have baking soda?+

Cornstarch or talcum powder work the same way to absorb fresh oil. Sprinkle it on, wait 15 minutes, then vacuum. For the cleaning step, dish soap is essential — laundry detergent won't cut grease as effectively on carpet.

Same stain, other materials

More stains on carpet