A dog puking blood may indicate a severe condition. Call the vet immediately. The dog may be bleeding from somewhere internally. This may be caused by ingesting a foreign object, a tumor, or a severe stomach upset. Vomiting blood is called hematemesis, and require almost immediate attention, especially if the blood is black or dark color.