How we rate roofers
RooferRated helps homeowners check a roofing contractor before signing. We match each roofer to public license and permit records, add its Google review history, and calculate a score with a formula published on this page. Companies cannot pay to change their score or ranking.
How is the RooferRated Score calculated?
It's a 0 to 100 score built from Google reputation (35 points), permit activity (15), license standing (10), review volume (10), recent activity (10), responsiveness to reviews (8), years in business (7), and transparency (5). Where permit or license records don't exist, those points are shared among the other parts.
Can roofers pay to change their score?
No. Companies can't pay to change their score or ranking, and there is no paid placement.
Where does RooferRated get its data?
State contractor licensing boards, city building permit records, Google Maps ratings and review history, public domain registries, and each company's own website, with claims labeled as claims. Profiles also link to the roofer's Better Business Bureau profile and Yelp page when we can confirm they belong to that roofer, and to Reddit threads we checked are about it.
What if a city or state doesn't publish records?
Missing records never count against a roofer. If a state doesn't license roofers, or a city doesn't publish permits with contractor names, those points are shared among the other parts of the score, and the profile says so.
The RooferRated Score
A score from 0 to 100. Until a roofer has verified homeowner reviews, it's calculated from public data only and labeled preliminary. Roofers need at least 5 Google reviews to get a score; others show “Not enough data”, which is not a negative rating.
Reputation
35 ptsThe Google star rating, weighted so recent reviews and a long track record both count.
- When a roofer has 3+ reviews in the last 12 months, those recent reviews count for 40%, so a recent slide in quality shows up.
- Every rating is blended with 25 imaginary 4.5★ reviews, so a handful of perfect reviews can't outrank a long track record.
- Points scale from 3.5★ (none) to 5.0★ (full). Most roofers average 4.7★ or higher, so a 1-to-5 scale couldn't tell good from great.
- Trend: when both the last 12 months and the 12 months before have 5+ reviews, a drop of 0.3★ or more subtracts about 2 points and a rise of 0.2★ or more adds about 1.5.
- Yelp cross-check: Yelp filters reviews it considers unreliable. When the roofer's Yelp page (matched by its phone number, street address or website) shows a rating 1★ or more below Google across 10+ Yelp reviews, about 2 points are subtracted. No Yelp page is neutral.
Permit activity
15 ptsRoofing permits matched to the company in city records in the last 24 months. Full marks at 100+.
- Scored only where the city publishes permits with the contractor's name.
- Permit points never fall below the roofer's average on the other parts, so a short permit history can't lower a score.
- No matched permits is never treated as unpermitted work: permits can be filed under another name.
License
10 ptsAn active state license in good standing, where the state licenses roofers.
- Each disciplinary action on an active license removes a quarter of these points.
- An expired, inactive, not-renewed, or null-and-void license scores zero here (the points aren't shared out), but only when we're confident the license is the company's. Weaker matches are shown as a fact and not counted.
- A revoked or suspended license (including a board's refusal to renew) scores zero here and subtracts 10 points from the total, citing the licensing board in its own words.
- "Not required" (Texas) and "no record matched" are neutral: the points are shared out.
Review volume
10 ptsHow many Google reviews the roofer has. Full marks at 1,000+.
- Reviews posted in unusually busy weeks for that company count at half weight. Review gating and incentivized reviews are common in roofing.
Recent activity
10 ptsNew Google reviews in the last 12 months (full marks at 60+) and how recently the last one arrived.
- So roofers who may have stopped working don't coast on old reviews.
Responsiveness
8 ptsHow often the roofer replies to its Google reviews.
- Replies to 1–2 star reviews count the most.
Years in business
7 pts1.5 points per year since the earliest of: license first issued, website registered, or oldest Google review.
- Full marks at about 5 years.
Transparency
5 pts1 point each for a working website, a phone number, a public address, a Google listing claimed by the business, and an address in the metro's state.
- The in-state address check catches out-of-state storm-chaser listings.
- Minus 2 when a company has 3+ Google listings and most have no reviews. Minus 1 when other brand names use the same phone number.
Confidence shows how much data is behind a score: High (50+ Google reviews and 5+ in the last year), Medium (15+), or Low (5–14).
Adjustments never accuse a company of anything. A busy week of reviews can have innocent causes, so those reviews count less rather than being removed.
When records don't exist
What we can check depends on what each state and city publishes. We never treat a missing record as a mark against a roofer:
- The state doesn't license roofers (for example, Texas): the license points are shared among the other parts, and the profile says the license isn't required.
- The city doesn't publish permits with contractor names: the permit points are shared out, and the profile says permit records aren't available yet.
- No record matched: name matching can miss records filed under a legal name or a different spelling, so an unmatched license or zero matched permits is neutral. We say what we searched and when.
- Points are shared in proportion to each part's weight, so the available parts always add up to 100.
Only sourced licensing-board records lower a score: a revoked or suspended license, disciplinary action, or a license the board lists as expired or inactive when we're confident it belongs to the company.
Where our facts come from
- State contractor licensing boards: license number, status, first issue date, and disciplinary actions, for example the Florida DBPR and the Illinois IDFPR.
- City building permit records: roofing permits that name the contractor, where the city publishes them (Orlando, Cape Coral, New Orleans, Baton Rouge, Austin, Chicago).
- Google Maps: ratings, review counts, review dates, owner replies, and listings. We show totals and link to Google; we don't copy review text.
- Public domain registries: when a company's website was first registered.
- The company's own website: claims like warranty length or manufacturer certifications, always labeled as the company's claims.
- Better Business Bureau and Yelp: the BBB rating read from the company's own BBB profile, and the Yelp rating and review count as shown in search results, only when the page lists the roofer's phone number, street address or website. We link to both and don't copy their content.
- Reddit: links to threads found by web search, each checked by hand to be about the company. Labels describe the thread title only.
Every fact shows its source and the date we checked it. For every warning we show, we keep a dated copy of the source values we relied on, so a correction request can be checked against exactly what we saw.
Who we list
- Roofing contractors only. Businesses whose main trade isn't roofing, such as painters, gutter, window or siding companies, insulation and spray-foam installers, handymen, roof-cleaning services, suppliers, and contractor directories, are left out, even when Google files them under roofing. Companies that do roofing alongside other exterior work, or roofing and solar, are included. We review this list by hand.
- Franchise locations of national roofing brands are ranked like any other roofer and labeled with the brand. Their website is the brand's, so we don't use its registration date or claims, or the brand's BBB, Yelp or Reddit results, for a single location.
Verified homeowner reviews (coming soon)
We'll publish reviews only from homeowners who privately share a signed contract and final invoice. Those documents are never published. Each review answers what matters with roofers: whether the final price matched the contract, whether the permit passed final inspection, whether the warranty was registered, the deposit, and any offer to waive the deductible.
Listings that share one website network
Some Google listings that look like local roofers use websites built from one template shared across many listings in many cities, often on low-cost web addresses (such as .site or .best), with recycled business names and phone numbers shared between different brand names. Sites like this often pass your request to another contractor.
We mark a listing this way only when its website shares a template with at least three other roofing websites (and the group shows those lead-generation patterns), or when several independent signs line up: a phone number shared with a different business name, a recycled or keyword-only name, a low-cost web address, plus one more fact such as no license match or a website that doesn't load. A web address or a name alone is never enough, and we check every marked listing by hand.
Marked listings keep their profile and score, with a note explaining what we found, but they aren't ranked and aren't offered to search engines. The note is about the website, not the quality of any one job. If your business was marked by mistake, request a correction or email hello@rooferrated.com and we'll review it.
Corrections
If a fact about a company is wrong or out of date, use the Request a correction link on its profile and include a source if you can. We reply within 2 business days and fix verified errors. Accurate information isn't removed because a company dislikes it. How corrections work.