Your blood is always red, even when it is deoxygenated, so why do your veins look blue? They aren't blue, either, but here is the reason why veins look that way:
Skin absorbs blue light.
Subcutaneous fat only allows blue light to penetrate skin all the way to veins, so this is the color that is reflected back. Less energetic, warmer colors are absorbed by skin before they can travel that far. Blood also absorbs light, so blood vessels appear dark. Arteries have muscular walls, rather than thin walls like veins, but they likely would appear the same color if they were visible through the skin.
Deoxygenated blood is dark red.
Most veins carry deoxygenated blood, which is a darker color than oxygenated blood. The deep color of blood makes veins appear dark, too.
Different sizes of vessels appear different colors.
If you look closely at your veins, for example, along the inside of your wrist, you'll see your veins are not all the same color. The diameter and thickness of the walls of the veins plays a part in the way light is absorbed and how much blood is seen through the vessel.
Vein color depends on your perception.
In part, you see veins as more blue than they really are because your brain compares the color of the blood vessel against the brighter and warmer tone of your skin.
What Color Are Veins?So, if veins aren't blue, you may be wondering about their true color. If you have ever eaten meat, you already know the answer to this question! Blood vessels appear reddish-brown in color. There isn't much difference in color between arteries and veins. They do present different cross-sections. Arteries are thick-walled and muscular. Veins have thin walls.
Learn MoreWhy Blood Isn't Blue
Why Babies Have Blue Eyes
Why the Sea Is Blue
Chemical Composition of Human Blood
Intro to Biochemistry