Vomiting blood is a backward flowing (regurgitation) of blood through the upper gastrointestinal (GI) tract. The GI tract includes the small intestine, stomach, mouth, throat and esophagus, the tube that moves food and secretions from mouth to stomach.
Vomiting of blood results after there is upper gastrointestinal bleeding. This condition can sometimes be difficult to distinguish from coughing up blood (from the lung) or a nosebleed (bloody post-nasal drainage).
Conditions that cause blood to be vomited can also cause blood in the stool.
There are several reasons why someone may vomit blood. For example, vomiting that is very forceful or continues for a very long time may cause a tear in the small blood vessels of the throat or the esophagus, producing streaks of blood in the vomit.
Other causes may include: