The green colour is due to immune cells called neutrophils. These are the first cells to appear when bacteria start infecting the nasopharynx. Neutrophils will engulf the bacteria (phagocytosis) and begin to destroy them within themselves using potent digestive enzymes (amongst other things, another being hydrogen peroxide). One of these is lactoferrin and other enzymes are dependent on iron for their activity. The colouration therefore comes from the iron. Ferrous iron compounds are green. It turns yellow the bacteria have been around for a while and other cells start moving in and dying
Long, long ago, our family doctor told me that if er, snot, was green, it meant an infection (as Qadgop said above).
I assume blood is red due to the amount of iron in it, but I’m not sure.
I’d like to know about the color of urine, myself. I’m a Type I diabetic and when my blood sugar or ketones are high, my urine has a stronger or darker yellow color than when they’re low–when they’re low, it’s almost colorless.
Do NOT assume that green color means a bacterial infection!!! It does necessarily follow! Viral infections (among others) can cause green snot!! Do not demand antibiotics because your snot is green, please.
When my allergies are acting up, my snot is green. My ENT said green snot does NOT always indicate a sinus infection, bacterial or viral. Snot may also be “greener” in the morning because of all the goop just hanging around in there during the night.