The price tag for a metal roof will land between $10-$20 per square foot and between $20,000 and $40,000 for the average home. Some materials (like zinc or copper) will be significantly more than other materials (like steel or aluminum).