Harrison McCampbell, AIA, roofing and waterproofing specialist, replies: I think that putting a metal roof over shingles is unwise for at least three reasons: rot, rust, and weight. There could be some rotted decking and/or rafters below that may not be visible unless you tear off the old asphalt shingles.
Because your house is in Florida, humidity and condensation come into play. Moisture can collect on the underside of a metal roof (which usually doesn’t have a protective coating) and can cause rust. Even though steel is a galvanized metal, the roof still can rust, especially as close to the coast as your house is. You should follow the manufacturer’s instructions for installing the metal roof, but in general, you need to provide some ventilation under the metal to allow moist air to escape.
Also, two layers of shingles weigh quite a bit. Adding more weight to the rafters probably isn’t a good idea, but that depends on the size and span of the rafters.
For the reasons I’ve noted, I think you should tear off the old shingles, properly prepare the roof decking, and install the metal roof correctly.
Give the finish on your metal roof careful consideration. In a harsh sun environment such as Florida’s, you need to use a metal-roofing finish that will stand up over time. Certain colors, such as red or blue, tend to oxidize more quickly than other colors, and the method of finishing the metal panels is critical. Roof coatings such as Kynar will last a long time and won’t fade, but they’re also expensive.
Installing a metal roof may well be the last roofing decision you’ll ever make, so it’s worth the time, effort, and money to do it right.