We are open 7 days a week 8am-9pm

Two Sofas, Multiple Problems – Heavy Upholstery Cleaning in Kelowna

  • Location: Kelowna, BC
  • Items: Three-seater sofa and two-seater sofa
  • Condition: Heavy general soiling, organic stains, marker stains, water marks, dense pet hair, fabric snags from cat scratching
  • Equipment: Steam E600 Ninja extractor, professional air movers
  • Result: Both sofas fully cleaned and fabric restored in a single visit.

The full picture

Most upholstery jobs come in with one main problem. This one came in with five.

The client had two sofas – a three-seater and a two-seater – that had accumulated a serious amount of wear. There were organic stains of various origins, water marks left from previous attempts to spot-clean, and marker stains worked into the fabric. On top of all of that, both pieces were covered in a dense layer of pet hair from a cat that had been using the furniture regularly – including using it as a scratching surface, which had left the fabric pockmarked with snags and pulls throughout.

In terms of overall soiling load, these were among the most heavily worked pieces we have encountered. The condition wasn’t the result of a single event or a bad week. It was the accumulation of a long period of regular use with no professional cleaning in between.

Close-up of heavily soiled sofa fabric before professional cleaning in Kelowna, showing general soiling and staining throughout

Photo: Close-up of sofa seat fabric prior to cleaning – heavy general soiling and staining visible throughout.

That distinction matters when it comes to planning the job. A single concentrated stain has a defined location and a defined chemistry. What we were looking at here was the full surface of both sofas, multiple stain types each requiring a different approach, and fabric damage on top of it all. You can’t treat any of those layers in isolation – the sequence has to be right, and each step has to be complete before the next one starts.

The job ran to approximately four and a half hours across both pieces.

Our process

Clearing the surface before chemistry goes on

The first thing we did was remove the pet hair – and this had to happen before any moisture was introduced. Pet hair and water are a poor combination on upholstery fabric. Once hair gets wet, it mats into the weave and becomes significantly harder to extract. It can also work deeper into the pile during the extraction process, ending up where you have less ability to reach it.

We cleared both sofas thoroughly using dry methods before touching them with anything wet. On pieces this heavily covered, this stage takes time and it is not a step to shortcut. Only once the surface was clear did we move to the chemistry.

Restoring the fabric surface

Before any cleaning solution went on, we addressed the snags. Cat scratching pulls individual threads out of the weave, leaving the fabric surface rough and uneven – and those loose threads, if left in place, can catch during extraction and pull further. We worked over both sofas with a fabric shaver to remove the snags and bring the pile back to an even surface. This is a small step in terms of time but it makes a visible difference to the finished result, and it makes the extraction pass cleaner.

Matching the chemistry to each stain type

With the surface cleared and the fabric restored, we could start on the staining. The complication here is that not all stains respond to the same chemistry – and applying the wrong product to the wrong stain doesn’t just fail to clean, it can set the contamination further into the fibre.

We applied a professional-grade pre-spray across the general soiling and water marks, letting it dwell for fifteen minutes. For the organic staining, we followed with an enzymatic treatment – Biozyme – applied directly to the affected zones and left for a full twenty-minute dwell. Enzymes need that time to break down the biological content at the fibre level rather than just sitting on the surface. The marker stains required a targeted solvent applied separately and blotted through before extraction.

Three different stain types, three different treatments, applied in sequence. The pre-spray went on last because it covers the broadest area and its dwell time runs concurrently with the targeted treatments doing their work underneath.

Why this job needed multiple extraction passes

Once all the chemistry had dwelled fully, we extracted with the Steam E600 Ninja at 120 PSI.

Steam E600 Ninja extractor hose on sofa seat during professional upholstery cleaning, second sofa visible in background

Photo: Hot water extraction in progress – extractor hose working across the sofa seat, second sofa visible in the background.

Upholstery pressure sits lower than rug work for a reason – the foam and batting underneath the fabric don’t need to be saturated, and overwetting the interior layers creates slow drying conditions that can develop into odour.

A single extraction pass was not sufficient here. After the first pass, we assessed the fabric and ran a second full extraction with clean water, flushing the loosened soil, the dissolved chemistry, and anything the first pass had brought to the surface but not fully removed. On a job with this soiling load, one pass cleans and a second pass finishes. Stopping after the first would have left residue in the weave – and residue left in upholstery fabric attracts new soiling faster than clean fibre ever would.

After the final extraction pass, we set up air movers on both sofas and kept them running until the fabric was dry through to the backing.

How they finished

Two-seater and three-seater sofas fully cleaned and dry, fabric even and bright throughout, Kelowna home

Photo: Both sofas fully cleaned and dry – consistent colour throughout, fabric even and bright across all surfaces.

Both sofas came out clean throughout – no staining visible across either piece, no water marks, no residue from the marker treatment. The fabric surface was even and consistent. Four and a half hours of work on two pieces is not a typical upholstery job, but the result was complete.

The honest takeaway on deferred cleaning

What made this job as involved as it was isn’t any single thing on the list – not the markers, not the pet hair, not the organic stains. It’s the fact that all of them had been sitting long enough to compound each other.

Each problem on its own is a manageable clean. A marker stain caught early responds quickly to the right solvent. Pet hair removed regularly doesn’t get a chance to mat into the weave. Organic stains treated promptly don’t have time to work into the backing. Together, and left for an extended period, they become a multi-stage job that takes most of a workday.

The practical takeaway isn’t that you need to clean your furniture constantly. It’s that the gap between “it’ll be fine for now” and “this is now a difficult job” is shorter than most people expect – and it’s invisible while it’s closing. By the time the fabric looks like it needs attention, it has usually needed it for a while.

If you have upholstered furniture that has seen regular use and hasn’t had a professional clean in some time, it’s worth a call before the soiling load compounds further. The earlier we get to it, the more straightforward the work.

Sofa and upholstery cleaning in Kelowna

BreezeCo handles upholstery cleaning throughout Kelowna and the surrounding area – heavily soiled pieces, problem stains, multi-surface visits, and everything in between. We’ll assess the job honestly and tell you what to expect before we start.

See our upholstery and sofa cleaning services →

Get a free quote →