A shingle roof will typically last 18 to 23 years. However it can be longer or shorter due to specific conditions on site such as shading or storms. A metal roof will typically last longer with warranties in the 30 to 40 year ranges. Tile roofs will have a long age span as well.
