In general, a roof should last around 15 to 20 years. However, this is dependent on how well a roof is maintained, the area’s climate and precipitation trends, the materials used in roofing, and whether any damage is addressed as soon as it occurs. Some may last 10 years, while others may surpass 20 years.