How we read reviews
Every number on this site comes from somewhere specific. This page says where, and what it does and does not support.
Last updated August 2026
Where the data comes from
Everything on a profile is drawn from the business’s public Google listing: the star average, the number of ratings, the breakdown of those ratings, the review text, the business’s replies, its opening hours and its contact details. We do not collect it from the business, and no business pays to appear, to rank higher, or to have anything removed.
We currently list 26,433 roofing contractors and hold 1,746,626 individual reviews, drawn from 2,395,397 ratings Google has counted. The snapshot behind this build was taken on 2026-09-24. Ratings move; a profile is a photograph, not a live feed.
Why the distribution and not the average
A star average is a volume-weighted number. A roofer who completes hundreds of straightforward jobs and half a dozen disasters averages roughly the same as one who has never had a serious complaint, and the difference between them is the entire thing a homeowner needs to know.
Google publishes the breakdown — how many five-star ratings, how many four, and so on down to one — but leads with the average. We take the breakdown and state the share of ratings that are one or two stars, as a percentage, near the top of every profile.
That share is calculated as (one-star + two-star) ÷ every rating Google has counted. The denominator matters: it is Google’s own total across all of its reviews, not the number of reviews we happen to hold text for. Calculating it from our own sample would produce a plausible-looking number that is wrong, because the reviews we hold are not a random selection.
Across every roofer we list, the median one-and-two-star share is 1.3%, one in ten sits above 14.3%, and one in a hundred sits above 44.4%. Most of the roofers at the wrong end of that still show four stars or better: 3,677 of the businesses here are rated 4.5 or above and carry a one-and-two-star share over 5%.
When we withhold the comparison
Below 15 ratings, the share is arithmetic noise. One unhappy customer out of six is 17%, which tells you nothing about the business. On those profiles we show the counts and say plainly that there are too few ratings to compare. We would rather print “—” than a number that invents a verdict.
Where there are enough ratings, we compare the share against the median for the same state, because a bare percentage is not something a reader can judge. That comparison is a prompt to read the critical reviews, not a rating of the business.
Which reviews we show
The one and two-star reviews go first, with the business’s replies attached. We then show a selection of the rest, most recent first. Both sections say how many we hold, and we never describe our sample as though it were everything Google has.
Two limitations worth knowing. Google truncates long reviews, and where it has we say so under the review rather than presenting a fragment as the whole thing. And Google gives review dates only as relative strings — “3 years ago” — so that is what we print. There is no exact date behind it, so we do not invent one.
We remove duplicate reviews where the same author appears twice with the same date, which happens when a review was captured more than once at different lengths.
What we do not check
This is the most important section on the page. Roof Warden does not verify licenses, bonds, insurance or workers’ compensation cover. We hold no data that would let us, and we would rather say so than let an absence be mistaken for a clean result.
Some profiles have a section headed “What this business says about itself”. That is marketing copy lifted from the roofer’s own website, shown as a quotation with the source sentence. It is not a credential and we never render it as a tick. A roofer writing “fully licensed and insured” on their homepage is evidence of what they wrote, and nothing more.
Before hiring anyone, confirm their license with your state or provincial licensing body, ask for a current certificate of insurance, and ask specifically about workers’ compensation. If an uninsured worker is hurt on your roof, the exposure can be yours.
Blank is not zero
Where we have no data for a field, the profile says so in words. A business with a short profile is one our capture found little about — not one with nothing to hide and not one with nothing to find. We publish thin profiles rather than dropping them, and label them.
Corrections
If something here is wrong, tell us and we will fix it. Business owners can read what we do with corrections, or write directly to team@roofwarden.com. We do not remove accurate reviews because a business dislikes them, and we do not charge for a correction.