Upholstery cleaning gets real trickier than carpet because you can’t just pick a method and apply it to everything. Fabric codes matter. Fiber type matters. The difference between a clean sofa and a permanently watermarked one is usually in the chemistry, not the effort.

The cleaning codes (read your tag first)

Every upholstered piece in the US has a tag somewhere — usually under a cushion or on the base frame — that specifies a cleaning code. Find it before you do anything.

Code W (water-based cleaning)

Most common code. Microfiber, cotton-poly blends, most modern sofas.

  • Water-based cleaners safe
  • Hot-water extraction safe
  • Most DIY methods won’t damage

Code S (solvent-based cleaning)

Some linens, some silks, vintage fabrics.

  • Water will damage this fabric. Shrinkage, watermarks, dye bleed.
  • Dry-cleaning solvents only
  • Professional job — DIY solvent cleaners often make it worse

Code WS (water or solvent)

Many high-end fabrics, some performance fabrics.

  • Either method safe when done carefully
  • Usually prefer water-based for routine cleaning, solvent for spot stains
  • The most forgiving code

Code X (vacuum only)

Rare but real. Silk velvets, some specialty fabrics, certain vintage pieces.

  • Nothing wet, nothing solvent — only vacuum
  • Professional dry-clean only if a stain occurs
  • Factory-authorized cleaner for serious problems

If your piece is coded X and you’ve been cleaning it with water, stop now and assess damage.

Why DIY watermarks happen

The most common upholstery failure is the ring-shaped watermark left by DIY spot cleaning. Here’s the mechanism:

  1. You notice a spot on a sofa cushion
  2. You dampen a cloth with cleaner and work on just that spot
  3. The spot is now wet; the surrounding fabric is dry
  4. As the wet spot dries, residual soil (and any cleaner residue) migrates outward via capillary action
  5. At the edge where wet meets dry, the migration stops and deposits the residue
  6. You’re left with a ring that’s darker than the spot you started with

The fix: clean the entire cushion, not just the spot. Consistent moisture across the whole piece has no boundary to deposit residue at. This is why professional cleaning handles whole cushions end-to-end.

The professional process

For code W or WS upholstery, here’s what we actually do:

Step 1: Fiber identification

Tag confirms code. We also check fiber type (natural vs. synthetic) and density. Velvet, chenille, microfiber, and linen each respond differently.

Step 2: Colorfastness test

A small amount of cleaner on a hidden area (behind cushion, under arm). Wait 2 minutes, blot. If color transfers to the blot cloth, we stop and reassess — usually means solvent-only even on a W-coded piece.

Step 3: Pre-vacuum

Commercial HEPA vacuum with soft attachment. Lifts loose soil before water touches the fabric. Skipping this step mixes soil with moisture and creates the darkened areas people associate with “cleaning made it worse.”

Step 4: Pre-treatment

Fiber-matched pre-treatment for body oils (armrest, headrest areas), food stains, or other spots. Dwell time 5–10 minutes.

Step 5: Low-moisture extraction

A dedicated upholstery hand tool that releases just enough hot water for extraction and pulls it back immediately. The fabric stays damp-to-touch, never saturated. This is the critical difference from a DIY attempt.

Step 6: Uniform grooming

Soft brush passes to reset pile direction and lift fibers. Prevents water lines and edge darkening.

Step 7: High-velocity air movers

For faster dry — 3–4 hours typical on cushions, 6–8 for arms and backs.

The DIY version for minor work

If you can’t wait for a professional and the stain is fresh on a code W fabric, here’s the minimum:

Fresh spill triage

  1. Blot straight down with a clean cloth. Don’t rub.
  2. Rotate the cloth as it saturates.
  3. Apply small amount of water (spray bottle, not pour) to dilute.
  4. Blot again heavily.
  5. Leave a slightly damp towel on the spot overnight — this reduces edge drying and the watermark risk.

This works on 80% of fresh spills on synthetic microfiber or cotton blends. Wine, coffee, food.

What to avoid in DIY

  • Laundry detergent. Too concentrated, hard to rinse out, creates residue.
  • Baking soda + vinegar. Classic DIY that doesn’t actually clean.
  • Carpet shampoo. Wrong pH for most fabrics.
  • Rental carpet cleaner with upholstery attachment. Always over-wets fabric. Watermarks guaranteed on anything other than small aggressive jobs.

Leather vs. fabric

Leather is a separate conversation — fabric-style extraction damages leather. Quick guide:

Finished leather (most modern leather sofas)

  • Clean with a pH-neutral leather cleaner
  • Condition every 6–12 months
  • Keep away from direct sun
  • Wipe spills immediately

Bonded leather

  • Wipe clean only
  • Fails in 5–7 years regardless of care
  • Not worth professional cleaning

Aniline/nubuck leather

  • Specialist only. We don’t clean these — will refer to a leather specialist.

We handle finished leather with conditioning rather than extraction. Mixed-material pieces (leather frame + fabric cushions) get two-method treatment.

Pet hair on upholstery

Most-asked upholstery question. Pre-cleaning pet hair removal:

  • Rubber glove method: damp rubber glove, run across upholstery — hair sticks
  • Squeegee: same principle, wider surface
  • Lint roller for synthetics: works but burns through rollers fast
  • Vacuum with pet-hair attachment: the modern fix — dedicated pet tool lifts embedded hair

Do the pet-hair pass before any wet cleaning. Wet pet hair becomes a felted mat that’s nearly impossible to extract.

When to call us

  • Any piece with code S or X that has a stain
  • Large food, drink, or body fluid spills on any code
  • Armrests and headrests that have darkened from body oils (a whole-piece extraction is the fix)
  • Moving and rental agreement requires professional cleaning
  • Buying a used couch and want it sanitized before it enters the house
  • Pet-household sofa cleaning (annual minimum)
  • Allergy symptoms correlated with the couch

Pricing

Our standard upholstery rates:

  • Sofa: $119
  • Loveseat: $89
  • Chair: $59
  • Sectional: $189–$299 depending on configuration
  • Ottoman: $39
  • Dining chairs: $25 each, minimum 4
  • Pet hair removal: included in the above
  • Protector (Scotchgard-class): $20 per piece

Most living rooms finish in 45–90 minutes. Dries in 3–4 hours with AC and a fan.

Scheduling

Upholstery cleaning is a great add-on when we’re already at the house for carpet work. No additional trip fee, same tech, finished in one visit. If you have both carpet and sofa on the to-do list, bundle them.

Call (858) 808-6055 for scheduling. See upholstery cleaning page for the full service scope.