A well-maintained roof can last 20-30 years. Some types of roofing materials can last as long as 50 years. However, the key to those many decades of trusted home protection is good maintenance, and responsive repairs. While the entire structure may last for decades, individual shingles and other minor elements may need to be fixed along the way.