Quick answer: Vacuum the sofa, sprinkle bicarbonate of soda over fabric surfaces and leave it overnight. Vacuum it off, mist the fabric with a 50/50 mix of white vinegar and water, and let it air dry. For smells in the foam, tuck activated charcoal bags between the cushions for 24 to 48 hours, or steam clean if the care label allows it.
Cigarette smell is one of the hardest odours to shift from a sofa. It is a common problem in the UK, whether you have bought a second-hand sofa, moved into a home where the previous owner smoked, or you are trying to freshen up a sofa before guests arrive. The good news is that you can usually fix it yourself with cheap household products, as long as you treat the fabric and the foam underneath, not just the surface.
Why does cigarette smell stick to a sofa?
Cigarette smoke leaves behind nicotine and tar, which bond to fabric fibres and sink into the foam filling. That is why opening a window helps for a few hours and then the smell comes back. Air fresheners and scented sprays only cover the smell for a while. They do not remove the residue that causes it. To get rid of the smell properly, you need products that absorb or neutralise that residue, and you need to give them time to work.
How do you check your sofa’s care code?
Before you use any liquid on your sofa, find the care tag. It is usually sewn under a cushion or on the underside of the sofa. The letter on the tag tells you what is safe to use.
| Care code | What it means | What you can do |
|---|---|---|
| W | Water-based cleaning is safe | Use the vinegar mist and steam steps below |
| S | Solvent cleaning only | Use bicarbonate of soda and charcoal only, no water or vinegar |
| WS | Water or solvent cleaning is safe | Use every step in this guide |
| X | No water or solvent cleaning | Vacuum and charcoal only, then call a professional |
If the tag is missing or unreadable, test any product on a hidden patch first and wait for it to dry before you treat the whole sofa. Our full guide to how to clean a sofa explains care codes in more detail.
What do you need to remove cigarette smell from a sofa?
- A vacuum cleaner with an upholstery attachment
- Bicarbonate of soda (a full box for a three-seat sofa)
- White vinegar and a clean spray bottle
- A soft brush and several clean white cloths
- Activated charcoal bags (optional, for deep smells)
- A steam cleaner (optional, only if the care code allows water)
How do you remove cigarette smell from a sofa, step by step?
Step 1: Vacuum Every Surface
Take the cushions off and vacuum the seat underneath, the back, the sides, the creases and the gaps between cushions. Use the upholstery attachment and go slowly. Loose ash and dust hold a surprising amount of smell, and removing them first lets the next steps reach the fabric properly. Vacuum the cushions on both sides too.
Step 2: Bicarbonate of Soda, Left Overnight
Sprinkle bicarbonate of soda generously over every fabric surface and brush it gently into the fibres with a soft brush. Leave it overnight if you can. Bicarbonate of soda is a mild alkali, and it neutralises the acidic compounds in smoke residue rather than covering them up. The next day, vacuum it all off with the upholstery attachment. For a strong smell, repeat this step a second night. If the cushion covers are machine washable, take them off and wash them separately, and treat the foam underneath at the same time.
Step 3: Vinegar Mist
Mix equal parts white vinegar and water in a spray bottle and mist the fabric lightly. Do not soak it. You want the surface damp, not wet, because soaking can push the smell deeper into the foam and leave water marks. Open the windows and let the sofa air dry completely. The vinegar smell is sharp at first, but it fades as it dries, usually within a few hours, and it takes much of the smoke smell with it. Skip this step if your care code is S or X.
Step 4: Steam Clean, If the Label Allows It
Steam cleaning works well on durable, water-safe fabrics because the heat loosens the tar and oils that hold the smell. Keep the nozzle moving and do not hold it in one place. Let the sofa dry fully afterwards, with windows open or a fan running. Do not steam clean silk, velvet or any fabric coded X, and do not steam a sofa that is still damp from the vinegar step.
Step 5: Activated Charcoal for Deep Smells
If the smell is still there after the steps above, it is sitting deep in the foam. Tuck small bags of activated charcoal between and under the cushions and leave them for 24 to 48 hours. Charcoal keeps absorbing odour from the foam long after surface treatments have done their work. Air the room well during this time, and repeat with fresh bags if the smell is still faint.
How do the methods compare?
| Method | How it works | Time needed | Best for | Watch out for |
|---|---|---|---|---|
| Bicarbonate of soda | Absorbs and neutralises smoke compounds | Overnight | Most fabric sofas, first step for any smell | Vacuum thoroughly or white dust remains |
| White vinegar mist | Acidic wash neutralises alkaline smoke residue | A few hours to dry | W and WS coded fabrics | Never soak the fabric; skip on S and X codes |
| Steam cleaning | Heat loosens tar and oils in the fibres | An hour, plus drying time | Durable, water-safe fabrics | Can damage silk, velvet and X-coded fabric |
| Activated charcoal | Absorbs odour from deep in the foam | 24 to 48 hours | Smells that survive surface cleaning | Works slowly; needs fresh bags for heavy smells |
| Airing and sunlight | Fresh air and UV break down surface odour | A full day | A light smell, or as a finishing step | Will not fix a deep smell on its own |
| Professional cleaning | Extraction machines clean fabric and foam together | A few hours | Heavy, long-term smells and delicate fabrics | Costs more; choose a cleaner with upholstery experience |
What should you not do when cleaning a smoke-smelling sofa?
- Do not soak the fabric. Soaking pushes smoke residue deeper into the foam and can leave water marks.
- Do not rely on scented sprays or plug-in fresheners. They mask the smell and add their own chemicals to the room.
- Do not steam clean a sofa coded S or X, or any delicate fabric you are unsure about.
- Do not skip the hidden-area test. A cleaner that is safe on one fabric can mark another.
- Do not use bleach or harsh chemical cleaners on upholstery. They can strip colour and damage fibres.
When should you call a professional?
Call a professional upholstery cleaner if the smell is still strong after two full rounds of the steps above, if the foam itself is saturated, or if the sofa is leather, silk or another delicate fabric. It is also worth it for a rented property, where a lingering smell can put your deposit at risk. A professional extraction clean reaches the foam in a way that home methods cannot. The same odour methods in this guide also work on a mattress, as explained in our guide to how to clean a mattress.
Frequently Asked Questions
How long does it take to remove cigarette smell from a sofa?
A light smell usually goes after one overnight bicarbonate of soda treatment. A heavy, long-term smell takes longer: two rounds of bicarbonate of soda plus a vinegar mist, then charcoal bags for a day or two.
Will the vinegar smell stay on my sofa?
No. The vinegar smell is strong while the fabric is damp, but it fades as the sofa dries, usually within a few hours if the windows are open.
Can I use bicarbonate of soda on a leather sofa?
No. These methods are for fabric sofas. For leather, wipe the surface with a damp cloth and a leather cleaner, then apply a leather conditioner. Do not use vinegar or bicarbonate of soda on leather.
Why does the smell come back on damp days?
Smoke residue sits deep in the foam, and humidity releases it back into the air. Repeat the activated charcoal step, or book a professional extraction clean if it keeps returning.
Will washing the cushion covers be enough?
It helps, but it is rarely enough on its own. The foam, the frame and the fixed parts of the sofa hold smell too, so treat the whole sofa, not just the covers.
With the right order, vacuuming, bicarbonate of soda overnight, a light vinegar mist and time, most cigarette smells come out of a fabric sofa without any special products. Start with the cheapest steps first and only move to steam cleaning or a professional when the smell proves stubborn.
