A roofing website has one job: turn a homeowner with a roof problem into a call or a quote request. Everything else on the page is either helping that happen or getting in the way.
This one belonged to a roofing company in a mid-sized U.S. metro. More than sixty five-star reviews, a Better Business Bureau accreditation, an owner who answers his own phone. The kind of company that should be busy from its website alone. And the site was sending it almost nothing: no way to request a quote, a phone number that was hard to reach on a phone, and a Google position on page seven for the search that brings in roofing jobs.
I did the audit the same way I did the surgery clinic audit earlier this month, but the site has a different shape, so the review had a different shape. A clinic lives on referrals. A roofer lives on strangers who search, compare three companies in ten minutes, and call the one that made it easiest. So I scored six areas by how much each affects the sale, critical down to medium.
How I reviewed it, and what I could not see
I went through all 36 pages in the sitemap on a desktop screen and at iPhone size. I read the page code for titles, headings, business details and tracking tags. Search and link numbers came from Semrush, United States data, September 2026. I asked an AI search tool the questions a homeowner would ask.
What I did not have: the company’s Google Analytics, Search Console or Google Business Profile. So this audit has no actual visitor, call or lead counts, and I said so on page three of the report. The first thing I would ask for is a look at those accounts together. An audit that hides what it could not see is not an audit. It is a sales pitch.
There is no way to request a quote, and the call buttons do not call
The Contact page has two buttons, Call Us and Email Us. There is no form on it, or on any of the other 35 pages. The copy tells visitors to leave their name and number and explains what happens “if we miss your call.” The page is preparing people for voicemail.
The Email Us button opens the visitor’s mail app. On a work computer, that is often nothing. And the big green “Call Now” button in the header does not start a call. It links to the Contact page. On the Contact page, it links to itself.
The full Contact page on a desktop. Everything below this is the footer.

Homepage, first screen. Get a Free Inspection is a phone link that does nothing on a laptop.

Why it is critical: plenty of homeowners look for a roofer at night, at work, or while comparing three companies at once. They will fill in a short form. They will not leave a voicemail and wait. When the owner is on a roof and cannot answer, that lead goes to the next roofer on the list.
On a phone, the phone number is hard to find
The mobile header shows the logo and a small menu icon. The Call Now button from the desktop site is gone and the number is not shown. The menu has no call button either. Past the first screen, the next way to call is about two thirds of the way down a page that runs nine screens long, and nothing stays pinned while you scroll.
First screen

Menu open. No way to call.

17 city links, 22 pixels tall

The best sales asset on the site is mostly hidden
The company’s public review profile shows more than 60 reviews at a perfect 5.0. The homepage review section says “50+,” the hero says “500+ satisfied customers,” and the line beside the stars, “customers have given ratings for support,” is leftover text from the website template. Two reviews appear on the page. The photos beside the reviewers’ names are roof pictures, which makes real reviews look fake.

Also missing from the site: manufacturer certifications, warranty terms, financing, a photo of the owner and crew, a street address and business hours. Each one answers a question a homeowner has before they call. The experience claim changes from page to page, 30 years on the homepage and “over a decade” on the city pages, and the badge that makes the claim has a spelling mistake in it.
The copy is the same story. The homepage talks about experience, craftsmanship and commitment, the same words every roofer uses. It never mentions the leak, the storm or the cost that brought the visitor there. The company’s strongest line, that you deal directly with the owner, sits on the About page and the city pages, and not on the homepage or a single service page. The reviews describe the company better than the site does: a whole roof done in one day, the cleanup, help picking the shingle color. The page copy uses none of it.
Google is not showing the site to people looking for a roofer
The site ranks for 71 search terms, and nearly all of them sit between positions 40 and 90. That is pages four through nine of Google. Semrush estimates about 18 visits a month from search for the whole site, and scores how much Google trusts the domain at 2 out of 100.
| What people search | Searches a month | This site’s position |
|---|---|---|
| roof repair + city | 210 | 64 |
| roof replacement + city | 210 | 65 |
| city + roofing services | 140 | 66 |
| commercial roofing + city | 140 | 89 |
| city + roofers | 90 | 73 |
| roofing companies + suburb | 70 | 78 |
| the company’s own name | 880 | 40 |
Semrush, United States, September 2026. Page one of Google is positions 1 to 10. The last row is the one that should worry an owner most: 880 people a month search the company’s name and the site is on page four, behind a similarly named company in the next town.
The reasons are ordinary, which is the good news. Roof repair is the most searched roofing service in the market and it is in the homepage title, and there is no page for it. Also missing: residential roofing, insurance and hail claims, emergency repair, inspections, gutters. The service page titles read “Roof Leaks” and “Roof Renovation” with no city and no company name. Twelve pages have two or three main headings; the Contact page has none. The 17 city pages share one template and one title, average 350 words, and show no local projects or reviews, so Google tends to ignore them.
Two things were less ordinary. The business listing in the page code claims a 5.0 rating from 50 reviews, has no address, hours or map location, and Google does not show stars for ratings a business reports about itself. And 279 sites link to the domain, yet the trust score is 2, because 79 percent of them are very low quality and 23 percent are based in Singapore. Some of the link text reads like ads for cheap link packages. That is a pattern Google flags as risky, and it needs a proper review before anyone builds more links.
Side by side with two roofers on page one
Numbers on their own are abstract. So I put the site next to the two companies a homeowner in that market sees first.
| This company | Competitor A | Competitor B | |
|---|---|---|---|
| Position for “roof repair + city” | 64 | 1 | 4 |
| Visits a month from Google (estimate) | About 18 | About 1,700 | About 1,400 |
| Quote form on the homepage | No | Yes, first screen | Yes |
| Phone number in the header | Does not dial | Yes | Yes |
| Reviews on the site | 2 shown | Reviews page in menu | 895 Google reviews shown |
| Roof Repair page | No | Yes | Yes |
| Financing mentioned | No | Yes | Yes, own page |
| Warranty mentioned | No | Yes | Yes, own page |
| Shingle maker certifications | None shown | Two brands | Three brands |
Competitor A on a phone

