How to remove stains from carpet – a foolproof guide to DIY stain removal for red wine, grease or coffee stains

Everything you need to know about DIY carpet stain removal

Country-style living room with log burner, cream carpets, a black and white striped sofa on the right wall and an accent chair on the left
(Image credit: Future PLC/Dan Duchars)

Knowing how to remove stains from carpet may seem like an impossible task, especially when you’re faced with old set-in stains that seemingly refuse to budge. However, it is possible to return your flooring to its former, super-clean glory without damaging it in the process.

Of course, investing in one of the best carpet cleaners will aid when you want to deep-clean your carpets and remove everyday dirt and debris. But accidents and spills are a fact of life, whether it’s food, drinks, dirt, or even pet stains. So, finding a way to handle stains as they happen (and following the stain removal golden rules) is vital – because the longer you leave it, the trickier it can be to get out.

That’s why I spoke to cleaning and carpet experts to find out how to remove stains from carpet quickly, easily and most importantly – correctly.

What you’ll need

Step-by-step

1. First, remove any excess

To effectively remove carpet stains, your first step is always to remove any excess material around the stain, whether it's liquid, food, or another substance. You can pick up any excess with a kitchen towel or your hands, and then you’re ready to tackle the stain itself.

Cleaning expert at MyJobQuote, Sarah Dempsey, advises, 'If the stain contains solids or is a bit chunky, try to get as much of it up with a blunt knife or spoon beforehand.' Then, if it’s a liquid, you should grab something absorbent - like these SEEP Eco All Purpose Bamboo Cloths from Amazon - to soak up as much of the excess as possible.

Bedroom with a sofa and a dressing table at the back of the room, with wool carpet and a fluffy rug

(Image credit: Future PLC)

2. Dampen the stain and blot

The next step when removing stains from carpets is to dampen the stain. Of course, this may sound counterintuitive and may temporarily make the whole thing look worse, but you’ll need to trust the process. In fact, rehydration is key when it comes to treating stains - especially older, set-in stains.

You simply need to add a small amount of water to your stain, and then gently blot at it with a kitchen towel, or a clean microfibre cloth. Sarah explains, 'Avoid scrubbing the stain as this can make it even worse, causing the stain to embed deeper into the carpet. Instead, wet the stain and use a blotting technique.'

Metal cleaning caddy with cleaning products inside and around it

(Image credit: Future PLC/Polly Eltes)

The technique here is to be as gentle, but as firm as possible, so you can absorb as much of the stain as possible without agitating it too much.

As another tip, Sarah suggests, 'When wiping a stain, always wipe from the outside in to prevent the stain from spreading further. And avoid scrubbing the area with a coloured cloth as this could result in the colour spreading to your carpet, creating an even worse stain.'

3. Add the right cleaning product

All stains are different, which is why it’s important to note that you need to use different cleaning products to remove certain stains from carpet. In most cases, you’ll also need a soft-bristled brush - like this Polyethylene Scrubbing Brush from B&Q - at your disposal. Just remember to test this product on an inconspicuous area of your carpet before you tackle the whole thing.

So, this is what you’ll need for some of the most common carpet stains:

  • Red wine stains: If you’ve accidentally spilt red wine on your carpet, never fear. Cleaning expert at MyJobQuote, Sarah Dempsey, says the solution is to use ‘a cleaning solution of one tablespoon of dish soap, one tablespoon of white vinegar, and two cups of warm water.' However, you might need to have a few tries to get the red wine stain out completely.
  • Candle wax: Has your love of candles left you with candle wax stains on your carpet? It’s fairly easy to clean candle wax off carpet and upholstery, and actually it’s best to do this with one of the best irons and a tea towel. Then, you can steam the wax so it transfers onto the tea towel.

Bowl of white vinegar with a cloth in it, next to a mason jar full of cleaning cloths

