Compare STL Roofers · The public record
Set Your Roofer Comparison Columns Before the Prices
Set the rows of your roofer comparison before you read any price, so every bid is checked against the same written answers.
Three roof bids on one kitchen table usually turn into a fight over the bottom line. The lowest number gets circled, the others get a glance, and the decision is made on the one figure that is easiest to read. Before any price is read, set up the comparison sheet with the questions every bid has to answer. Each roofer gets a column, each question gets a row, and the price becomes one row among several. That order keeps a thin bid from winning simply by leaving things out.
Roofer comparison
Start with the rows that describe the job itself. On a typical St. Louis asphalt reroof, the useful rows are the scope in plain words (tear-off or overlay, how many layers are on the roof now, and what is coming off), the shingle product named by brand and line, the underlayment and where ice and water shield goes, the drip edge, the flashing at chimneys and walls, and the ventilation changes. Each row should be answerable by every roofer on the list, so a blank cell means the bid skipped it, not that the question was unfair.
Add rows for the calendar. A roof bid in St. Louis lives inside hail season, the spring and summer storms that bring the hail the county records every year, and inside a freeze and thaw cycle that makes a half-finished roof a leak risk if the weather turns. Write down the start date each roofer commits to, whether that date is tied to material delivery, and what each one says happens if rain shuts the job down for a day or a week. A date with no condition attached is a hope, and a hope does not belong in a column meant to compare commitments.
Add rows for the crew and the site. Note who is on the roof each day, whether the roofer names a lead, how the property is protected, where the dumpster sits, and how the yard is cleaned at the end. Ask each roofer to write these in plain words. "We clean up" is not a usable cell. "Magnet sweep of the yard and driveway at end of day, final sweep after dumpster removal" is.
Last, add a row for paperwork. Note whether the proposal is signed by someone with authority to sign it, whether the permit is pulled by the roofer or left to the homeowner, and whether the roofer will leave a copy of the signed contract and a written scope with photos and measurements. Keys documents damage, puts a written scope with photos and measurements in the homeowner's hands, and attends as the contractor while the homeowner deals with their own insurer. Compare that same set of promises across every bid.
If a roof claim is part of the picture, add one row that describes what each roofer will and will not do. Missouri law (RSMo 407.725) forbids a roofing contractor from representing or negotiating a homeowner's insurance claim, and it forbids a roofer from saying anything about paying, waiving or covering a deductible. A roofer who offers to handle the insurer is breaking that rule, and that cell deserves a mark. Missouri has no matching statute and no matching regulation for roofs, so if matching comes up, the answer turns on the wording of the policy, and the bid should say so rather than promise a match.
What it costs
Price rows need the same unit on every sheet. Some bids are priced by the square, which is 100 square feet of roof area, some by the slope, some as a lump sum, and some as a base price with unit adders for vents, pipe boots and extra decking. A total from one roofer and a total from another are not comparable until each is broken into the same units. Write the unit in the row label, then write the number in the cell.
Check what sits inside each total. Ask whether sales tax is included or added. Ask whether the permit fee is in the price, and which permit desk it runs through, since St. Louis County and the city each have their own process. Ask whether disposal is a flat line, and whether there is a dumpster overage charge if the bin fills before the job is done. Ask whether any allowance lines are fixed numbers or estimates that will move. An allowance is a number that is not yet a price, so the sheet should mark it as one.
Watch for the gap between the bid and the final invoice. A bid that lists decking as a unit price, with a rate per sheet, is easier to check than one that says decking is included unless it is rotten. Ask each roofer what they charge per sheet of replaced deck and whether that rate is in writing before the tear-off begins. The decking cell should show a rate, not a shrug.
Divide the price by the years you expect the roof to last, and put that figure in its own row. A cheaper roof with a shorter service life may cost more across the years you keep the house. Do not treat that division as a verdict, because service life depends on the install, the attic ventilation and the storms the roof takes. It does turn a total into something you can compare.
What to ask
Send each roofer the same written questions, and record the reply in that roofer's column the day it arrives. The list below is short on purpose. Each question is one a roofer can answer in writing without a sales call.
- Which exact shingle line and color will go on the roof, and will the bundle labels match the order?
- How many layers are on the roof now, and what will you do with the old underlayment?
- Where will ice and water shield go, and how far up the deck does it run at the eaves?
- What is the start date, and what condition would move it?
- Who will be on the roof each day, and who is the lead on site?
- How is the yard protected, and who sweeps the magnet at the end of each day?
- Who pulls the permit, and which county or city desk issues it?
- What is the price per sheet of replaced decking, in writing?
- What does the total include for disposal, and what is the overage charge if the bin fills?
- Will you give me a signed copy of the contract and a written scope with photos and measurements?
Mark each cell as yes, no or vague. A vague answer is not a no, but it is not a row you can score either. Call the roofer back on the vague ones and ask for the same answer in writing. A roofer who answers the same question the same way twice, in writing, has given you a comparable row. One who changes the answer between the estimate visit and the written bid has given you something to weigh, and the sheet should show that change instead of hiding it.
If you want to put a question to Keys directly, the office number is (314) 220-2333. Keys can answer the same questions in writing, and its reply can go into its column like any other.
Ask us for the document, not for the ranking
A star rating separates the disasters from everyone else and then stops being useful. What separates the rest of the field is the written scope and who is actually standing on the roof, which is what the five criteria at the top of this page are built around.
Keys Roofing works in the same market as every other name on this page, and the fastest way to test our pick is to make us prove it on your own roof. Ask for the scope, lay it beside the two you already have, and hold all three against the same five questions.
Straight through to the Keys Roofing office. If you would rather talk it through than type it out, this is the line.
Ask for the third scope
Roof replacement. St. Louis metro only.
This goes to Keys Roofing and nowhere else. No other company named on this site receives it.