Get quotes to clean sofa, carpets and curtains 

HaMuch is Excellent
By Emily Rivers
Last updated 31st March 2023

Upholstery cleaning is a common type of specialist cleaning. While many people will scrub up stains on their carpets or sofas themselves, a professional deep clean is the perfect way to ensure your upholstery stays in the very best condition. This could cover carpets, curtains, sofas, chairs, or rugs.

You can of course undertake this work in a DIY fashion, however with the wide variety of specialist chemicals and equipment in use by the professionals, it can be difficult to get comparable results cleaning upholstery yourself. Because of this, many people choose to have a professional upholstery cleaning service carried out in their homes.

But, if you're considering having this done, it's important to have some idea of how much you're likely to pay. To help with your research into upholstery cleaning prices, we've written this article to cover the prices for a range of different types of upholstery cleaning – carpets, curtains, sofas and chairs, and rugs.

Carpet cleaning prices

Carpet cleaning is one of the most common types of upholstery cleaning. Whether it's a drink spill on a cream carpet, pet hair, dust or dirt on well trafficked rooms, or any other reason, a professional carpet cleaning service will bring the carpets in your home back to their former glory.

Carpet cleaning prices will typically vary based on the amount of carpet you’d like to have cleaned. Some cleaning companies will charge per metre squared, others will charge an hourly rate, while others will simply charge an average price for the size of the room or home. Because of this, it can be difficult to compare prices – but it’s worth getting a few quotes and then working out a comparative rate, as this will give you the best price.

If you’re paying per room, expect to pay between £30-£50 for a small room, like a bedroom or small living room. For larger rooms, you could pay between £50 and £80. And then for very large rooms, like combined living and dining rooms, or hallways, stairs and landing, you could pay as much as £120 in total. 

If you’re getting all the carpets in your home cleaned, you should expect to pay between £150 and £400, depending on the size of the home. Small, 1 bedroom flats will be at the lower end of this range, while large, 4-6 bedroom homes will be at the top end, or possibly even more, especially if you have multiple staircases, for example.

Cost to clean upholstery

Curtain cleaning prices

Cleaning curtains is one of those less commonly done cleaning jobs that can really reinvigorate a space. Your curtains make a big difference to the ambiance and aesthetic of a room, and freshened, cleaned curtains can make a massive positive impact. In a living room, this can refresh a tired space, while in the bedroom you might be surprised to learn it could even improve the quality of your sleep. 

Some curtains can simply be put through a gentle cycle in a washing machine, but most are dry clean only. This means you’ll need to take them down to your local dry cleaners (some do offer collection and drop off services). The price you could pay is between £5 and £30 per set of curtains, depending on whether they’re lined or unlined, the size of the curtains, and whether they are stained or soiled and therefore require specialist attention.

Sofa and chair cleaning prices

When it comes to sofa cleaning, the price you’ll pay will generally be per item that you need cleaned. For dry cleaning, expect to pay around £35 for an armchair, £50 for a double seater sofa, £75 for a triple seater, and around £100 for a large, four-seater sofa. Steam cleaning is cheaper, with an armchair costing around £15, a double seater sofa around £30, £45 for a triple seater and £60 for a four-seater sofa. They may be cost benefits to having multiple items cleaned at the same time, so if you’re getting a whole suite cleaned, there may be a discount.

Whether you need steam or dry cleaning will really depend on the type of sofa you’ve got, the material used on the upholstery, and the overall condition. Experienced, professional cleaning companies will be able to assess the condition of your sofa and chairs and recommend the best course of action to get them back to the best possible condition.

Depending on the type of sofas and chairs you have in your home, you may be able to clean them yourself. Seat and cushion covers may be machine washable, while leather can be wiped down with special leather cleaner. However, for best results, a professional steam or dry cleaning service is generally recommended, especially if you have specific nasty stains you’d like to get rid of.

Rug cleaning prices

When it comes to rug cleaning, the range of price you might pay is quite wide – from under £20 right up to £200. This is because of the huge variety of rugs that are available, and the potential for specialist cleaning to be required. However, for most modern, cotton, wool or synthetic fibre rugs, expect to pay between £20 and £50 for a steam or dry clean, depending on the overall size of the rug. As well as steam or dry cleaning, there are a few other types of rug cleaning, including foam cleaning, deep cleaning, and cold water extraction cleaning. This is a new kind of cleaning that's significantly better for the environment because it uses far less energy and less harsh chemicals. 

Rug cleaning gets significantly more expensive with Persian rugs or those made from silk or other unusual materials. These kinds of rugs will require specialist cleaning, so depending on the exact type, size, and overall condition this could cost as much as £200. A professional rug and carpet cleaning company will be able to advise you on what's required – but remember that it's worth getting several quotes and opinions to be sure you're getting the best deal.


