A roofing Google Ads campaign that generates clicks but no calls is spending real money to achieve nothing. Worse, it creates a false impression that Google Ads does not work for roofing — when the reality is almost always that specific, fixable problems are breaking the conversion chain somewhere between the search and the phone call.
The journey from a homeowner typing a search query to them dialling your number has six distinct steps: the search triggers your ad, the ad copy earns a click, the landing page loads, the landing page convinces the homeowner to act, they find your phone number, and they call. A failure at any single step produces clicks without calls. The challenge is diagnosing exactly where the breakdown is occurring in your specific campaign.
This article walks through the nine most common causes — diagnosed from the most frequent to the least obvious — with a specific fix for each. Work through them in order. Most roofing campaigns have two or three of these problems simultaneously, and fixing all of them typically produces a 3–5× improvement in call volume from the same ad spend.
Before You Diagnose: Understand the Two Types of Problem
Clicks without calls always stems from one of two root causes: you are attracting the wrong clicks, or you are failing to convert the right ones. These require completely different solutions, and confusing them wastes time.
Wrong clicks means your ads are showing to people who were never going to call a roofer — people searching for roofing jobs, roofing materials, DIY guides, or searches from outside your service area. These people click your ad out of mild curiosity, find it irrelevant, and leave immediately. Your click-through rate may look reasonable but your conversion rate is near zero.
Right clicks, wrong conversion means genuine homeowners who need roofing work are finding your ad, clicking through, and then something on your landing page or in your call-to-action is stopping them from picking up the phone. They wanted to call — your page failed to make them.
The quickest way to distinguish between the two: check your Google Ads search terms report. If you see searches like "roofing apprenticeship," "roofing felt B&Q," or "how to repair roof tiles yourself," you have a wrong clicks problem. If your search terms look legitimate but calls are still not coming, you have a conversion problem.
The 9 Reasons You Are Getting Clicks But No Calls
Broad match is Google Ads' default keyword setting and its most dangerous one for roofing campaigns. When you add a keyword like "roofing" on broad match, Google will show your ad for any search it considers loosely related — including "roofing jobs near me," "roofing material suppliers," "roofing courses UK," "how to do flat roofing yourself," and dozens of other searches from people who will never call a contractor.
Every one of those irrelevant clicks costs you the same amount as a genuine homeowner search. At £8–£18 per click in most UK roofing markets, a campaign running on broad match without negative keywords can lose 40–60% of its budget to searches that had zero commercial intent before a single real homeowner clicks through.
Open your search terms report right now (Campaigns → Search terms). If you see any of the following, broad match is burning your budget:
- Roofing jobs / roofing careers / roofing apprenticeship
- Roofing felt / roofing sheets / roofing nails / roofing materials
- DIY roof repair / how to fix roof tiles / roof repair yourself
- Roofing courses / how to become a roofer
- Free roof repair grant / council roof repair scheme
- Searches from towns or postcodes outside your service area
Switch all keywords to phrase match or exact match immediately. Build a negative keyword list from your search terms report and add it at campaign level. Add at minimum: jobs, apprenticeship, courses, DIY, materials, felt, sheets, grant, free, salary, how to. Review the search terms report weekly for the first 30 days and add new negatives as they appear.
More than three quarters of roofing ad clicks in the UK happen on mobile devices. A homeowner searching "emergency roofer near me" at 7pm with a leaking ceiling is on their phone. If your landing page takes more than 3 seconds to load on a 4G connection, more than half of those visitors will leave before they see a single word of your content — and you have already paid for the click.
Page speed is the silent killer in roofing ad campaigns. Contractors who have invested in a well-written landing page, professional photos, and strong trust signals are often baffled by poor conversion rates — until they test their page load time and discover it is taking 6–9 seconds on mobile.
The most common causes of slow load times on roofing websites:
- Uncompressed images — a single 4MB photo from a phone camera can slow a page to a crawl
- Cheap shared hosting that cannot handle moderate traffic
- Too many third-party scripts (chat widgets, multiple analytics tools, social plugins)
- No caching enabled — the server builds the page fresh on every visit
- Large video files autoloading on page open
Test your landing page at PageSpeed Insights (search "Google PageSpeed Insights" and paste your URL). Target a mobile score above 70 and a load time under 3 seconds. Compress all images to under 150KB each using a free tool like Squoosh. Move to a faster host if your current one is consistently slow. Remove any third-party scripts that are not directly contributing to conversions.
Your homepage is designed to introduce your whole business to a cold visitor. It has navigation links, multiple service descriptions, an about section, a contact form, and probably a section about your company history. It is built to be explored — not to convert a homeowner who clicked a specific ad about emergency roof repairs.
When a homeowner searches "emergency roofer Manchester" and clicks your ad, they arrive expecting to see exactly that. If they land on a generic homepage about your roofing company, there is a mismatch between what the ad promised and what the page delivers. They feel they are in the wrong place and leave. You paid for that click.
A dedicated landing page — one built specifically for the search term that triggered the click — performs on average 4× better than a homepage for ad traffic. It speaks directly to the visitor's specific need, removes all distractions, and has one clear call to action: call this number.
Create a dedicated landing page for each major ad campaign. Emergency repairs, flat roof repairs, and full re-roofing should each have their own page. Each page should match the language of the ad that sends traffic to it, contain your phone number above the fold in large text, and remove the main navigation so there is nowhere for the visitor to go except call you or read further down the page.
On mobile, a phone number that is not a clickable link requires the homeowner to memorise it, switch to their dial app, and type it in manually. Most do not. They leave and call the next result instead. This single technical failure — a phone number displayed as static text rather than a tel: link — kills a significant proportion of mobile conversions on roofing landing pages.
Beyond the clickability issue, phone number placement matters. If a homeowner has to scroll more than one screen to find your number on mobile, a large proportion will leave before they get there. The number should be in the first 100 pixels of the page — ideally in a sticky header bar that follows the visitor as they scroll.
Also check: does your phone number display correctly on the page, or does your CMS or page builder strip the formatting? A number shown as "07XXX-XXXXXX" that cannot be clicked is costing you calls every day.
Wrap every phone number on your landing page in an anchor tag: <a href="tel:07XXXXXXXXX">07XXX XXX XXX</a>. Add a sticky call bar to the top of the mobile page that stays visible as the visitor scrolls. Test this yourself on your own phone — click through from a Google search to your landing page and check whether tapping the number dials immediately.
A homeowner who clicks your ad and arrives on a page with no reviews, no job photos, and no accreditation badges is looking at a page that could belong to anyone — including a rogue trader. The roofing industry has a well-documented problem with unqualified contractors, and homeowners know it. Without visible trust signals, the risk of calling you feels higher than the risk of finding someone else.
The trust signals that make the most difference to call rates on roofing landing pages, in order of impact:
- Google review count and rating: Display "4.9 stars — 47 Google reviews" with a direct link to verify. A visible review count removes the biggest single objection homeowners have.
- Before-and-after job photos: Real photos from real jobs in the local area. Not stock images. Not photos of your van. Actual work you have completed.
- Accreditation logos: NFRC, TrustMark, manufacturer-approved installer status. These should be visible without scrolling on mobile.
- Response time commitment: "We respond to all enquiries within 2 hours" gives the homeowner a concrete expectation and differentiates you from contractors who take days to reply.
- Years in business and area served: "Serving [city] and surrounding areas for 12 years" establishes permanence. Rogue traders do not have 12 years in one area.
Add your Google review count, star rating with verification link, three before-and-after photos, your accreditation badges, and a response time statement above the fold on your landing page. If you have fewer than 10 Google reviews, prioritise building that number before spending heavily on ads — the conversion rate uplift from going from 0 to 20 reviews is larger than most ad copy improvements.
Message match is one of the most important — and most frequently broken — principles in Google Ads. If your ad headline says "Emergency Roofer Available Today" and the landing page talks about general roofing services without prominently addressing emergency repairs, the visitor feels they have been sent to the wrong place. The trust rupture from that mismatch causes them to leave immediately.
Every word in your ad creates an expectation. The landing page must meet that expectation in the headline, the opening paragraph, and the call to action. A visitor who searches "24 hour roofer Leeds," sees an ad saying "24 Hour Emergency Roofer," and arrives on a page headlined "Leeds Roofing Specialists — Quality Work at Fair Prices" has experienced message mismatch. They wanted confirmation that someone is available right now — the page gave them a brand statement.
For every ad group, check that the landing page headline contains the same core keyword and promise as the ad headline. If your ad says "Emergency Roofer Available Today," your landing page H1 should say something like "Emergency Roofing in [City] — We Respond the Same Day." The visitor should feel they have arrived in exactly the right place within two seconds of the page loading.
Google Ads location targeting contains a setting that most contractors never change from the default: "Presence or interest." This means your ads show not just to people physically in your target area, but to anyone Google thinks is "interested" in that location — including people searching from 200 miles away who happened to recently read an article about your city.
For a roofing contractor, "interest" targeting is almost entirely useless. A homeowner in Edinburgh is not going to hire a roofer in Bristol regardless of their search history. Every click from outside your genuine service area is wasted budget — clicks you are paying for from people who literally cannot become your customers.
The second targeting problem is radius size. Many roofing contractors set a 20–30 mile radius around their base, which often includes areas they cannot realistically reach within 45 minutes. Traffic, geography, and travel time all affect which areas are actually worth serving. Targeting an area you cannot reach quickly enough to win emergency jobs is paying for clicks from customers who need someone faster.
In your campaign settings, change location targeting from "Presence or interest" to "Presence only." Then tighten your radius or switch to specific postcode or district targeting covering only the areas you can realistically serve within 30–45 minutes. Check your geographic report (under Audiences → Demographics → Locations) to see exactly where your clicks are currently coming from — you may be surprised.
Google Ads runs 24 hours a day by default. For a roofing contractor who only answers the phone between 8am and 6pm, every click that arrives at 11pm is a click you are paying for from a homeowner who cannot reach you — and who will call the next result that does pick up.
There are two situations where ad scheduling matters critically in roofing. The first is a contractor who does not offer emergency or out-of-hours response — in this case, running ads during evenings and weekends generates clicks from homeowners who need someone now, cannot reach you, and convert to a competitor who answers. The second is budget management: if your daily budget is limited, night-time clicks from low-converting hours are consuming budget that would be better spent during peak call times.
Conversely, if you do offer emergency call-outs, the opposite is true. Evenings and weekends — when storms hit and emergency searches spike — are your highest-value hours. Having your ads paused or budget-capped during these windows is leaving the most urgent and highest-close-rate leads to your competitors.
Go to your campaign settings and set an ad schedule that matches when you are actually available to answer calls — or when your emergency line is operational. If you have enough conversion data (90+ days), use bid adjustments to increase bids during your highest-converting hours rather than turning ads off completely. Check your hour-of-day report under Campaigns → Segments → Time → Hour of day to see exactly when your converting clicks arrive.
Call extensions add your phone number directly to your Google Ad in the search results — meaning a homeowner on mobile can call you without ever clicking through to your website. They tap the call button, your phone rings, and you have paid for a call rather than a click. For roofing, where the action you want is always a phone call, call extensions are not optional. They are arguably the most important ad asset you can add.
Without call extensions, every conversion requires the homeowner to click through to your page, find your number, and then make the decision to call. Each additional step in that journey reduces conversion rate. Call extensions remove two of those steps entirely — the click-through and the number search — and allow the highest-intent homeowners to bypass your landing page entirely and call you directly from the search results.
The second issue is ad copy that does not include any urgency or call-to-action. Ad copy that reads like a brand statement — "Quality Roofing Services Across [City]. Free Quotes Available" — does not tell the homeowner what to do next. Ad copy that reads "Leaking Roof? Call Now — We Respond Same Day" does. The action you want is always a phone call. Say so explicitly in the ad.
Add call extensions to every campaign and ad group immediately. Set them to show only during your call-answering hours. Add your phone number to at least one description line in every ad. Test ad copy variations that include explicit calls to action: "Call Now," "Ring Today," "Speak to a Roofer Now." These outperform passive ad copy in roofing by a measurable margin across every campaign we have managed.
The Quick Audit: Check Your Campaign Against All 9 Right Now
Use this table to run a rapid self-audit on your current roofing Google Ads campaign. Be honest — the point is to identify what to fix, not to grade yourself.
| Check | Status options | Priority |
|---|---|---|
| All keywords on phrase or exact match (not broad) | Done / Not done | Critical |
| Negative keyword list built from search terms report | Done / Not done | Critical |
| Landing page loads under 3 seconds on mobile (tested) | Yes / No / Not tested | Critical |
| Ad traffic goes to a dedicated landing page, not homepage | Yes / No | Critical |
| Phone number is a clickable tel: link on mobile | Yes / No | Critical |
| Reviews, photos, and accreditation visible above the fold | Yes / Partial / No | High |
| Ad headline matches landing page headline (message match) | Yes / No | High |
| Location targeting set to "Presence only" (not "Interest") | Yes / No | High |
| Ad schedule matches hours you answer calls | Yes / No / Not set | High |
| Call extensions enabled on all campaigns and ad groups | Yes / No | High |
If you have marked more than three items as "Not done" or "No," your campaign has structural problems that are costing you calls every single day the campaign runs. Each item on this list is a fixable problem — none of them require significant budget or technical expertise to resolve.
How Long Should Fixes Take to Show Results?
Some of these fixes produce results immediately. Switching to "Presence only" location targeting takes effect the same day. Making your phone number a clickable link produces more calls from the next visitor who arrives. Adding call extensions starts working within hours of being approved.
Others take longer to reflect in your data. Negative keyword improvements take 2–4 weeks to show a meaningful impact because you need the campaign to run through its normal search patterns with the new exclusions in place. Landing page changes take a similar period to accumulate enough traffic to measure the conversion rate difference confidently.
"The biggest waste in roofing Google Ads is not the cost per click — it is paying for clicks that could never have converted. Fix the structural problems first, then worry about bid strategy and ad copy refinements."
Want a Free Audit of Your Roofing Google Ads?
We review your campaign structure, keywords, landing pages, and conversion setup — then show you exactly what is stopping your phone from ringing. No obligation, no jargon.
Get Your Free Campaign Audit