The point
AI tools are already answering questions about the company
This is the part of the audit that did not exist two years ago, and it is now on every audit I run. I asked Perplexity who the best roofing companies in the city are for roof repair. It named five, and this company was not one of them. It picked the five for stating that they handle repairs, and for their manufacturer credentials and BBB standing.
Then I asked whether this company is a good one to hire. The answer called it “a reasonable company to consider” and then listed reasons for caution. The first: it is “a relatively young business,” citing a BBB start date from only a few years back. The website says 30 years. The Google profile says 15. The AI had three answers to choose from and used the least flattering one. It also warned people not to confuse the company with a similarly named roofer in the next town, which is the same company that outranks it for its own name.
“Who are the best roofing companies in the city for roof repair?”

“Is this company a good one?” Reasons for caution.

The fix is not clever. Make the years in business, phone number and company name match on the site, Google, the BBB and the directories. Then add the Roof Repair page and put the credentials and reviews where a machine can read them. I wrote about the mechanics of this in the AI search article; this was the first audit where I watched it cost a specific company a specific job.
Nobody can see what the website produces
A Google tracking tool is installed, but I could not see Google Analytics recording my visit, which needs confirming inside the owner’s account. There is no call tracking, and since phone calls are the only way to reach the company, no lead can be traced to the site, a page or a search. Nothing records how visitors scroll or tap.
On the technical side, all 49 homepage images load at once, the project map tab loads about 60 extra files on every page, and sections stay blank or faded for a moment while they animate in. On a phone with a leak overhead, that moment is long enough to leave.

The menu hides the services, and the path ends without a form
The first menu item is “All Pages,” a dropdown left over from the template that repeats About, Services, Contact and Our Work, which already sit beside it. Blog and Areas can only be reached through it. There is no services menu, so a visitor with a metal roof or a leak clicks Services, then hunts for the right card.
The “All Pages” dropdown open on the homepage

A service page. The right half of the screen is empty.

What this means in dollars
I did not have the owner’s numbers, so I did not guess at them. I gave him the equation and an illustration, and asked for the real figures. With them, the page stops being an example and becomes a plan.
Illustration only. No forms loses everyone who will not call. A hidden number loses the urgent jobs. Hidden reviews lose the careful buyers. No tracking means none of it is visible, so none of it gets fixed.
What I could not prove
I could not prove a single lead was lost, because nothing on the site has ever counted one. I could not confirm analytics was recording, because I did not have the account. I could not say how many of the 880 people a month searching the company’s name were looking for the other company with the similar name. Those are the first three questions for the owner, and the report says so instead of papering over them.
The order I would fix it in
None of this needs a new website. Most of the items that cost the most are small fixes, and the order matters more than the list. Capture the visitors the site already gets before spending a dollar getting more of them.
First
Capture the visitors you already get
- Quote form on the homepage, Contact page and every service page, with an instant text or email alert
- Header button that dials on phones and opens the form on desktops; a slim Call and Get a Quote bar pinned to the bottom on mobile
- The Google rating and review count beside the main button, with a live review feed
- Fix the badge, the template text and the footer
- Confirm analytics; add call and form tracking
- Make years in business, phone and name match on the site, Google and the BBB
Next
Give Google pages worth ranking
- Roof Repair page and the other missing services
- Rewrite page titles and headings across the site
- Services and Service Areas menus in place of “All Pages”
- Service pages rebuilt around a form, photos and the questions homeowners ask
- City pages with local projects and reviews
- Homepage and service copy rewritten around the homeowner
- Business details fixed in the code
Ongoing
Keep moving up and measure it
- Google Business Profile review and upkeep
- A steady way to ask happy customers for Google reviews
- Review of the links pointing at the site, then new local ones
- Articles that answer what homeowners ask
- A monthly report in the owner’s terms: calls, quote requests and booked jobs
I ran the audit alone. If the work goes ahead, it splits the way it always does. A developer takes the forms, the call bar, the tracking and the technical fixes. A content writer takes the rewrite, which is the biggest single lift here because the company’s real story lives in its reviews and nowhere on its site. The SEO specialist takes the missing pages, the titles, the city pages and the link review. We meet weekly, and the first report the owner sees is not rankings. It is calls, quote requests and booked jobs, because that was the question before any of this started.