Google Ads and Local Services Ads for roofing companies
Realistic cost per lead, the campaigns that produce signed roofs, the ones that burn budget, insurance claim ad rules, and how Local Services Ads price out.
Roofing is one of the most expensive categories on Google, and owners coming from another trade get a shock the first month. Clicks on replacement terms run $20 to $60 in most metros and past $80 in Dallas, Denver, Houston and Tampa during storm season. A cost per lead of $150 to $400 is normal here, not a failure.
Reframe it before you set a budget. On a $12,000 average job at a 25% close rate, a $300 lead means $1,200 in acquisition cost per signed roof, which is 10% of revenue. That is a healthy number in this trade. Judge the account on cost per signed contract, and give it 45 days to report, because roofing deals do not close in a week.
Start with Local Services Ads
Local Services Ads sit above the regular paid results, are priced per lead rather than per click, and carry the Google Guaranteed badge after Google verifies your license and insurance and runs background checks. On a purchase this size the badge is worth real money in trust.
Roofing leads there commonly price at $60 to $200 depending on market, which is often cheaper than the same lead through search ads. The trade-offs are specific:
- You must pass the license and insurance screening, which takes one to three weeks. Start it now, not after the hail.
- Ranking is driven heavily by your review count and rating, response time, and how long you have been in the program. This is another reason the reviews guide comes before the ads guide.
- You will get junk leads. Dispute them in the account within the window Google allows, with the reason and any notes. Companies that dispute diligently recover a meaningful share of spend. Companies that never look at it pay for wrong numbers all year.
- Answer inside 60 seconds. Response time affects ranking and it affects the close.
Run Local Services Ads and search ads together. They occupy different space on the results page and the same homeowner often sees both.
Search campaigns that produce
Build three campaigns and no more to start.
Replacement. Exact and phrase match on the terms with buying intent: "roof replacement", "new roof cost", "roofing companies near me", "replace roof [city]", "shingle roof replacement", plus the metal and flat variants if you sell them. This is the expensive campaign and the one that pays.
Repair and leak. "roof leak repair", "emergency roof repair", "roof leaking", "shingles blown off". Cheaper clicks, faster close, smaller ticket, and a strong feeder into replacement because a third of leak calls turn into a replacement conversation once someone is on the roof.
Storm and hail. Built and paused, ready to switch on within hours of an event, geo-targeted to the affected zip codes rather than the whole metro. Terms like "hail damage roof inspection [city]", "storm damage roof", "roof inspection after hail". Bids go up during the window and the campaign goes back to paused two or three weeks after.
Set a separate budget per campaign so a storm week does not eat your retail replacement budget.
What burns money
Broad match on "roofing". It matches roofing supply, roofing jobs, roofing courses, DIY roofing videos and commercial RFPs. Broad match plus Smart Bidding on a fresh account with no conversion data is the single most reliable way to spend $4,000 and book nothing.
Running 24 hours with nobody answering. A $50 click that rings out at 9 p.m. is a $50 donation. Schedule ads to your answering hours, or make sure missed-call text-back covers the gap, which is the argument in the follow-up guide.
Performance Max as the first campaign. It works for some established roofers with strong conversion data. On a new account it spends heavily on Display and YouTube placements with no accountability and no search terms to audit. Earn your way into it after search is profitable.
A 60-mile radius. Bid on the zip codes where you actually want to send a crew. A roof 55 minutes away at the same price is a worse job.
Counting form fills as conversions without call tracking. In roofing most leads phone. Turn on call conversions with a 60-second minimum, record the calls, and listen to ten a week. Half of the "the leads are garbage" complaints turn out to be an office phone problem.
The negative keyword list you need on day one
Add these before you turn anything on: jobs, hiring, salary, career, supply, supplies, wholesale, material, materials, course, training, license, licensing, how to, DIY, free, cheap, insurance company, adjuster, public adjuster, home depot, lowes, tarp rental, RV, camper, shed, mobile home if you do not do them, and the names of the manufacturers you do not install.
Review the search terms report every week for the first two months. Every roofing account has its own local garbage.
Insurance claim language: what you may not say
This is where roofing ads get disapproved and where owners get into real trouble with state regulators.
You cannot promise a claim will be approved. You cannot advertise that you will cover, waive, absorb or "handle" the deductible, which is insurance fraud in most states and is written into contractor statutes in many of them. You cannot claim to negotiate with the carrier on the homeowner's behalf unless you hold a public adjuster license, and several states expressly bar a contractor from doing both on the same property.
What you may say, and what converts anyway: free roof inspection, documented storm damage report with photos, we meet your adjuster on site, we install to manufacturer specification and local code, we handle the permit, we work with all insurance carriers. Describe your process, not the outcome. Put your license number in the ad extensions.
Budget and what to expect
Below $2,500 a month in a mid-size metro, search ads produce too little data to optimize and too few leads to judge. $3,000 to $6,000 is where a single-metro roofing account starts behaving predictably. At $300 a lead that is ten to twenty leads a month, which at a 25% close rate is three to five roofs, which at $12,000 average is $36,000 to $60,000 of revenue.
Give it 45 days minimum before judging, because the sales cycle is long enough that month one always looks worse than it is. Track leads, set inspections, signed contracts and revenue by campaign, not clicks.
Landing where the click should go
Do not send replacement clicks to your home page. Send them to a page about that exact service in that exact city, with tap-to-call at the top, three before-and-after photos, your license number, financing terms and one short form. The specifics are in the website guide, and the cost of the calls you miss is in the calculator.
Frequently asked
Should I buy leads from a lead aggregator instead? Shared leads at $60 to $120 go to three or four contractors at once and close in the single digits. They are a fine supplement and a terrible foundation, because you are renting demand you never own.
How long before I can turn off ads and live on SEO? Most roofing companies never turn them off entirely. Organic and the map pack cover steady retail demand; ads cover storms, new territories and the months when the phone is quiet.
Do I need a separate account per location? One account, separate campaigns per metro, separate budgets. Keep the conversion data together.
If you want a roofing account built and run for two weeks with no charge and no card, Google Ads management is part of the free 14-day trial. Text or call (385) 832-6175.