A good quality, professionally installed roof should last for decades. Metal roofing products can last up to 70 years, depending on material and design; slate can last anywhere between 50 and 200 years, and a membrane roof will give you about 40 years.