Estimates for common cleaner jobs;

Rates for other trades

Upholstery cleaning cost in the UK
Upholstery cleaning cost in the UK (excluding VAT or callout charges)
Location in UKUpholstery cleaning cost
Upholstery cleaning near Aberdeen£42
Upholstery cleaning near Amber Valley£54
Upholstery cleaning near Arun£75
Upholstery cleaning near Ashfield£54
Upholstery cleaning near Aylesbury Vale£60
Upholstery cleaning near Barnsley£48
Upholstery cleaning near Basildon£60
Upholstery cleaning near Basingstoke & Deane£57
Upholstery cleaning near Bassetlaw£39
Upholstery cleaning near Bath & North East Somerset£57
Upholstery cleaning near Bedford£75
Upholstery cleaning near Belfast£45
Upholstery cleaning near Birmingham£48
Upholstery cleaning near Blackburn£42
Upholstery cleaning near Blackpool£42
Upholstery cleaning near Bolton£51
Upholstery cleaning near Bournemouth£99
Upholstery cleaning near Bracknell Forest£57
Upholstery cleaning near Bradford£57
Upholstery cleaning near Braintree£51
Upholstery cleaning near Breckland£54
Upholstery cleaning near Bridgend£51
Upholstery cleaning near Brighton£72
Upholstery cleaning near Bristol£51
Upholstery cleaning near Broadland£54
Upholstery cleaning near Broxtowe£54
Upholstery cleaning near Bury£51
Upholstery cleaning near Caerphilly£66
Upholstery cleaning near Calderdale£66
Upholstery cleaning near Cambridge£96
Upholstery cleaning near Canterbury£51
Upholstery cleaning near Cardiff£66
Upholstery cleaning near Carmarthenshire£42
Upholstery cleaning near Charnwood£72
Upholstery cleaning near Chelmsford£60
Upholstery cleaning near Cheltenham£90
Upholstery cleaning near Cherwell£51
Upholstery cleaning near Chester£45
Upholstery cleaning near Colchester£48
Upholstery cleaning near Conway£42
Upholstery cleaning near Coventry£54
Upholstery cleaning near Crewe & Nantwich£54
Upholstery cleaning near Dacorum£60
Upholstery cleaning near Derby£57
Upholstery cleaning near Doncaster£36
Upholstery cleaning near Dover£57
Upholstery cleaning near Dudley£48
Upholstery cleaning near Dumfries & Galloway£30
Upholstery cleaning near Dundee£135
Upholstery cleaning near East Ayrshire£42
Upholstery cleaning near East Devon£42
Upholstery cleaning near East Dunbartonshire£48
Upholstery cleaning near East Hampshire£60
Upholstery cleaning near East Hertfordshire£54
Upholstery cleaning near East Lindsey£45
Upholstery cleaning near East Riding£69
Upholstery cleaning near Eastleigh£63
Upholstery cleaning near Edinburgh£87
Upholstery cleaning near Elmbridge£54
Upholstery cleaning near Epping Forest£57
Upholstery cleaning near Erewash£69
Upholstery cleaning near Exeter£45
Upholstery cleaning near Falkirk£57
Upholstery cleaning near Fife£114
Upholstery cleaning near Flintshire£45
Upholstery cleaning near Gateshead£45
Upholstery cleaning near Gedling£51
Upholstery cleaning near Glasgow£51
Upholstery cleaning near Gloucester£93
Upholstery cleaning near Guildford£54
Upholstery cleaning near Gwynedd£36
Upholstery cleaning near Halton£48
Upholstery cleaning near Harrogate£51
Upholstery cleaning near Havant & Waterloo£63
Upholstery cleaning near Highland£54
Upholstery cleaning near Horsham£54
Upholstery cleaning near Huntingdonshire£57
Upholstery cleaning near Ipswich£48
Upholstery cleaning near Isle of Wight£63
Upholstery cleaning near Kings Lynn & West Norfolk£42
Upholstery cleaning near Kingston-upon-Hull£63
Upholstery cleaning near Kirklees£69
Upholstery cleaning near Knowsley£48
Upholstery cleaning near Lancaster£42
Upholstery cleaning near Leeds£57
Upholstery cleaning near Leicester£87
Upholstery cleaning near Lisburn£42
Upholstery cleaning near Liverpool£45
Upholstery cleaning near London£54
Upholstery cleaning near Luton£60
Upholstery cleaning near Macclesfield£63
Upholstery cleaning near Maidstone£60
Upholstery cleaning near Manchester£57
Upholstery cleaning near Mid Bedfordshire£66
Upholstery cleaning near Mid Sussex£60
Upholstery cleaning near Middlesbrough£87
Upholstery cleaning near Milton Keynes£63
Upholstery cleaning near Neath Port Talbot£54
Upholstery cleaning near New Forest£57
Upholstery cleaning near Newbury£66
Upholstery cleaning near Newcastle-under-Lyme£54
Upholstery cleaning near Newcastle-upon-Tyne£45
Upholstery cleaning near Newport£69
Upholstery cleaning near North Ayrshire£42
Upholstery cleaning near North Hertfordshire£66
Upholstery cleaning near North Lanarkshire£51
Upholstery cleaning near North Lincolnshire£39
Upholstery cleaning near North Somerset£51
Upholstery cleaning near North Tyneside£45
Upholstery cleaning near North Wiltshire£72
Upholstery cleaning near Northampton£45
Upholstery cleaning near Norwich£60
Upholstery cleaning near Nottingham£69
Upholstery cleaning near Nuneaton & Bedworth£57
Upholstery cleaning near Oldham£57
Upholstery cleaning near Oxford£54
Upholstery cleaning near Peterborough£51
Upholstery cleaning near Plymouth£45
Upholstery cleaning near Poole£99
Upholstery cleaning near Portsmouth£63
Upholstery cleaning near Preston£42
Upholstery cleaning near Reading£57
Upholstery cleaning near Redcar & Cleveland£63
Upholstery cleaning near Reigate & Banstead£51
Upholstery cleaning near Renfrewshire£51
Upholstery cleaning near Rhondda, Cynon, Taff£78
Upholstery cleaning near Rochdale£51
Upholstery cleaning near Rochester-upon-Medway£30
Upholstery cleaning near Rotherham£42
Upholstery cleaning near Salford£57
Upholstery cleaning near Salisbury£69
Upholstery cleaning near Sandwell£48
Upholstery cleaning near Scarborough£75
Upholstery cleaning near Sefton£45
Upholstery cleaning near Sevenoaks£60
Upholstery cleaning near Sheffield£42
Upholstery cleaning near Slough£54
Upholstery cleaning near Solihull£51
Upholstery cleaning near South Ayrshire£42
Upholstery cleaning near South Bedfordshire£75
Upholstery cleaning near South Cambridgeshire£93
Upholstery cleaning near South Gloucestershire£51
Upholstery cleaning near South Kesteven£54
Upholstery cleaning near South Oxfordshire£60
Upholstery cleaning near South Somerset£93
Upholstery cleaning near South Tyneside£45
Upholstery cleaning near Southampton£63
Upholstery cleaning near Southend-on-Sea£60
Upholstery cleaning near St Albans£63
Upholstery cleaning near St Helens£48
Upholstery cleaning near Stafford£51
Upholstery cleaning near Stockport£60
Upholstery cleaning near Stockton-on-Tees£87
Upholstery cleaning near Stoke-on-Trent£54
Upholstery cleaning near Stratford-on-Avon£45
Upholstery cleaning near Stroud£93
Upholstery cleaning near Suffolk Coastal£48
Upholstery cleaning near Sunderland£45
Upholstery cleaning near Swale£60
Upholstery cleaning near Swansea£51
Upholstery cleaning near Tameside£57
Upholstery cleaning near Teignbridge£48
Upholstery cleaning near Tendring£48
Upholstery cleaning near Test Valley£57
Upholstery cleaning near Thamesdown£45
Upholstery cleaning near Thanet£48
Upholstery cleaning near The Wrekin£33
Upholstery cleaning near Thurrock£60
Upholstery cleaning near Torbay£57
Upholstery cleaning near Trafford£57
Upholstery cleaning near Vale of Glamorgan£48
Upholstery cleaning near Vale of White Horse£48
Upholstery cleaning near Vale Royal£45
Upholstery cleaning near Wakefield£54
Upholstery cleaning near Walsall£48
Upholstery cleaning near Warrington£48
Upholstery cleaning near Warwick£57
Upholstery cleaning near Waveney£45
Upholstery cleaning near Waverley£57
Upholstery cleaning near Wealden£48
Upholstery cleaning near West Lancashire£48
Upholstery cleaning near West Lothian£66
Upholstery cleaning near West Wiltshire£72
Upholstery cleaning near Wigan£48
Upholstery cleaning near Windsor & Maidenhead£54
Upholstery cleaning near Wirral£45
Upholstery cleaning near Wokingham£57
Upholstery cleaning near Wolverhampton£48
Upholstery cleaning near Wrexham Maelor£45
Upholstery cleaning near Wychavon£57
Upholstery cleaning near Wycombe£57
Upholstery cleaning near York£63