The lifespan of commercial and residential roofs depends on various factors, such as the materials installed and the exposure to weather. Asphalt shingles typically last 15-20 years, while metal roofs last about 40 years. Rubber roofs installed on flat surfaces last about 20 years.