Chocolate is a mix of colour and fat, which is why warm chocolate smears and sets. The trick is to harden it first, then lift the solids before treating the greasy mark.
Don't rub warm chocolate — you'll spread it. Harden it first with an ice cube in a bag, then it lifts in pieces.
- Clean white cloths / kitchen roll
- Washing-up liquid
- White vinegar
- Bicarbonate of soda
- Cool or lukewarm water
- Ice cubes in a freezer bag
Step by step (carpet)
- Harden it by holding a bagged ice cube against the chocolate until firm.
- Scrape off the solid pieces gently with a blunt knife or spoon.
- Treat the greasy mark with a teaspoon of washing-up liquid in 250ml of lukewarm water; dab and blot.
- Rinse with clean cool water and press dry.
- Repeat if a brown shadow remains.
Because there's fat involved, washing-up liquid (a mild degreaser) does most of the work — a vinegar splash helps with the colour.
By surface
🛋️ Sofas & upholstery
Check the cushion's cleaning code first: W or W/S means the method above is fine used sparingly; S means solvent-clean only, so leave that to a professional. Use less water than on carpet and blot, don't soak.
🧶 Wool & delicate rugs
Chocolate is a fat stain first, and wool holds onto grease — so scrape off everything that lifts, then use the mix sparingly rather than chasing it with water. Use cool water and a gentle touch — wool can ‘brown’ if over-wet and some rug dyes run. Test a hidden corner first, and for an antique, hand-knotted or silk rug, don't gamble — leave it to us.
🛏️ Mattresses
Let chocolate set hard before you touch a mattress — scraping it while it's soft just presses the fat deeper into fabric you can't rinse. You can't rinse a mattress, so go light: blot, treat sparingly, then use bicarbonate of soda to absorb the rest. Never soak it — trapped moisture leads to mould and smells.
✅ Do
- Harden before scraping
- Blot from the outside in
- Test on a hidden patch first
- Use a degreasing washing-up liquid
🚫 Don't
- Rub warm chocolate
- Use hot water
- Use bleach
- Over-wet the area
Tried it and the chocolate mark is still there — or it's a wool rug, a mattress or something you'd hate to ruin? Don't keep scrubbing; that's how a stain turns permanent. We can often draw out what's left with professional hot-water extraction, and we'll tell you honestly what we expect to get up before we start. We usually reply within 15 minutes, prices are fixed with no VAT (rooms from £20, £50 minimum call-out), and we can normally fit you in within two to three days — worth sending that photo sooner rather than later, as the longer a stain sits, the harder it is to lift. Watford family business — 25 years' experience, fully insured — and if you're not happy with the result, we re-clean free. That's our 100% satisfaction guarantee.
Get my free quote 💬 WhatsApp us a photo of the stainCommon questions
Do chocolate stains come out of carpet?
Usually, yes — chocolate is mostly cocoa solids and fats rather than a true dye, so a fresh stain responds well. Let it harden, scrape off as much solid as you can, then work on what's left. Stains that have been walked into the pile are harder, but they still tend to fare better than dye-based stains like curry or hair dye.
Should I use hot or cold water on a chocolate stain?
Start cool or lukewarm. Heat melts the cocoa butter and spreads it, and milk chocolate contains proteins that hot water can set into the fibres. Professional hot-water extraction is different — the heat, cleaning solution and powerful suction work together, so the stain is flushed out rather than cooked in.
Can you get chocolate out of a fabric sofa?
In most cases, yes. Sofa fabrics vary far more than carpets do, so on delicate fibres we always test an inconspicuous spot first. Our upholstery cleaning is a fixed £20 per seat, and if you're unsure whether the mark will lift, send us a photo on WhatsApp for a free honest assessment before you book.