How to Clean a Fabric Sofa at Home Without Damage (2026)

Check the care tag first, vacuum the entire sofa, then treat stains with a cleaner that matches the cleaning code on that tag. Most fabric sofas can be refreshed in an afternoon with a vacuum, a clean white cloth and a little mild detergent, and the whole job takes about an hour of active time plus however long the fabric needs to dry.

Knowing how to clean a fabric sofa at home is mostly about restraint. Too much water, too much scrubbing or the wrong cleaner leaves rings, shrinks the fibers or bleeds the dye, and there is no undoing it. If you take the label seriously and work in small sections, you can handle nearly everything except old grease, dye transfer and a soaked cushion.

What You Need

What You Need

Gather everything before you start. Halfway through a wet-clean you will not want to hunt for a clean cloth, and using a grimy one puts the soil straight back into the fabric.

  • Vacuum with an upholstery attachment — a crevice tool for the seams between cushions is worth having.
  • Soft-bristle brush — a clean toothbrush works in tight corners.
  • Clean white microfiber cloths — several, because you will rinse them constantly. White shows the soil and leaves no dye of its own.
  • Mild liquid detergent — a small amount in warm water is the workhorse solution for water-safe fabrics.
  • Baking soda — for deodorizing, and for lifting fresh grease marks dry.
  • White vinegar — useful diluted on some fabrics, harmful on others, so read on before you use it.
  • Spray bottle and a small bowl — for mixing and for blotting.
  • Enzyme cleaner — worth having only if pets are in the picture.
  • Distilled water — optional, but it is the single best defense against water rings.

Everything on this list is a general-purpose tool. Which of them you are allowed to put on your particular sofa depends entirely on the cleaning code and the fibre, which is the next thing to check.

Step-by-Step: How to Clean a Fabric Sofa at Home

1. Check the Care Label and Test the Upholstery

Find the tag before anything else. It is usually stapled under the seat cushions, along the frame, or sewn into a back cushion cover. Turn the sofa on its side if you have to — a tag hiding under a cushion is the reason so many people guess.

The cleaning code on that tag is a single letter, and it tells you exactly which family of cleaner is permitted:

  • W — water-based cleaners only. Mild detergent diluted in water is fine. Most cotton, linen and microfibre sofas carry this.
  • S — solvent or dry-clean only. Water will damage or stain the fabric. Velvet, silk blends and many wool upholstery sit here.
  • WS or SW — either water-based or solvent-based cleaner is allowed.
  • X — vacuum only. Nothing wet goes on this fabric at all, and professional treatment is the only option.

If the tag is missing or too faded to read, the safe default is to assume W, use the gentlest water-based method, and never use a solvent. The recurring advice in r/CleaningTips threads is the same: when the code is unknown, treat the fabric like the most delicate thing you own.

Then spot test. Put a small amount of your cleaner on a hidden seam or the underside of a cushion, leave it for ten minutes, then check for colour change, bleeding or stiffness. If the fabric behaves, work on the visible area. If it shifts colour or goes stiff, stop and try a drier method.

2. Remove Debris and Vacuum Thoroughly

Cleaning starts with getting the dirt out, not dissolving it. Vacuum the sofa before you put any water near it, and take the cushions off so you can reach the frame line and the crevices where crumbs and pet hair collect.

Use the upholstery attachment on the seat, back and arms, working slowly so the suction actually pulls soil out of the pile. Run it along every seam and into the gap where the back cushions meet the arms. Most people skip the gaps and then wonder why the sofa still looks dirty after treating stains.

For delicate fabrics, go gentler. On velvet, chenille or anything with a deep pile, brush with the soft-bristle brush in the direction of the nap instead of using high suction. On loose covers, take them off and shake them over the porch before you vacuum.

Vacuum again after you finish wet cleaning, once everything is dry. That second pass picks up the residue that dried into the fabric and it makes a visible difference.

3. Treat Spots With a Fabric-Safe Solution

How you clean sofa fabric depends on what the spot is made of. Fresh liquid gets blotted, dried stains get brushed first, and anything that has soaked in needs a longer dwell rather than more scrubbing.

Mix a mild detergent solution first: roughly one tablespoon of clear liquid detergent in a cup of warm water. Stir it, do not shake it. Test it on a hidden seam, then lay a clean white cloth over the spot and press down.

Blot from the outside of the stain toward the middle, always working inward. Every pass picks up some of what came off the fabric, so switch to a clean section of the cloth often. Rubbing pushes the soil deeper into the pile and spreads it, which is why a blot leaves a better result than a wipe.

  • Fresh liquid — blot immediately with a dry white cloth before anything else. Speed matters more than the product.
  • Solid debris — vacuum or scoop it up first. Water turns crumbs into a smeared patch.
  • Dried or set-in stains — brush with a stiff dry brush first to break the surface apart, vacuum, then work the solution with a longer dwell of 10 to 15 minutes before blotting.
  • Grease or oil — skip the water. Cover the spot with baking soda, leave it 15 minutes, vacuum it off, then treat what remains with a W-compatible cleaner.
  • Wine, coffee or tea — blot while fresh; once dry, treat the whole panel rather than the mark.
  • Pet urine — blot outward from the centre with paper towels, then saturate the area (not just the surface) with an enzyme cleaner and let it sit for the time printed on the label. Without reaching the foam, the smell comes back within days.
  • Water rings and marks — a ring is not a stain. It forms when one area dries lighter or darker than the rest, so treat the entire panel from seam to seam with the same solution and let it dry evenly.

On S-coded fabric, water is off the table. Work dry or use a solvent-based upholstery cleaner, keep moisture minimal, and treat the whole panel with the same product.

To keep rings from appearing in the first place, use the smallest amount of cleaner that will do the job, blot rather than saturate, prefer distilled or filtered water, and never scrub in circles. Experienced users on r/howto and r/CleaningTips keep repeating the same advice: whole-panel treatment, not spot treatment, is what stops a stain from coming back as a clean ring around a dirty patch.

One question comes up constantly — can you use dish soap on upholstery? Yes, but only heavily diluted, only on sturdy W-coded synthetics like cotton or microfibre, and never on velvet, silk, wool blends or anything coded S. Undiluted dish soap leaves a sticky film that attracts soil and can permanently mark the fabric.

4. Deodorize With Baking Soda or a Safe Alternative

Baking soda neutralizes odour rather than masking it. Sprinkle it over the dry fabric, work it gently into the pile with your soft brush, and leave it for 15 to 30 minutes.

Vacuum it off thoroughly afterwards, including out of the seams. If the smell is strong, repeat the process once; a second short dwell usually beats a longer first one because the powder clumps and stops absorbing.

Skip the baking soda when the sofa is already damp, when there is a grease or oil spot you are still working on, or when the fabric is velvet or an S-coded natural fibre with a visible nap. On those, a dry cloth brush in the direction of the pile lifts surface debris without leaving a powdery residue in the fibres.

5. Deep-Clean Fabric Panels When the Label Allows It

If the tag says the covers are removable and machine washable, that is the cleanest result available. Unzip them, note the care instructions, and wash on cold with a mild detergent on a gentle cycle.

Air dry them rather than machine drying, and check the zip and the seam allowance before they go back on. A cover that shrinks in the dryer will not return to the cushion. Fit them back only when they are completely dry all the way through, not just on the surface.

For the fixed upholstery itself, a rented steam cleaner or upholstery extractor is the next step up. Use it only on W or WS fabric, keep the nozzle moving, and work in one pass per section so you do not re-wet an area you already cleaned. Follow the cleaner label for dilution rather than guessing.

Stop and call a professional if the tag is coded X, the fabric is velvet or silk-like, the whole sofa is saturated rather than spotty, the smell comes from deep inside the foam, or the upholstery is expensive and you cannot replace it. A professional cleaning costs more than your supplies, and it is far cheaper than a ruined sofa.

6. Dry the Sofa Completely

Drying is the step people rush, and it is where most DIY jobs go wrong. Aim for dry to the touch within a few hours and completely dry within about 12 to 24 hours in a well-ventilated room.

Open the windows and run a fan pointed at the sofa, positioned so the air moves across the fabric rather than at it. Turn the cushions regularly, every half hour or so in the first few hours, so the underside dries at the same rate as the top. Stand them upright or on edge if you can.

Press a clean dry cloth into the seams and check for damp patches, especially where the seat meets the back and under the cushions. Hidden moisture inside a cushion smells within days and can grow mildew, and it re-soils the fabric faster than you cleaned it.

Common Mistakes

Almost every ruined sofa I can point to comes down to one of these:

  • Using hot water. Hot water shrinks synthetic fibres and sets protein stains like milk or blood. Use warm or cool water.
  • Soaking the sofa. Moisture that saturates the foam takes days to leave and invites mildew. Damp cloth, not wet cloth.
  • Scrubbing a stain. It spreads the soil and flattens the pile. Press and lift instead.
  • Using an unapproved cleaner. Bleach, ammonia, undiluted solvents and carpet shampoo all cause damage that does not wash out. Match the product to the cleaning code.
  • Skipping the spot test. Ten minutes in a hidden seam costs nothing and saves the whole panel.
  • Not vacuuming first or last. Dirt left in the pile grinds the fibres while you clean, and dried residue stays until a final pass.
  • Leaving it damp. Fans, airflow and turning cushions take an extra ten minutes and prevent the smell that follows.

Every one of those mistakes is avoided by the same habit: read the label, then follow it.

Frequently Asked Questions

How Can I Remove Tough Stains From a Fabric Sofa?

Repeated blotting with a mild detergent solution works for most fresh food and drink marks, fresh stains especially. Dried or greasy marks need a longer approach: break the surface with a stiff dry brush, vacuum it, then let the cleaner dwell 10 to 15 minutes before blotting. Old grease, ink and dye transfer usually need a product formulated for upholstery. If the mark has not moved after two careful attempts, stop and use a professional.

Can I Use Vinegar to Clean a Fabric Sofa?

Diluted white vinegar works on some water-safe fabrics, mixed roughly one part vinegar to two parts water, applied to a white cloth and blotted rather than poured on. Skip it on acetate, silk-like, velvet and wool fabrics, and on anything coded S, because the acid and the moisture can dull the pile or cause dye bleed. Always check the care tag and spot test for ten minutes first.

Does Baking Soda Really Remove Sofa Odors?

Yes, by absorbing the odour molecules rather than masking them with fragrance. Sprinkle it over dry fabric, brush it into the pile and leave it 15 to 30 minutes, then vacuum it out completely from the seams. It works best on a dry sofa, so skip it on damp fabric or after a wet clean. On velvet and S-coded fabrics use a dry cloth brush instead.

Can I Machine-Wash a Sofa Cover?

Only if the care tag says the covers are removable and machine washable. Wash them cold on a gentle cycle with a mild detergent, air dry rather than machine drying, and check the zip before refitting. The cover must be completely dry, including the seams, before it goes back on the cushion. A damp cover traps moisture and grows mildew inside the foam.

How Do I Clean a Sofa Without Leaving Water Stains?

Rings form when one section dries lighter or darker than the rest, so treat the entire panel rather than the mark alone. Use the smallest amount of cleaner that works, prefer distilled or filtered water, blot from the outside inward without circular scrubbing, and let the section dry fully before you move to the next one. On a light-coloured sofa, always spot test in a hidden seam first.

Should I Hire a Professional Sofa Cleaner?

Hire one when the upholstery is expensive, coded X, velvet, silk-like or wool, when a large area is soaked rather than spotty, when pet urine has reached the foam, when the odour returns within days of a surface clean, or when the tag calls for specialist treatment. The cost of a professional visit is lower than the cost of replacing a sofa you cannot live with.

Conclusion

Start with the care tag, because the cleaning code decides everything that follows. Vacuum the whole sofa, cushions off, before you add any moisture.

Spot test the cleaner in a hidden seam for ten minutes, use only products the label permits, blot instead of scrubbing, treat whole panels rather than marks, and let the sofa dry completely before anyone sits on it. That is the whole method. Most fabric sofas come out of it looking better than they did on day one.

Leave a Comment