Roof stains are caused by algae, moss and dirt buildup on your roofing system. These stains can appear as streaks or spots that range from green to black. They typically form in areas of the roof where there is standing water or where moisture accumulates, such as near the gutters or along shaded areas of the roof.