Have you ever shared a bottle of wine with a friend and when you finish, their teeth are perfectly pearly white while yours look like you just smeared blood all over them? Well there's actually a scientific reason for that.
Whether or not wine stains your teeth comes down to the health of your teeth. Our teeth are covered in enamel, a layer of minerals to protect them. In fact, some say enamel is the strongest substance in the human body. The acidity in wine wears down the enamel of your teeth, and therefore makes it easier for the pigments in wine to "stain" your teeth. The more or stronger enamel you have, the less likely wine will stain your teeth.
So what determines the strength of your enamel? Part of it is genetics. Some people are simply born with more and better enamel than others. Enamel also degrades over time and doesn't grow back. So the older you are, the less enamel you're likely to have, and therefore the more likely you are to have stained teeth after drinking wine.
But other part of it is good oral hygiene. Brushing your teeth regularly helps keep your enamel strong and therefore less likely for wine to stain your teeth. Brushing your teeth before drinking wine will also prevent staining, because teeth covered in plaque are more likely to stain because the plaque absorbs the pigments in wine easier.
Or if you're disgusting and don't brush your teeth but also don't want wine stains on your teeth, just order white wine.
(h/t Mental Floss)