Health A to Z
Vomiting blood (haematemesis) could be a sign of a serious problem.
You should go to your GP surgery or nearest accident and emergency (A&E) department.
The amount and colour of blood can vary. For example:
Keep a small sample of the vomit to show your GP or the doctor treating you. It will give them a much better idea of what's wrong.
Unless you're perfectly well and the cause is obvious to your GP or doctor – for example, swallowing blood from a nosebleed – you should be admitted to hospital straight away for tests.
It's important to confirm that the blood you've vomited has come from your stomach or gullet (oesophagus) and you haven't coughed it up from your airways or lungs, which would indicate a completely different problem.
Read about coughing up blood.
If you vomit blood, it means there's bleeding somewhere in your oesophagus, stomach or the first part of your small intestine (duodenum).
Below is a summary of the most likely causes of blood in the vomit. It's a rough guide that should give you a better idea of the problem.
However, don't use it to diagnose yourself – always leave that to your GP or doctor.
Bleeding occurs when the ulcer or inflammation damages an underlying artery.
Oesophageal varices are enlarged veins in the walls of the lower part of the oesophagus. They bleed, but don't usually cause any pain.
They're often caused by alcoholic liver disease. If your GP or doctor suspects oesophageal varices are the cause of blood in your vomit, you'll need to be admitted to hospital immediately.
Gastro-oesophageal reflux disease (GORD) is where acid leaks out of the stomach and up into the oesophagus.
If you have severe GORD, it can irritate the lining of your oesophagus and cause bleeding.
Prolonged retching can tear the lining of your oesophagus, which can also result in bleeding.
It's possible to swallow blood in certain circumstances – for example, after a severe nosebleed.
The above conditions may also cause you to have blood in your stools, causing black, tarry poo.
Less commonly, blood in your vomit may be caused by: