Coughing up blood can be alarming, but isn't usually a sign of a serious problem if you're young and otherwise healthy. It's more a cause for concern in older people, particularly those who smoke.

The medical term for coughing up blood is haemoptysis.

You may cough up small amounts of bright red blood, or frothy blood-streaked sputum (saliva and phlegm). The blood is usually from your lungs and is often the result of prolonged coughing or a chest infection.

If the blood is dark and contains bits of food or what look like coffee grounds, it may be coming from your digestive system. This is a more serious problem and you should go to hospital straight away. Read more about vomiting blood.

What to do if you cough up blood

See your GP as soon as possible if you cough up blood. It's particularly important to see your GP if:

Your GP will be able to assess whether you may have a serious medical condition that needs to be investigated and treated. Call NHS 111 or your local out of hours service if you can't see your GP.

Call 999 for an ambulance or go to your nearest accident and emergency (A&E) department immediately if you're coughing up significant amounts of blood or are struggling to breathe.

Tests that may be needed

You may be asked for a sample of your sputum so it can be checked for infection. Other tests, such as blood tests, may also be needed.

Your GP may decide to refer you to a specialist at your local hospital for a chest X-ray or a more detailed scan, such as a computerised tomography (CT) scan.

In some cases, further tests may be required to find out where the blood is coming from. For example, you may be referred to a specialist who may decide to arrange a test called a bronchoscopy (where the main air passages of your lungs are examined using a tube with a camera at one end).

This page can give you a better idea of what the cause may be, but don't use it to diagnose yourself. Always leave that to a doctor.

Common causes of coughing up blood

The most common reasons for coughing up blood are:

  • a prolonged, severe cough
  • chest infection – this is more likely if your sputum is discoloured or contains pus, you have a fever, or you have a tight feeling in your chest
  • bronchiectasis – this is more likely if you're also wheezy or short of breath

Sometimes a severe nosebleed or bleeding from the mouth or throat can cause blood to come out in your saliva when you cough.

Less common causes of coughing up blood

Less commonly, coughing up blood may be the result of:

  • pulmonary embolism (a blood clot in the lungs) – this usually causes sudden shortness of breath and chest pain
  • pulmonary oedema (fluid in the lungs) – your sputum will be pink and frothy, and this usually occurs in people with pre-existing heart problems
  • lung cancer – this is more likely if you're over 40 and smoke
  • tuberculosis (TB) – a severe lung infection associated with fever and sweating; this is becoming more common in the UK, but can be treated with prolonged antibiotics 
  • cancer of the throat or windpipe
  • taking anticoagulants – medications that help stop your blood clotting, such as warfarin, rivaroxaban, or dabigatran

Sometimes, no cause can be found and it never happens again.

Page last reviewed: 28/08/2015

Next review due: 28/08/2017