Medical emergency? Call 999 · from mobile, 112 Serving KL, Selangor & beyond
Prevention · 9 min read

Cough that won’t go away? Common causes, cough medicine that helps, and when to see a doctor

A cough after a cold, flu or a spell of haze can last for weeks, and most of the time it clears on its own. But a cough that won’t go away can also be a sign of asthma, reflux, a side effect of a blood pressure pill, or tuberculosis. Here is what usually causes it, what helps, and when to get checked.

Written by
HealthcareDirectory.my Editorial Team
Published
Tissues, nasal spray and a notebook on a desk
Tissues, nasal spray and a notebook on a desk · Photo: Pixabay
Key points
  • Most coughs after a cold or flu clear within 3 to 4 weeks. A cough lasting more than 3 weeks is worth getting checked.
  • Common causes of a lingering cough include a recent infection, haze, allergies, asthma, acid reflux, smoking and some blood pressure medicines.
  • In Malaysia, a cough lasting more than 2 weeks, especially with fever, night sweats or weight loss, should be checked for tuberculosis.
  • Cough syrups have little evidence behind them. Honey (not for babies under 1) and warm drinks are reasonable first steps.
  • Cough and cold medicines should not be used in children under 2 in Malaysia. For fever in children, use paracetamol by weight, and avoid ibuprofen if dengue is possible.

How long is too long for a cough?

TypeHow long it lasts (adults)Usual cause
Acute coughLess than 3 weeksA cold, flu or other infection
Subacute cough3 to 8 weeksOften a cough that lingers after an infection
Chronic coughMore than 8 weeksAsthma, allergies, reflux, smoking, medicines or lung disease

The NHS says a cough usually clears up within 3 to 4 weeks, and advises seeing a doctor if it lasts longer than 3 weeks. In children, US and Australian guidelines treat a cough lasting more than 4 weeks as chronic.

2026 has been hard on Malaysian lungs. Haze pushed air quality into the unhealthy range for weeks, and in the first week of October the Ministry of Health recorded a 10.4% rise in respiratory infections. Flu also circulates all year. Both can leave airways irritated long after the main illness has passed.

Why won’t my cough go away?

  • After a cold or flu: the most common cause. The airways stay sensitive for weeks, causing a dry, tickly cough that slowly fades.
  • Haze and air pollution: fine particles irritate the airways and can trigger coughing, especially in people with asthma.
  • Allergies and post-nasal drip: mucus dripping down the back of the throat from a runny or blocked nose. Often worse at night or in the morning.
  • Asthma: sometimes the only symptom is a cough, especially at night, after exercise or in cold air.
  • Acid reflux: stomach acid irritating the throat. There may be heartburn or a sour taste, but not always.
  • Smoking and vaping: a daily cough is a warning sign of lung damage.
  • Blood pressure medicines: ACE inhibitors, common blood pressure pills whose names usually end in “-pril” (such as perindopril), cause a dry cough in about 1 in 10 people or more. It usually goes about a week after stopping. Don’t stop your medicine yourself. Ask your doctor about switching.
  • Infections that need treatment: such as whooping cough (pertussis) or tuberculosis (see below).
  • Rarely, lung cancer: a cough is rarely a sign of cancer, but it is more likely in smokers and people over 40.
Blister packs of tablets
Some common blood pressure tablets cause a dry, lingering cough. Your doctor can switch you to another type.

Could it be tuberculosis?

Tuberculosis (TB) is still common in Malaysia. In 2024 there were 26,183 cases and 2,580 deaths, according to the Ministry of Health, and more than 3,100 cases were reported in the first six weeks of 2026.

The Ministry advises getting checked if you have:

  • a cough lasting more than 2 weeks
  • fever, especially in the evening, or night sweats
  • loss of appetite or weight loss
  • coughing up blood

TB is curable with a course of antibiotics, usually for 6 months, and 85–90% of patients are treated successfully. Diagnosis and treatment at government health facilities are heavily subsidised. Getting tested early also protects your family, because TB spreads through the air.

Whooping cough in babies

Whooping cough (pertussis) causes long coughing fits, sometimes followed by a “whoop” as the child breathes in, or vomiting. It is most dangerous for young babies, who may not whoop at all but stop breathing or turn blue. In 2023, Malaysia recorded 343 cases and 24 deaths by late August, mostly in babies under 5 months old.

Babies are protected by the vaccines in the National Immunisation Programme, and by vaccinating mothers during pregnancy. The government announced free whooping cough (Tdap) vaccination for pregnant women from 2024. Ask at your antenatal clinic.

Which cough medicine works?

Cough medicines are some of the most popular products at any pharmacy, but there is little good evidence that over-the-counter cough syrups help. A Cochrane review of 29 trials found no good evidence for or against them. If you want to try one:

  • Chesty cough with phlegm (batuk berkahak): expectorants such as guaifenesin are meant to loosen mucus. UK guidance lists them as an option for adults and children aged 12 and over, but the evidence is limited.
  • Dry, tickly cough: cough suppressants such as dextromethorphan, for ages 12 and over. Not for a chesty cough, where you need to clear the phlegm.
  • Allergy-related cough: antihistamines such as loratadine may help only when allergies or post-nasal drip are the cause. They don’t help an ordinary post-viral cough.

Malaysian rules to know:

  • Cough and cold medicines must carry a warning that they should not be used in children under 2.
  • Cough mixtures containing codeine and other controlled ingredients can only be supplied by a doctor or pharmacist.
  • In 2023, the Ministry of Health cancelled the registration of all cough products containing pholcodine because of a risk of severe allergic reactions during anaesthesia.
  • Only buy products with a MAL registration number. Unregistered cough syrups sold elsewhere in the region have been contaminated with toxic chemicals.

Antibiotics don’t help a cough caused by a virus. A doctor will prescribe them only if a bacterial infection is likely.

Home remedies that help

  • Honey: a Cochrane review found honey probably eases coughing and helps children sleep. Try 1 to 2 teaspoons in warm water with lemon. Never give honey to babies under 1, because of the risk of infant botulism.
  • Warm drinks and plenty of fluids soothe the throat and thin mucus. Don’t give hot drinks to small children.
  • Rest, and keep away from cigarette smoke, vapes and smoky kitchens.
  • On hazy days, keep windows closed and use an air purifier if you have one. See our haze guide.

Fever medicine for children

Coughs in children often come with fever. For fever medicine (ubat demam budak):

  • Paracetamol can be used from 2 months of age (if born after 37 weeks and over 4 kg). The dose depends on the child’s weight, so check the label or ask a pharmacist. Leave at least 4 hours between doses, give no more than 4 doses in 24 hours, and don’t combine it with other products that also contain paracetamol.
  • Ibuprofen can be used from 3 months and over 5 kg, but avoid it if dengue is possible, because it increases the risk of bleeding. With dengue so common in Malaysia, paracetamol is the safer first choice for fever. Ibuprofen may also be unsuitable for children with asthma or who are dehydrated.
  • Never give aspirin to children under 16.

See a doctor if a baby under 3 months has a fever, or if any child with fever seems very unwell, drowsy or dehydrated. See our guide to dengue warning signs.

When to see a doctor

See a GP if:

  • your cough has lasted more than 3 weeks, or more than 2 weeks with fever, night sweats or weight loss
  • you have lost weight without trying
  • you have a weakened immune system or a long-term condition such as diabetes
  • you are over 40 and smoke or used to smoke, and have a new or changed cough
  • your child has had a cough for more than 4 weeks, or has coughing fits with a “whoop” or vomiting
Get urgent help or call 999 for
  • Coughing up blood
  • Difficulty breathing, or chest pain
  • Blue or grey lips or skin
  • A baby who stops breathing, turns blue during coughing fits, or is under 6 months with whooping cough symptoms
  • A swollen, painful neck, or a cough that is getting worse very quickly

Where to get a lingering cough checked

A GP can work out the likely cause of a lingering cough, arrange a chest X-ray or sputum test for TB if needed, and review your medicines. Government health clinics (Klinik Kesihatan) also screen for TB. Our directory lists GP clinics across Kuala Lumpur, Selangor and other states.

Browse the clinic directory

Frequently asked questions

Why won’t my cough go away? (Kenapa batuk berpanjangan?)

The most common reason is airways that stay irritated after a cold or flu, which can take 3 to 4 weeks to settle. Other causes include haze, allergies, asthma, acid reflux, smoking and some blood pressure medicines. A cough lasting more than 3 weeks, or 2 weeks with fever or weight loss, should be checked.

What is the best cough medicine for adults with phlegm? (Ubat batuk kahak dewasa)

Expectorants such as guaifenesin are meant to loosen phlegm, but the evidence is limited. Drinking plenty of fluids and honey in warm water also help. See a doctor if the phlegm is bloody, or the cough lasts more than 3 weeks.

How can I get rid of a cough at home? (Petua hilangkan batuk)

Try honey with warm water and lemon, plenty of fluids, rest, and avoiding smoke. Don’t give honey to babies under 1. Most coughs clear on their own within a few weeks.

When should I worry about a cough?

See a doctor for a cough lasting more than 3 weeks, or more than 2 weeks with fever, night sweats or weight loss. Get urgent help for coughing up blood, difficulty breathing, chest pain or blue lips.

Can I give cough syrup to my baby?

No. In Malaysia, cough and cold medicines carry a warning not to use them in children under 2. Honey should not be given to babies under 1. See a doctor if a baby has a cough with fever or breathing difficulty.

What fever medicine is safe for children? (Ubat demam budak)

Paracetamol, dosed by the child’s weight, from 2 months of age. Ibuprofen can be used from 3 months but should be avoided if dengue is possible. Never give aspirin to children under 16.