(Image credit: Future/Polly Eltes)
  • Mud stains: It’s easy to tread mud into your carpet, especially during the wetter months of the year. To remove mud stains, the experts at Shark Clean advise making your cleaning solution by mixing two tablespoons of washing-up liquid into 500ml of cool water. They say, ‘Dab the solution onto the stain using a soft-bristled brush such as a toothbrush. Work inwards from the edges of the stain. Use kitchen roll to blot the stain, which should now lift. Finally, blot the spot with a microfibre cloth dipped in cool water to draw the soil and cleaning solution out.’
  • Oil stains: Knowing how to get oil out of carpet can save your bacon if you find yourself in a pinch, and experts suggest sprinkling bicarbonate of soda onto the oil before using a soft-bristled brush to rub it in. Then, leave it to work its magic for around 15 minutes before vacuuming up.
  • Coffee stains: If you want to know how to remove coffee stains, you’ll be happy to know that it’s easier than you’d think. Lily Cameron, a cleaning supervisor at Fantastic Services, suggests using an equal mix of vinegar, water and non-bleach detergent (or washing powder) to treat it. She says, 'Spritz this mixture on the spot, then rinse, and repeat, until the stain disappears. If this mix doesn’t work, you can also prepare a mixture of 1/4 cup of bleach to 1 cup and 1/4 cup of water in a spray bottle.'

4. Leave it to work its magic

No matter which stain removal solution you use, it’s important to give it time to work its magic. This is echoed by Lucy Rhead at Gtech. She says, ‘Leave it for about 10 minutes to allow the cleaning solution to settle deep into the fibres. Then, dip a microfibre cloth into some cold water and dab at the stain until all the carpet cleaner is removed.’

‘Be sure the area is completely dry before vacuuming,’ she adds. ‘You can use one of the best vacuum cleaners for this job, and, ideally, use a floorhead suitable for carpets. This will leave your carpet looking fresh and fluffy.

Wardrobes in a loft room next to a Velux window, with a shelf and a stool under the window

(Image credit: Future PLC/Polly Eltes)

5. If in doubt, use a spot cleaner

The above steps should be enough to get stains out of the carpet, but if you have particularly stubborn stains, you may need to call in reinforcements. This can come in the form of a spot cleaner or a full-size carpet cleaner.

In fact, Gill Baker, Head of Décor at B&Q, says, ‘A handheld carpet cleaner or upholstery wand is ideal, especially when paired with a mild detergent.’ This means that you can opt for targeted stain removal rather than having to clean your whole carpet.

Teal coloured bedroom with beige carpet, a metal framed bed with a cat on it, and a teal painted door

(Image credit: Future PLC/Davide Lovatti)

Some spot cleaners may even come with their own cleaning solution to give the appliance its best chance of removing the stain.

Then, in the future, you just need to make sure that you tackle any stains as soon as possible. Lucy at Gtech agrees, saying, ‘When it comes to stains, timing is everything. The sooner you address the spill, the less likely it is to set into your carpet.’

FAQs

What carpet stains cannot be removed?

Knowing how to remove stains from carpets is one thing, but there are some things that will present a particular cleaning challenge. Sarah told us, 'The most difficult carpet stains to deal with are red wine, blood, ink, and cooking oils.'

However, Sarah explained that 'There are no carpet stains that can’t be dealt with. While some may, unfortunately, leave some small staining behind, there are things you can do to make a stain seem less visible, such as the above methods.'

As mentioned, stains become more difficult to remove the longer they are left to sit. And, if you don't know what caused the carpet stain, it can be twice as hard to remove it. So in order to avoid a tricky cleaning task, always address stains as soon as possible, and use the correct cleaning method, if possible.

​​Does vinegar and baking soda remove old stains from carpet?

Yes, you can use vinegar and baking soda (bicarbonate of soda) to remove old stains from carpet, and you can either use them separately or together as a paste or combined with water to form a spray.

These two products are best suited to oil or liquid-based stains as the baking soda can absorb excess moisture, and the vinegar can help to loosen the stain and deodorise the area. However, you should be wary of oversaturating your carpet with this mixture. Aim to leave it for around three hours before cleaning.

So, there you have it! By following these steps, you should be able to remove stains from carpet in no time.

Lauren Bradbury
Content Editor (House Manual)

Lauren Bradbury has been the Content Editor for the House Manual section since January 2025 but worked with the team as a freelancer for a year and a half before that. She graduated with a Bachelor’s degree in English and Creative Writing from the University of Chichester in 2016. Then, she dipped her toe into the world of content writing, primarily focusing on home content. After years of agency work, she decided to take the plunge and become a full-time freelancer for online publications, including Real Homes and Ideal Home, before taking on this permanent role. Now, she spends her days searching for the best decluttering and cleaning hacks and creating handy how-to guides for homeowners and renters alike, as well as testing vacuums as part of her role as the Ideal Home Certified Expert in Training on Vacuums, having spent over 110 hours testing different vacuum models to date!

With contributions from

You must confirm your public display name before commenting

Please logout and then login again, you will then be prompted to enter your display name.