Why do salmon eggs come in different colors?
Salmon eggs (roe) range in color from pale yellowish-orange to dark reddish-orange. The color varies both by species and within species and is determined by water temperature, sediment composition, age, and other factors. The eggs vary in size from the tiny sockeye roe (average 1/4 inch or 5.6 mm) to the large chum roe (average almost 1/2 inch or 8.3 mm). Also, if a salmon egg does not get fertilized, it can lose its bright hue and turn a milky shade with patches of color.
The red color of the eggs comes from carotenoids (antioxidant pigments) that the salmon get from their diet. Salmon deposit carotenoids in both their skin and eggs in preparation for spawning. It protects tissues from oxidative damage and helps regulate immune response. In a spawning adult, the red color is a signal of fitness and status, and is used to attract mates.
Pacific Salmon (U.S. Fish and Wildlife Service)