Foreign Bodies
Felines are a curious creature, and although canines are more apt to ingest foreign objects, cats are not immune. The consumption of thread, with perhaps a needle attached, plants, or bone fragments from the garbage or an animal (if your cat is allowed outside) may cause intestinal blockages or injury that could cause your cat to vomit blood. If you suspect your pet has ingested a potentially dangerous item, a veterinary visit is warranted without delay.
Parasites
Intestinal worms and parasitic infection can lead to your cat vomiting blood. Heartworm, tapeworm, roundworm, hookworm and other parasites can cause intestinal irritation that can bring on inflammation of the bowel and colon or initiate symptoms of respiratory distress that could include vomiting blood.
Stomach Ulcers
Stomach ulcers are painful lesions which can remain raw indefinitely due to the exposure to acids in the stomach. Many cats will experience chronic vomiting which contains blood as well as other symptoms like pale gums and weight loss.
Trauma
Any sort of major trauma can lead to your cat vomiting blood. There may be other signs as well that your cat has been seriously hurt such as loss of balance, panting, and dilated pupils. If your cat has been outdoors, there is a possibility he has been struck by a motorized vehicle or experienced a fall from a high distance.