Almost every sofa made in the last thirty years carries a single-letter cleaning code on a tag, and almost nobody knows it is there. It is the most useful piece of information about your furniture, because it tells you — and anyone you hire — whether water can safely touch the fabric.
Get it wrong and the consequences are not subtle. Water on an S-coded fabric leaves permanent rings. A wet clean on an X-coded fabric can shrink the cover so it no longer fits the frame. Neither is repairable by cleaning it again.
Where to find the tag
Start under a seat cushion. Lift it out and look at the underside and at the deck it was sitting on — most manufacturers sew the tag onto one or the other. If the cushions are fixed, check behind the skirt at the back of the sofa, under the base near a leg, or inside the zip of a back cushion.
The tag usually lists the fibre composition as well, which is nearly as useful as the code. "100% polyester" behaves very differently from "55% viscose, 45% cotton", even if both are sold as velvet.
No tag at all is common on second-hand, vintage and imported furniture. In that case the code has to be established by testing rather than reading, which is what a professional should do before touching the piece.
W — water-based cleaning is safe
The most common and most forgiving code. Water-based methods, including hot water extraction, are appropriate. Most polyester, polypropylene, cotton-poly blends and modern microfibres are W-coded.
W does not mean indestructible. Over-wetting a W fabric can still cause browning as moisture wicks soil up from the foam, and it can still leave a ring if a small area is cleaned in isolation and dried unevenly. The rule with W fabric is to clean a whole panel rather than a patch.
S — solvent only, keep water away
S means the fabric will water-stain. These are typically rayon, acetate, some silks and certain linen blends, and they need a dry-solvent method instead.
This is the code behind the most common domestic disaster we get called to. Someone spills a drink, dabs it with a damp cloth, the spill vanishes, and a grey halo appears at the edge of where the cloth reached. That ring is the drying boundary — and it will not brush out.
If your sofa is S-coded, the right response to a spill is to blot with a dry white cloth and stop there.
WS — either method works
WS gives the cleaner a choice, and the choice should be made on the basis of what is actually wrong with the fabric. Oily and greasy soil often responds better to a solvent approach; general body soil and water-based spills come out better with extraction.
A lot of modern upholstery is WS, which is why two competent cleaners can legitimately approach the same sofa differently.
X — vacuum only
X-coded fabrics should not be cleaned with water or solvent at home or by a general cleaner. They are prone to shrinkage, distortion or pile damage. Delicate wovens, some loose weaves and certain natural fibres fall into this category.
X does not mean nothing can be done. It means the safe options are dry vacuuming, very careful low-moisture specialist work, or sending the covers to a specialist. It also means that anyone who cheerfully offers to steam clean an X-coded sofa is telling you something important about their standards.
What happens when the code is ignored
Shrinkage is the one you cannot undo. A cotton or linen cover that shrinks by three per cent will no longer stretch back over its cushion, and there is no cleaning process that reverses it.
Dye bleed is the second. Unstable dyes migrate when wet, so a dark piping can run into a pale panel — usually along the seam, in a way that looks like a shadow. Testing a hidden seam for colourfastness takes two minutes and prevents it entirely.
Browning is the third and the most recoverable. Over-wetting draws tannins and soil up from the foam and the backing as the fabric dries, leaving yellow-brown patches. It is fixable by flushing the panel with an acidic rinse, but it is far easier not to cause it.