We reviewed 21 Sacramento roofing websites. Here's where the leads go cold.
Every one of these sites can be found on Google right now, in Sacramento, Roseville, Folsom, Elk Grove, Citrus Heights, Rocklin and Davis. We didn't call anyone or submit a single form — just looked at what a homeowner sees on the homepage, on a phone, the same way a lead does. The pattern that showed up most often wasn't a broken phone number or a missing service-area page. It was silence about what happens after 5pm.
What did this study actually look at?
Twenty-one real roofing-company homepages serving Sacramento, Roseville, Folsom, Elk Grove, Citrus Heights, Rocklin and Davis, found through plain Google searches for a roofing contractor in each city, checked on August 20, 2026. No forms were submitted, no phone calls were made, and no business was contacted. Every observation below came from what's publicly visible on a homepage — the same information any homeowner would see.
The search queries were direct: "roofing company [city] CA" or "roofing contractor [city] CA," one per target city, plus a general search for top-rated Sacramento roofers to round out the list. Any reader can rerun the same searches and land on a similar sample — not an identical one, since search results shift, but a comparable cross-section. Directory listings (Yelp, BBB, Angi, HomeAdvisor, Thumbtack, GAF's contractor finder) were used only to find company names, never counted as a "website" themselves. One result that came up under a Davis search was dropped from the sample after its own homepage showed it primarily serves Solano County, outside this study's area — the kind of judgment call disclosed here rather than buried.
Each site was checked against seven questions, the same ones a storm-damaged homeowner is effectively asking without realizing it: Is there a phone number, and is it a real tap-to-call link? Is there a contact form, and how much does it ask before it can be submitted? Is there any after-hours signal at all — hours, a text option, live chat, an explicit around-the-clock claim? Does the site say where it actually works? Does it promise any response time? Does it load and behave on a phone? Is there a visible Google Business Profile link or review count? Every homepage was fetched fresh, with a mobile browser identity, and cross-checked against its own underlying page code rather than trusting a single read — two early automated reads of this exact sample turned out to be wrong about click-to-call links that didn't actually exist in the page.
What did 21 Sacramento-metro roofing homepages actually show?
A phone number and a service-area list were nearly universal — every site had both. What was rare was any signal about after-hours reachability or how fast a lead gets a response: only five sites offered anything beyond standard weekday hours, and only two put a number on how quickly they respond. The table below is the full aggregate; the sections after it walk through each finding with the texture behind the count.
| Signal measured | What we found | Share of sample |
|---|---|---|
| Phone number shown on the homepage | 21 of 21 sites | 100% |
| That number is a real tap-to-call (tel:) link | 18 of 21 sites | 86% |
| Contact/quote form directly on the homepage | 10 of 21 sites | 48% |
| Any signal beyond standard weekday hours | 5 of 21 sites | 24% |
| No after-hours signal of any kind | 8 of 21 sites | 38% |
| Explicit, numeric response-time promise | 2 of 21 sites | 10% |
| States at least one service city | 21 of 21 sites | 100% |
| Specific review count with a working link | 8 of 21 sites | 38% |
Full method above. Individual sites are not named except for two positive examples flagged later — see "Why doesn't this teardown name the roofing companies?" in the FAQ.
How many Sacramento-area roofing websites make it easy to actually call?
Every one of the 21 sites showed a phone number, but showing a number and making it tappable turned out to be two different things. Eighteen of 21 (86%) had a real tel: link somewhere on the page. Of the remaining three, one displayed the number only as plain text with no link behind it anywhere on the page, and two rendered their entire homepage through client-side JavaScript — meaning the phone number, along with everything else, doesn't exist in the page at all until a script finishes running.
That last point is worth sitting with. Two of the 21 sites are built as JavaScript applications rather than plain HTML pages — a common pattern from modern site builders. A visitor with a normal phone and a normal connection sees the finished page fine. But a slow connection, an older device, or any tool that reads a page before running its scripts sees nothing: no phone number, no form, no service list, just an empty shell. That's a real cost hiding behind a page that looks complete once it loads.
Do these roofing websites say anything about nights and weekends?
Rarely, and almost never with any specifics. Five of 21 sites (24%) offered something a homeowner could actually use after 5pm — extended or weekend hours, or a confirmed way to text instead of call. Eight of 21 (38%) said something — usually plain Monday-to-Friday hours — that quietly answers the question "not tonight." And 8 of 21 (38%) said nothing on the subject at all: no hours, no emergency language, no text option, no chat.
Not one of the 21 sites stated an explicit 24/7 promise anywhere a visitor would actually read it. One site's backend SEO markup — the structured data written for search engines, not the visible page — described "24/7 emergency roof repair," a claim that never once appeared in the text a human visitor sees on that same page. Worth calling out specifically and by name: Citrus Heights Roofing Solutions lists hours running seven days a week, 7am to 10pm — the most reachable window stated anywhere in this sample, and stated plainly rather than implied.
Do any of these roofing sites promise a response time?
Almost none. Two of 21 sites (about 10%) made an explicit, numeric promise about how fast they respond to a new inquiry, and both of them landed on the identical figure: "within 24 hours." No site in the sample promised anything measured in minutes. The other 19 either said nothing about response time, or used vague language — "promptly," "as soon as possible," "fast" — that commits to nothing a homeowner could hold them to.
Twenty-four hours is not a bad promise to make. It's a real, specific, keepable number, which already puts those two sites ahead of the field. But it's also worth naming plainly what it means: a lead submitted Friday evening, by that same promise, might not hear back until Saturday evening — right as the homeowner is deciding which of the three companies they contacted is actually going to show up.
How much does a visitor have to fill out before reaching a human?
Roughly half. Ten of 21 sites (48%) put a lead-capture form directly on the homepage; the other 9 required at least one click through to a separate contact or quote page before a form appeared. The two JavaScript-rendered sites couldn't be checked this way at all — both showed an interactive quote tool once their scripts ran, invisible to a plain page fetch.
Where a form did exist, most asked for roughly four things — name, phone, email, and either a message or a service-type selector — which is a reasonable amount of friction for a first touch. The extremes were more interesting than the average: the lightest form on any homepage asked for essentially one field before a phone-only quick-contact bar; the heaviest ran a five-step wizard collecting around a dozen data points, including project description, material preference and payment method, before a homeowner with a leaking roof ever reached a person.
Do these roofing websites say clearly where they actually work?
Yes, almost universally, and this was the strongest result in the whole study. All 21 sites named at least one city they serve. Three named only their own home city; the rest ranged from a handful of neighboring towns up past 30 named communities across several counties, and one company's site listed service territory spanning three states.
This is the one area where the roofing sites in this sample largely got the basics right, and it's worth saying so plainly rather than only cataloguing gaps. A homeowner in Rocklin or Davis checking whether a company actually covers their address had a clear answer on nearly every site checked.
Do Sacramento roofing companies show their reviews?
Most show something, fewer back it up. Fifteen of 21 sites (71%) displayed some star rating or review reference. Only 8 of 21 (38%) paired that with an actual review count and a working link to Google, Yelp or BBB; the rest showed a decorative badge image with no count and no click-through. Six of 21 (29%) showed no rating or review signal at all.
Nearly every rating shown across the sample sat between 4.5 and 5.0 stars — unsurprising, since businesses choose what to display, and this study made no attempt to independently verify any review's authenticity or a platform's true current score. One site's presentation stood out on completeness rather than the number itself: worth naming, Straight Line Roofing & Construction displayed a specific, linked review count on all four of Google, Yelp, BBB and GuildQuality, which is the most transparent review presentation found anywhere in this sample.
Do these sites work on a phone, and how fast do they load?
Every site in the sample declared a mobile-responsive viewport tag, which is the baseline signal a site was built with phones in mind, and every site returned a normal page over a mobile browser identity. Beyond that baseline, this study's ability to judge "usable at a phone width" is limited, and that limit is stated plainly rather than papered over with a confident-sounding score.
What could be measured: initial response times ranged from a fraction of a second to, in one case, over ten seconds before the server began responding at all on a fast connection — before a single image had loaded. One site's declared HTTPS security certificate did not match its own domain name, a technical detail invisible to a casual visitor but the kind of thing that can trip a browser security warning or quietly fail for some visitors. What could not be measured without a real browser rendering each page: whether text actually stays readable, whether buttons stay tappable, and whether layouts break at common phone widths. That gap is real, and it's why this section reports what a script can verify rather than what only a human eye could confirm.
Is speed to lead really the biggest gap, or something else?
Based on this sample, yes. The mechanical basics — a phone number, a service-area list — were close to universal. What was scarce was any answer to the two questions that actually decide who gets the job when a homeowner is comparing three roofers at once: what happens if I find you outside business hours, and how fast will you actually get back to me. Sixteen of 21 sites had no meaningful answer to the first question, and 19 of 21 had no answer at all to the second.
This is a seam, not a single broken part. The website itself mostly works: the phone rings, the form submits, the page loads. The gap sits in what happens in the hours after a click — between the ad or the search result that brought someone to the page, and whatever actually happens once their information lands somewhere. A website that shows a phone number but never says what happens at 9pm has quietly outsourced its most important promise to the reader's imagination.
The evidence that this specific gap costs real jobs, not just theoretical ones, doesn't come from this study — it comes from a widely cited Harvard Business Review analysis of how fast companies actually respond to web leads. That research found that companies making contact with a new lead within the first hour were dramatically more likely to qualify it than those waiting even a few hours longer, with the odds continuing to fall the longer the delay ran (Oldroyd, McElheran & Elkington, Harvard Business Review, 2011). Consumer research points the same direction on trust: in BrightLocal's 2026 Local Consumer Review Survey of 1,002 US adults, 97% of respondents said they read reviews before choosing a local business, and 68% said they'd only use one rated 4 stars or higher (BrightLocal, Local Consumer Review Survey 2026). Neither statistic was measured by Apex; both are cited here because they explain why the two thinnest layers in this sample — after-hours reachability and response-time honesty — are also the two most expensive to leave thin. The mechanics of why the first few minutes matter this much are broken down further in speed-to-lead.
What can a roofer fix this week, for free?
More than half of what showed up in this sample doesn't need software, a developer, or a marketing agency — it needs an honest sentence and about twenty minutes. A phone number can be wrapped in a real tap-to-call link in one line of code. A homepage can state actual hours, including an honest answer for what happens after them, without hiring anyone. A five-step quote form can be cut down to name, phone and one line, with everything else moved to the call that follows.
None of this requires waiting on a proposal. It requires deciding what's actually true — what your real hours are, what actually happens to a lead that comes in Saturday night — and then saying that plainly instead of leaving the question unanswered. The table below splits every gap found in this study into what's a free fix this week and what genuinely isn't.
| Gap found in this study | Fix it yourself, this week | What actually needs a system |
|---|---|---|
| Phone number isn't a tap-to-call link | Wrap it in a real tel: link — a five-minute code edit on most site platforms. | Nothing. This one is genuinely free, on every platform. |
| No stated hours or after-hours answer | Write one honest sentence: your real hours, and what happens to a call after them. | Actually answering after hours — missed-call text-back, an instant auto-reply on every source — needs automation wired to the phone line and every form, not a sentence. |
| No response-time promise | Only promise a number your team can already hit on a normal day. | Hitting that number on the day 40 leads land at once after a storm needs a system, not willpower on one Tuesday. |
| Bloated or buried contact form | Cut the homepage form to name, phone and one line; move everything else to the follow-up call. | Routing every source — call, form, chat, text — into one place so nothing sits unseen needs a CRM layer underneath the form. |
| No review presence | Add one linked Google Business Profile with your real, current review count. | Systematically asking every completed job for a review, and tracking which lead source produced it, needs the same tracking layer as everything else here. |
What actually requires a system instead of a to-do list?
Everything that has to hold up on the day it matters most, not just on a quiet Tuesday. A sentence about hours is free. Actually answering a call at 9pm on a storm night — every time, without a person remembering to check a shared inbox — is infrastructure: missed-call text-back, an instant SMS reply wired to every lead source, and a way to track a click all the way to a booked estimate instead of just a form submission.
That's the exact mechanism Apex builds for roofing and home-services companies — geo-fenced local ads, instant lead response, storm and seasonal campaigns staged before the weather turns, and booked-estimate tracking instead of raw lead count. The full breakdown of how that system is built, and why speed-to-lead is the highest-leverage fix in this industry, lives on the roofing & home services page. The sequence Apex follows to build it — in order, before any contract is signed — is published on the method page. Pricing for it — including the flat $1,497/month Founders Pack built specifically for single-crew roofers — is public on the pricing page, alongside the rest of what Apex runs on the services page.
What are the limits of this study?
This is a small, non-random sample of 21 publicly visible homepages, checked at a single point in time — August 20, 2026 — not a survey, not an audit performed with any business's cooperation, and not a claim about every roofing company in the Sacramento area. Search results change; a rerun of the same queries next month would return a similar but not identical list.
The biggest gap in what this study can say: it has no data at all on how any of these companies actually perform once a lead is submitted. Measuring real response time would mean submitting real forms to real small businesses and timing their replies, which this study will not do — that's a cost imposed on a real person answering a phone, not a website. Everything reported here is what's visible on the page itself: what it says, what it links to, and what it asks for. What happens after a form is submitted is real, matters more than anything on the page, and is invisible from the outside. That gap is exactly why the after-hours and response-time findings above are read as a signal about intent and preparedness, not a scorecard of who actually answers fastest.
Questions this teardown raises.
Is your own site answering the 9pm question?
Start with the free 60-minute audit: we'll look at your actual phone setup, your response time, and where a lead can currently go cold between the ad and the invoice. Single-territory roofers can go straight to the Founders Pack application. The method behind the fix is on the roofing & home services page, full terms are public on the pricing page, and more studies like this one are collected on the teardowns index.