We read 2,000 contractor websites the way a customer reads them
Not the way a developer reads them. We asked the three questions a homeowner asks in the ten seconds before deciding whether to bother: can I text you, what does this cost, and does it cost anything to ask?
2,304 homepages were fetched across roofing, HVAC, plumbing and electrical work. 2,000 could be read and judged. This is what was on them.
were missing at least one of those three things.
1,902 of 2,000. Three in four were missing two of them. Ninety eight sites, out of two thousand, answered all three.
What was missing
Ninety checks ran over each homepage. These are the eight that came back often enough to matter and that you could explain to a busy owner in one sentence.
A typical homepage had four of these eight. Thirty four out of 2,000 had none.
The one finding we can check against somebody else
Everything above is our own measurement, which is a reason to be careful rather than proud. For one finding there is outside evidence, because two trade publications asked contractors the same question directly instead of reading their pages.
| Share showing no price online | They found | We found |
|---|---|---|
| HVAC contractors ACHR News, 2025 | 69% | 63% |
| Roofing contractors Roofing Contractor, 2025 | 76% | 81% |
Two independent surveys, a completely different method, a different sample, and both land within six points of what we measured by reading pages. That is the strongest evidence available that this finding is about the trade and not about our own code.
The texting finding has no such check. We looked for a published figure on contractor texting adoption and there is not one. The nearest thing is demand-side: 89 percent of consumers say they wish they could text a home service business, which is consistent with most being unable to, but it is not the same measurement. That number rests on our method alone.
The trades are not the same
| Trade | Sites | No text | No price | Not insured | No free estimate | No guarantee | No form | No hours | No reviews |
|---|---|---|---|---|---|---|---|---|---|
| HVAC | 643 | 67% | 63% | 68% | 56% | 35% | 36% | 30% | 11% |
| Plumbing | 415 | 77% | 78% | 53% | 67% | 46% | 40% | 27% | 17% |
| Electrical | 307 | 78% | 83% | 49% | 55% | 45% | 42% | 41% | 26% |
| Roofing | 635 | 83% | 81% | 23% | 18% | 23% | 39% | 50% | 16% |
HVAC is the most reachable trade and roofing the least. Sixteen points separate them on texting. The likeliest reason is visible in the markup: HVAC businesses are the heaviest users of the field service platforms whose web chat doubles as a texting line, so a third of them offer texting without ever writing the word.
The free estimate is the widest gap in the study. 82 percent of roofers say it is free. 33 percent of plumbers do. Same customer, same worry about what a phone call will cost her, and one trade answered it decades ago while the other never has.
Three pieces
Each takes one finding, works out what it is worth using published data rather than our imagination, and says what to do. In one case that turns out to be the opposite of the obvious advice.
How this was done
One ordinary visit each
A single request for the public homepage, exactly what any browser does. Ninety checks then ran over what came back. Nothing was submitted, no form filled, no address guessed, no login attempted. This is reading a public page and there is no code path in it that could become anything else.
What we could not read, we did not count
Of 2,304 homepages fetched, 243 could not be reached and 57 returned an empty shell because the page assembles itself in the browser. Those 300 are reported separately and never counted as clean. A site you cannot read is not a site without problems.
Where the sample came from
A pool of 23,346 United States roofing, HVAC, plumbing and electrical businesses, one row per website. National franchise brands were removed, because 301 Roto-Rooter listings share a single corporate site and a national brand answers these questions nothing like a two-van plumber does. It is a convenience sample drawn from lists we built for our own outreach, not a random draw from every contractor in the country, and a business with no website cannot appear in it at all.
We got it wrong twice before this, in the same direction
Two earlier versions of this study reported worse numbers: first 91 percent untextable and 43 percent without reviews, then 83 and 18. Both were our defects, not the industry's, and both overstated the fault.
The first was a word-boundary mistake. estimate refused to match estimates,
which is how almost every contractor writes it; warrant refused to match
warranty; review refused to match reviews. The second was worse in
principle: we read only words, so Podium, Birdeye and the field service platforms' web chat, which
exist precisely so a customer can text a contractor, counted as no texting at all.
The reason the first survived a self-test is worth stating plainly. The healthy test page had been written by the same hand as the checks, using the exact singular forms the patterns wanted. It proved the checks worked on a page built to match them.
What we did about it, and what we checked afterwards
- 52 assertions against phrasings taken from how contractors really write, in both directions: silent when the feature is present, still firing when it is absent.
- Re-read flagged sites by hand. Of 18 called untextable, 18 were. Of 24 called silent on free estimates, none carried an offer. Of 22 called priceless, none showed a figure.
- Fetched as a browser instead of as ourselves. Identical findings on all 47 sites that could be compared, so the honest user agent is not costing us content.
- Checked the rendered page. Loading flagged sites in a real browser and inspecting the live document agreed with the fetch every time.
- Ran it twice. On the 1,992 sites judged in both runs, the unchanged checks disagreed seven times out of 9,960, which is one tenth of one percent.
What is still wrong with this study
- It reads homepages, not whole sites. For pricing that makes little difference: of 28 flagged sites, none had a price one click away and 25 did not even link to a pricing page. For the free estimate it matters more: 12 percent of flagged sites do say it, on an inner page.
- 161 sites refused us entirely with a 403, and none of them opened even for a browser. They are excluded rather than counted, and whether they are better or worse kept than the rest is something we cannot know.
- Anything set in a graphic is invisible to us. We measured this through image filenames and alt text and it is close to nil, but it is not zero.
- The pricing figure is if anything too kind. Any dollar sign counts as showing a price, and on inspection about half of those are coupons, financing terms or company statistics rather than the price of doing a job. Counted strictly, more than 75 percent of these sites leave a visitor unable to learn what work costs.
The obvious conflict of interest
We sell a tool that answers texts and prices jobs, so we are the last people you should take on trust about how badly contractors need one. That is why the method, the two corrections and the four remaining faults are all written out here, and why the trade table includes the column where an entire trade already does the thing we sell better than we could teach them.
What this looks like solved
Tono answers the text, asks the questions that decide the price, and drafts the quote from your rates. You approve it, change it, or bin it. The customer sees nothing until you say so, and your mobile number appears nowhere.
Free during early access, no card. Or draft a quote for a real job right now with no signup and no account.