🔧Written by a qualified plumbing and heating engineer·

Smell coming from plughole or shower drain

Free DIY guide — no sign-up required. written by a qualified plumbing and heating engineer.
DIY Friendly💷 £0£1515–30 min

A nasty smell rising from your sink, bath or shower drain is one of the most common household complaints — and the good news is that it's rarely serious. The culprit is almost always decomposing organic matter trapped in the U-bend beneath your plughole: hair, soap scum, food residue and other debris break down over time and create that unpleasant odour. It happens to everyone, particularly in bathrooms where hair accumulation is rapid, and it's something most homeowners can tackle themselves with basic household items. This guide walks you through the most effective DIY cleaning methods, from simple boiling water treatments to enzyme-based solutions, and covers what to do if the smell keeps coming back. If you've tried everything and the odour persists, or if you suspect a cracked trap or other structural issue, that's when it's time to call a qualified plumber.

Not sure if this matches your problem?

Use our interactive tool — answer a few questions and get a personalised diagnosis.

Diagnose my problem →

Most likely cause & what to check

1

Most drain smells from plugholes are caused by a build-up of organic matter (hair, soap scum, food residue) decomposing in the trap beneath the plughole.

2

Remove the plughole cover and pull out any hair or debris with a piece of wire or tweezers — in shower drains, a remarkable amount of hair accumulates in just a few weeks.

3

Pour a kettle of boiling water slowly down the drain. Follow with a cup of bicarbonate of soda, then a cup of white vinegar. Leave for 15 minutes, then flush with more boiling water.

4

For persistent smells: use an enzyme-based drain cleaner (not caustic soda — this damages plastic traps and is hazardous). Enzyme cleaners digest organic matter without damaging pipework and cost £5–£10.

5

If the smell persists after cleaning, the trap seal may be dry or the trap itself may have a crack. Check the trap under the sink and replace if cracked (£5–£10 for a plastic bottle trap).

Prefer to have it done for you?

Find me an engineer →

🛠 Tools & materials you may need

Drain cleaner or enzyme drain cleanerKettleRubber gloves

Was this guide helpful?

Frequently asked questions

Why does my shower drain smell like sewage or rotten eggs?

That sulphurous smell typically comes from hydrogen sulphide gas produced when hair, soap and organic debris decompose in your trap. It's unpleasant but harmless, and usually clears once you've cleaned out the accumulated matter and flushed the drain thoroughly with hot water or an appropriate cleaner.

Is drain smell dangerous to my health?

A smelly drain is more of a nuisance than a health hazard in most cases. However, if the smell is accompanied by slow drainage, backed-up water, or gurgling sounds, it may indicate a more serious blockage that needs attention — in that case, contact a plumber.

Can I use caustic soda or bleach to clean a smelly drain?

Caustic soda is effective but risky — it can damage plastic traps, corrode older pipes and cause chemical burns if it splashes. Bleach won't solve the underlying problem either. Enzyme-based cleaners or the bicarbonate of soda and vinegar method are safer, cheaper and just as effective for organic matter buildup.

How often should I clean my drains to prevent bad smells?

A quick monthly flush with boiling water and bicarbonate of soda will keep most drains fresh and prevent buildup. In bathrooms with heavy hair shedding, clearing the plughole cover weekly and doing a deep clean every 4–6 weeks makes a real difference.

What does it mean if the smell comes back immediately after cleaning?

If the odour returns quickly, the trap seal may be drying out (which allows gases to escape from the drainage system), or there may be a crack in the trap itself. Check the U-bend under the sink for dampness or cracks — a replacement plastic trap costs just £5–£10 and is a simple swap.