Check the label before anything touches the fabric
Somewhere under the cushions is a care label with a cleaning code. W means water-based cleaning is fine. S means solvent only (water leaves rings). WS means either. X means vacuum only, nothing wet, ever. Everything in this quest is safe for W and WS fabrics; for S and X, stick to the dry steps and skip the sprays.
Smells live in two places: loose particles sitting in the fibres, and residues soaked into them. The method is the same order every time: dry first, damp second, never soaked.
Strip and air
Take off every removable cover and cushion. Machine-wash covers if the label allows (cool, gentle). Stand the cushions somewhere with moving air, ideally outside on a dry breezy day. Sunlight and airflow remove more odour than any product; fabric that has been shut in a room smells of the room.
Find the actual source
Sniff-test before you treat. A general mustiness needs the whole-sofa routine; one bad patch (pet accident, spilt milk) needs targeted treatment where it happened, or the smell returns in a week.
The bicarb treatment
Vacuum the whole sofa first with the upholstery tool: seams, crevices, under cushions. Then sprinkle bicarbonate of soda generously over all fabric surfaces. A 500g tub from the baking aisle costs about £1.50 and does a three-seater.
Leave it at least four hours, ideally overnight. Bicarb neutralises acidic odour compounds rather than perfuming over them, and it needs contact time to work. Then vacuum every trace back off, slowly, going over each area twice.
Dry fabric only
Bicarb on damp fabric turns to paste and is miserable to remove. If you've had cushions outside, make sure they're bone dry before dusting.
Stubborn smells and keeping it fresh
For a smell that survives the bicarb (usually something soaked in), mix one part white vinegar to one part water in a spray bottle. Test on a hidden patch first, then mist (not soak) the area and let it dry naturally. The vinegar smell leaves within a few hours and takes the older smell with it. For pet urine specifically, use an enzymatic cleaner from a pet shop; nothing else breaks down the compounds, and everything else just delays it.
Aftercare is boring and effective: vacuum the sofa when you vacuum the floor, air the room daily, and give cushions a monthly turn. A sofa that breathes doesn't build up a smell in the first place.
