We optimize for booked roofs, not leads. Most agencies don't. Storm campaigns pre-built and activated within hours of a hail event, before storm chasers inflate your CPCs 50-100%. Insurance claim and cash-pay leads run as separate campaigns because their economics are different. $445/mo LSA, from $695/mo Google Ads, from $995/mo bundle. Free custom landing pages.
Cited by Housecall Pro for LSA cost data · 20 accounts max per manager · Month-to-month, no contracts
As Featured In · Our Research Cited By
Most roofing companies pay $55 to $105 per lead on Google LSA under normal conditions. Small metros run $40-$65. Post-storm surges push CPL to $130-$165+. Google Ads runs higher per lead because you bid on clicks, not calls, but it reaches the storm damage, insurance claim, and replacement intent that LSA cannot target. The numbers below come from the roofing accounts we manage, cross-referenced with LocaliQ's home services PPC benchmarks.
Drill deeper:
Generalist agencies treat roofing as one keyword bucket. But an emergency leak repair closes at 60-80%, a replacement consult closes at 20-30%, and commercial closes at 8-12%. Same trade, completely different economics. Each intent bucket gets its own campaign, ad copy, landing page, and bid strategy.
"Roof leak repair today", "emergency roof repair", "roof tarping service". The homeowner has water coming in and books on the first call. Runs 24/7 with tight geo and Maximize Leads bidding. This bucket is also your bridge to replacement: a leak on a 15-year-old roof is a replacement conversation waiting to happen.
"Roof replacement cost", "new roof installation", "asphalt shingle replacement". The homeowner researches for days or weeks before committing. Needs Target CPA bidding early, then Maximize Conversion Value once conversions accumulate, plus longer remarketing windows and financing messaging. This is the core revenue driver and gets 40-50% of budget.
Pre-built and kept paused. When hail or wind hits your service area, it activates within 4-12 hours, ahead of the out-of-state storm chasers. The homeowner is overwhelmed and wants a guide through the claim process, so the ad copy and landing page speak insurance, not roofing. The first 48-72 hours produce the best leads of the year.
If you hold GAF Master Elite, Owens Corning Platinum Preferred, CertainTeed SELECT ShingleMaster, IKO Shield Pro Plus, or Malarkey Emerald Pro credentials, brand keyword campaigns are the most underexploited play in roofing Google Ads: fewer authorized competitors in the auction, a manufacturer-vetted trust signal that lifts close rate 30-50%, and warranty extensions competitors cannot offer.
The cheapest clicks in roofing with the highest downstream value. A free or low-cost inspection books easily, and a meaningful share of inspections on aging roofs turn into replacement quotes. We run inspections as a distinct campaign with its own landing page, especially in the weeks after minor weather events that do not justify a full storm activation.
"Commercial roofing contractor", "flat roof replacement", "TPO roofing installation". Facility managers and property managers search on weekday mornings and decide over months. Runs as its own campaign with business-hours scheduling, B2B ad copy, and a landing page built for a decision committee, not a homeowner.
Metal, tile, and cedar shake buyers are researchers with bigger budgets and longer timelines. The clicks are expensive, so this campaign only makes sense with a dedicated landing page that shows material-specific work and handles the "metal vs shingle cost" question the searcher is actually asking.
The cheapest CPCs on this page. Gutter install and repair keeps crews busy between roof jobs and builds the review velocity and customer list that feed the roofing side. We run it as a low-budget always-on campaign in shoulder season and pause it during storm windows when crews are booked.
Most roofers do not have a lead volume problem. They have a lead quality problem: shared leads sold to four competitors, job seekers clicking $40 ads, price shoppers who booked nothing, and phone numbers that never pick up. Every one of these has a specific cause in how the account is built, and every one has a specific fix.
Angi, HomeAdvisor, and Thumbtack sell the same homeowner to multiple contractors, then everyone races to call first and discounts to win. Google Ads and LSA leads are exclusive: the homeowner searched, saw your ad, and called you. Nobody else got that phone number. That difference alone changes your close rate before anything else is optimized. Full breakdown: Angi leads vs Google Ads.
"Roofing jobs hiring", "roofer salary", "how to shingle a roof", "roofing nails bulk". Without a negative keyword block list, these searches click your $20-$45 ads and can never become customers. We install the block list on day one (job seekers, DIY, materials, license lookups) and run search terms reports weekly for the first 60 days, because roofing campaigns surface new waste constantly.
A default account counts every 60-second phone call as a conversion, so Smart Bidding optimizes toward whatever makes phones ring: tire kickers, wrong numbers, solicitors. Our build imports the booked-job event back into Google Ads with the original click attached, so the algorithm learns which clicks become signed contracts and bids for those. The account starts chasing booked roofs instead of ring tones.
After a storm, homeowners search to find out whether their policy covers the damage before they decide anything, and adjusters research local pricing. Mixed into a generic campaign, they look like leads and convert like air. Campaign separation plus claim-focused ad copy filters them: the storm campaign speaks to homeowners ready for an inspection, and the researchers get a landing page that converts them later instead of a wasted call now.
Profiles and campaigns set to a 50-mile radius pull leads from zips with terrible close rates and brutal drive times. We cut the geo to your real response radius using lead-quality data, which lowers CPL and raises booking rate at the same time. On LSA, we also rate every out-of-area lead so Google's system stops sending them.
Exclusive calls from homeowners in your real service area, filtered through negative keywords and intent-separated campaigns, landing on pages built to convert their exact job type, tracked through to the signed contract so the bidding gets smarter every month. That is the difference between buying leads and building a lead system you own. It is also why we guarantee movement on cost per booked job, not cost per lead.
Two channels, one strategy. We run your LSA profile and Google Ads account as a coordinated system because they share budget, share keywords, and share the same homeowner. A common baseline is 60% LSA for repair volume, 40% Google Ads for replacement and storm targeting, flipped during active storm season.
Roofing demand does not follow a smooth seasonal curve. It follows weather events. The account that wins is the one already in the auction with established Quality Score when the storm hits, because Quality Score improvement takes weeks and storm chasers arrive in 48 hours. Here is how we pace a roofing account across the year.
| Phase | When | Spend index | What we run |
|---|---|---|---|
| Pre-season build | 4-6 weeks before local storm season | 80-100% | CPCs are lower and Quality Scores build. Campaigns get in shape, landing pages optimized, conversion tracking verified. Accounts launched pre-season pay 22-35% less per lead all season than accounts launched mid-season. |
| Active storm window | First 48-72 hours after a confirmed event | 150-200% | Storm campaign activates within 4-12 hours. Highest-quality leads of the entire year. Insurance-claim ad copy and landing pages. Speed-to-bid matters more than CPL because the carrier pays the ticket. |
| Storm weeks 2-4 | The saturation phase | 110-130% | Storm chaser volume peaks and homeowners get skeptical. Messaging shifts to local proof: real address, local reviews, years in the market. Inspection campaigns catch the homeowners who waited. |
| Peak season baseline | Local hail / wind season months | 150-200% | Baseline raised 50-100% during the active 2-4 week windows. Replacement campaigns run alongside storm work because storm attention lifts all roofing search volume. |
| Off-season floor | Winter / slow months | 60-80% | Repair and inspection campaigns stay on at reduced budgets. Gutter and add-on campaigns keep crews busy. Review velocity and Quality Score maintenance so the account is ready for next season. |
Spend index is relative to your monthly baseline (100% = your typical monthly LSA + Google Ads spend). Most mid-size roofing companies run $3,000-$5,000/mo baseline; competitive metros like Dallas or Phoenix often need $5,000-$10,000+. The storm windows are where the year's profit concentrates, which is why the pre-build matters more than any other single thing on this page.
The single biggest structural mistake on roofing ad accounts is running insurance claim intent and cash-pay intent through the same campaign. They have different buyers, different objections, different close rates, and completely different sensitivity to cost per lead.
This homeowner just had a storm hit their house. They are overwhelmed, they do not know how claims work, and they will sign with the roofer who explains the process first. The ad copy and landing page need to answer claim questions, not sell shingles. CPL matters less than speed-to-bid, because the carrier is paying the ticket and the competition is a storm chaser with no local Quality Score.
This homeowner is comparing three quotes over several weeks and financing is often the deciding factor. They need remarketing windows measured in weeks, financing offers in the ad copy, and a landing page that handles "how much does a roof cost" honestly. Pushing them with emergency messaging kills the close rate.
A leak repair on an aging roof is a replacement conversation waiting to happen, and an inspection campaign at $10-$22 per click is the cheapest path to that conversation in the entire account. We track which repair and inspection leads turn into replacement quotes so the account bids with the downstream value priced in.
A $130 lead that converts to a $12,000 replacement at 40% gross margin returns $4,800 in gross profit. The same $130 on a gutter lead is unprofitable. Every campaign gets its own CPL ceiling from its own ticket, close rate, and margin, which is why campaign separation is not cosmetic. It is the whole game.
The conversion event in a default Google Ads account is a phone call, not a booked roof. The technical stack below is what we build on day one to turn a generic account into one that bids against booked-job revenue instead of phone-ring noise.
We install WhatConverts on every roofing account. Every inbound call captures the gclid. Each call gets reviewed and marked: booked, not booked, wrong service, out of area, spam. The closed-job ticket value (repair vs replacement vs insurance) is logged against the original lead. This is the workflow most operators skip and it is the single biggest unlock for everything downstream.
Default roofing Google Ads setup counts every 60-second phone call as a conversion, so Smart Bidding optimizes to phone rings and overpays for tire-kicker traffic, especially post-storm when everyone is calling everyone. Our setup imports the "booked job" event back to Google Ads via offline conversion import with the original gclid, so the algorithm optimizes against actual booked roofs.
A $450 leak patch, a $9,500 shingle replacement, a $14,000 insurance job, a $60,000 commercial reroof. Once volume supports it, the real dollar value of each closed job flows into Google Ads as conversion value, so Smart Bidding knows the difference between "this click booked a job" and "this click booked a $14,000 insurance replacement" and bids accordingly.
With booked-job conversions and dollar values flowing, high-volume roofing accounts migrate to Target ROAS bidding: "for every $1 spent, return $X in booked-roof revenue." The algorithm bids hardest on click profiles likely to produce replacement and insurance work, and eases off low-margin repair-only traffic.
Replacement sales cycles span weeks. We integrate with AccuLynx, JobNimbus, or your existing CRM so that when an inspection lead converts to a replacement contract three weeks later, the revenue gets credited back to the original click. The inspection-to-replacement pipeline math finally shows up in the ads dashboard instead of dying in CRM silos.
CPCs over $20 make roofing one of the most attractive click fraud targets in home services: competitors, bots, insurance adjusters researching pricing, and storm chasers doing competitive research all burn budget. Without protection and a strong negative list, 20-30% of clicks may carry zero intent. We evaluate tools like ClickCease for any roofing account spending over $3,000/month.
A good roofing marketing agency thinks about your business, not just your ads. These are the questions that decide whether a campaign architecture will actually produce booked roofs for your specific operation.
Repair at $800-$2,500, cash replacement at $8,500-$15,000, insurance claims at $10,000-$18,000+. Each campaign needs its own CPL ceiling tied to its ticket and close rate.
An insurance-heavy roofer needs storm pre-builds and claim-process landing pages. A cash-heavy roofer needs financing offers and longer remarketing windows. The budget split follows your actual revenue mix.
Industry range is 20-30% on cash replacement consults. If yours is materially lower, the problem is usually follow-up speed or the estimate process, and fixing that is worth more than any bid change.
Margin sets the real spend ceiling. A 42% margin on a $9,500 replacement supports a very different CPL than a 35% margin on a $1,200 repair. The mix determines where Smart Bidding should optimize.
Geo targeting matches actual capacity. We do not bid on suburbs your crews cannot reach when every roof in the county needs an inspection the same week.
The first 48-72 hours post-storm produce the year's best leads, but only if you can inspect and bid fast. If your realistic response is a week, the storm campaign gets shaped around inspections, not emergency messaging.
Every missed call during a storm window is a job your competitor booked. If answer rate is the weak link, we solve routing and coverage before scaling spend, because paying to generate unanswered calls is the fastest way to burn a budget.
If yes, the ads and canvassing need to work the same neighborhoods so homeowners see the brand twice. Search retargeting layered over canvassed zips lifts both channels.
Spend tells us the baseline. Small roofing companies typically run $1,500-$2,500/mo, mid-size $3,000-$5,000, competitive metros $5,000-$10,000+. We do not propose a leap your conversion history cannot support.
If you do not know these numbers, that is the first thing we set up. Most roofing operators we talk to know CPL but not cost per booked job, and cost per booked job is the number that decides whether the account is profitable.
AccuLynx, JobNimbus, or something else. Without the call-tracking-to-CRM connection, Smart Bidding has no way to know which leads became signed contracts and which became voicemails.
Approved, in review, rejected, or never applied. Each answer changes the launch sequence. Google Verified for Local Services Ads requires license verification, insurance documentation, and a background check before the badge issues.
GAF Master Elite (top 2-3% of GAF contractors), Owens Corning Platinum Preferred, CertainTeed SELECT ShingleMaster, IKO Shield Pro Plus, Malarkey Emerald Pro. Each unlocks brand campaigns with lower CPC and 30-50% higher close rates. Most roofers who hold these credentials never use them in their advertising.
Reviews drive LSA ranking and landing page trust. We also look at the review timeline: reviews clustered only around storm seasons read as storm-chaser behavior to skeptical homeowners, and a year-round cadence fixes it.
Roofers who handle supplements recover meaningfully more per claim, which raises the real ticket and justifies more aggressive storm bidding. If you have this capability, the ad copy should say so, because it is a differentiator homeowners with denied or underpaid claims search for.
If a previous agency holds the keys, we walk you through ownership transfer before we touch anything. Your account, your data, your history.
No setup fees. A flat monthly retainer, no percentage of spend. No long-term contracts. Custom landing pages for your campaigns are included free (normally $500 each). If your LSA profile gets suspended, you do not pay that month either.
Roofing LSA profile management, lead rating + disputes, GBP coordination, reviews.
Get Free Landing PagesBest if you have not started LSA yet or are running it solo.
Both channels coordinated. Repair, replacement, storm pre-build, insurance split, brand campaigns.
Get Free Landing PagesBest if you want maximum lead volume and pipeline visibility.
Google Ads campaign build + management. Repair, replacement, storm, commercial, brand.
Get Free Landing PagesBest if your LSA is already managed elsewhere.
Want full-stack (LSA + Google Ads + GBP optimization + live reporting)? $1,795/mo. See all pricing → · Ad spend goes directly to Google, separate from the management fee.
“ You will own your Google Ads account, Local Services Ads account, tracking systems, landing pages, and conversion data from day one. Your accounts stay in your name. Your billing stays on your card. Your data stays yours. If you decide to leave, everything stays with you. No account transfers. No hostage situations. No starting over from scratch. ”
Most marketing agencies are vague about month one because they do not have a process. Here is exactly what happens, day by day, on a typical roofing account.
30-minute live screen-share. We log into your LSA profile and Google Ads account with you watching.
Roofing-specific foundation: separate campaigns for repair, replacement, storm, commercial.
The infrastructure that wins the next weather event gets built now, while it is quiet.
Two weeks of data drives the first round of bid + budget refinements.
By week three the trend signals are clear.
You see the work, the numbers, the booked roofs, the pipeline.
Pick any roofing marketing agency website. Compare them to us on the six points below.
When hail hits, out-of-state storm chasers flood the auction within 48 hours and inflate CPCs 50-100%. The only defense is a pre-built campaign with established Quality Score that activates in hours. Generalist agencies start building the campaign after the storm, which is 2-3 weeks too late.
An insurance claim lead ($10K-$18K, carrier pays, wants claim guidance) and a cash replacement lead ($8.5K-$15K, homeowner pays, comparing quotes for weeks) need different ads, different landing pages, and different CPL ceilings. One campaign for both converts worse for both.
If you hold GAF Master Elite or Owens Corning Platinum Preferred credentials, brand keyword campaigns carry lower CPC and 30-50% higher close rates. Most roofers who hold these certifications never use them in advertising, and most agencies never ask whether the certifications exist.
Google now auto-credits the obvious bad leads, but plenty still slip through, and its system needs to know which leads actually booked. We review and rate every roofing lead, mark the ones that turned into jobs so your account optimizes for revenue, and dispute anything Google's system missed inside its window.
The average agency runs 50-100 accounts per manager, which is why your storm campaign never got pre-built and your search terms report has not been checked since onboarding. Our cap is 20, which is the only way to actually do the work.
$445 LSA / from $695 Google Ads / from $995 bundle. Published. Custom landing pages included free. If Google suspends your LSA profile during our management, we do not bill that month. Most agencies hide pricing AND still bill you when your profile is offline.
If you are evaluating roofing marketing agencies (us included), use this checklist. The agencies worth hiring will agree with every item below.
If they cannot show you roofing outcomes specifically, they are learning storm economics, insurance claims, and close-rate spreads on your budget.
Emergency repair closes at 60-80%, replacement at 20-30%, commercial at 8-12%. Agencies that lump them into one campaign are optimizing for an average customer that does not exist.
Ask them what happens in the first 12 hours after a hail event hits your service area. If the answer is vague, you will be entering the auction at the same time as the storm chasers, at double the CPC.
Perverse incentive: they earn more when you spend more, even when CPL is rising. Flat-fee management aligns the agency with you, not with growing the spend.
"You can dispute leads yourself" is what bad agencies say to skip the work. Lead rating is also how Google's system learns which leads book, so skipping it degrades the account itself.
Locks you in before they prove value. The good roofing agencies offer month-to-month because they trust their own work.
A $40 CPC landing on a 2% converting homepage is a $2,000 lead. Campaign-specific landing pages are not optional at roofing click prices.
If Google suspends your profile, no leads come in. Agencies that still charge that month are charging for nothing. We do not bill suspended months.
Compare any marketing agency targeting roofing contractors. The honest ones will admit most of these gaps.
| Blue Grid Media (Roofing Specialist) | Typical generalist agency | Big-box roofing agency | DIY / In-House | |
|---|---|---|---|---|
| Campaign separation by intent | Repair / replacement / storm / commercial / brand | One roofing campaign | Partial separation | Depends |
| Storm campaign pre-build | Built + paused, activates in hours | Reacts after the storm | Sometimes | You build it |
| Insurance vs cash-pay split | Separate campaigns + landing pages | No | Partial | You build it |
| Factory-authorized brand campaigns | Yes (GAF / OC / CertainTeed) | Never asks | Sometimes | Rarely used |
| Pricing model | $445 LSA / from $695 GA / from $995 bundle, flat tiers | $1,500-$3,500/mo or % of spend | $2,500-$5,000/mo retainer | Your time |
| Setup fees | $0 | $1,000-$3,000 | $1,500-$5,000 | N/A |
| Free landing pages | Included ($500 value) | Not disclosed | Not disclosed | N/A |
| Contract length | Month-to-month | 6-12 months | 12 months | N/A |
| LSA lead rating + disputes | Every lead | Not included | High-value only | You file |
| Click fraud defense | Evaluated on every account over $3K/mo | No | Sometimes | You configure |
| Accounts per manager | 20 max | 30-60 | 50-100+ | 1 (yours) |
| No-bill if LSA suspended | Yes | No | No | N/A |
| You own the accounts | Always | Depends | Depends | Yes |
| Reporting | Live dashboard, LSA + GA combined | Monthly PDF | Monthly call + PDF | You build it |
Pricing comparisons based on publicly available roofing agency information as of 2026. See a discrepancy? Tell us →
Before you hire us or anyone else, know your break-even cost per lead. It is the number that turns "is $90 per lead expensive?" from a feeling into arithmetic, and it is different for a repair-focused company than a replacement-focused one.
Gross profit per booked job is about $462. At a 38% booking rate, break-even CPL is roughly $175. Anything below that makes money before repeat business and referrals are counted. This is why repair campaigns tolerate storm-surge CPLs better than most operators assume.
Break-even CPL works out to roughly $1,610 per lead, which means almost any realistic CPL is profitable if the leads are genuinely replacement intent. The risk in replacement campaigns is not overpaying per lead. It is paying for the wrong intent, which is a campaign structure problem, not a bidding problem.
A $90 CPL with a 45% booking rate is a $200 cost per booked job. Against a $1,100 repair ticket that is healthy. Against a $9,500 replacement it is spectacular. Judging a campaign by CPL alone is how profitable accounts get shut down and wasteful ones keep running.
The LSA ROI calculator projects leads, booked jobs, and ROAS from your LSA budget. The Google Ads calculator does the same for click campaigns. Use them before the audit call so you arrive with a number in mind. The full worked examples live in our roofing ROI benchmarks guide.
From roofing account audits, these are the mistakes that quietly cost the most money.
Emergency repair, replacement research, insurance claims, and commercial reroofing have different buyers, close rates, and economics. One campaign gives Google no signal about which lead you want, which is why CPCs and CPLs that seem random usually trace back to this.
Typical impact: random CPLs, wasted spend across every bucketStorm chasers activate within 48 hours of a hail event and inflate CPCs 50-100%. Building your campaign after the storm means entering the auction late, with no Quality Score, at peak prices, while the year's best leads go to whoever was ready.
Typical impact: the most profitable 2-4 weeks of the year, lostRunning GAF or Owens Corning keywords without the corresponding authorization is a triple miss: authorized competitors get lower CPC, better positions, and higher close rates on the same keywords, and you cannot honor the manufacturer warranty extension the searcher wants.
Typical impact: paying more to convert less on every brand clickAccounts launched 4-6 weeks before local storm season build Quality Score while CPCs are low and pay 22-35% less per lead all season. Accounts launched mid-season pay the storm-chaser premium from day one.
Typical impact: 22-35% higher CPL all seasonCompetitors, bots, insurance adjusters researching pricing, and storm chasers doing competitive research all click roofing ads. Without protection and a strong negative list, 20-30% of clicks may carry zero intent.
Typical impact: 20-30% of budget spent on clicks that can never convertA $40 CPC with a 2% converting homepage is a $2,000 lead. The same click on a 10% converting campaign-specific page is $400. Landing pages determine whether a roofing campaign is profitable, not bids.
Typical impact: up to 5x higher cost per lead than necessaryThe insurance claim homeowner wants a guide through the process. The cash-pay homeowner wants a fair price and financing. One set of ads and one landing page for both means both convert below potential, on the two highest-ticket lead types in the account.
Typical impact: lower close rates on your two most valuable lead typesA $52 January lead and a $148 May storm-surge lead are not comparable numbers. The May lead closes at a higher rate into a bigger insurance ticket. Accounts managed to raw CPL pause their most profitable campaigns at exactly the wrong moment.
Typical impact: profitable storm campaigns paused at peakTwo free calculators tuned to contractor unit economics. Input your market, budget, ticket, and close rate, and get projected leads, cost per booked job, and ROAS.
Input your roofing LSA budget, market size, and booking rate. The calculator returns projected weekly leads, booked jobs, revenue per job, and your effective ROAS, so you can sanity-check the $55-$105 CPL range against your own tickets.
Open the LSA CalculatorInput your Google Ads budget, campaign split, average ticket, and conversion rate. Get projected clicks, leads, booked jobs, and ROAS, tuned to roofing's $15-$65 CPC reality and the repair vs replacement close-rate spread.
Open the Google Ads CalculatorNo layered team. No junior account manager hand-offs. The person you meet on the audit is the person running your roofing LSA profile and Google Ads campaigns.
Founder · Roofing Account Lead
Roofing Google Ads + LSA Specialist · Blue Grid Media
Julian personally runs every roofing account at Blue Grid Media. That is the entire point of the 20-account cap: every account gets the founder's attention, not a junior account manager's. Featured guest contributor at PPC Hero on LSA + Google Ads cannibalization, cited by HousecallPro for LSA cost data, plus FieldMotion, Sideways8, Trafft, eCommerce Fastlane, and Backroad Building. The roofing benchmarks published across the BGM roofing library come from the accounts he runs day to day, cross-referenced with public benchmark sources.
Connect on LinkedIn“ We do not optimize for leads. We optimize for booked jobs. Give us 90 days to implement campaign restructuring, offline conversion tracking, and revenue-based bidding. If your cost per booked job is not moving in the right direction by day 90, we will continue managing your account at no charge for an additional 30 days. ”
Most roofing marketing agencies charge $1,500-$5,000/mo or a percentage of ad spend (typically 10-20%), often with setup fees and 12-month contracts. We charge $445/mo flat for LSA management, from $695/mo for Google Ads management, or from $995/mo for the bundle. No setup fees, no contracts, free custom landing pages.
Most roofing companies pay $55-$105 per lead on Google LSA under normal conditions. Small metros run $40-$65, and post-storm surges reach $130-$165+. Google Ads CPL runs $100-$175 for emergency repair and $200-$350 for residential replacement, with LocaliQ benchmarking roofing and gutters around $228.
Both, with the split shifting by season. LSA delivers exclusive pay-per-lead calls with the Google Verified badge. Google Ads reaches storm damage, insurance claim, and replacement intent that LSA cannot target. A common baseline is 60% LSA / 40% Google Ads, flipped during active storm season.
Roofing has dynamics generalists miss: storm chasers inflating CPCs 50-100% within 48 hours of a hail event, insurance claim leads with completely different economics than cash-pay leads, a close-rate spread running from 60-80% on emergency repair down to 8-12% on commercial, and factory-authorized brand campaigns (GAF Master Elite, Owens Corning Platinum Preferred) that carry lower CPC and 30-50% higher close rates. Each needs its own campaign, and a generalist runs them all as one.
The full campaign (keywords, ads, landing pages, geo lists) built in advance and kept paused, then activated within 4-12 hours of a confirmed hail or wind event, before storm chasers inflate CPCs 50-100%. The first 48-72 hours after a storm produce the highest-quality leads of the year.
Separate campaigns, because the economics differ. Insurance work runs $10,000-$18,000+ with the carrier paying, so speed-to-bid and claim guidance matter more than CPL. Cash replacement runs $8,500-$15,000 with a homeowner comparing quotes for weeks, which needs financing messaging and longer remarketing windows.
LSA and emergency repair campaigns typically produce leads in the first week. Replacement and storm campaigns take 4-6 weeks for Smart Bidding to optimize. Launching 4-6 weeks pre-season pays 22-35% less per lead all season than launching mid-season.
Yes, every lead. Google auto-credits the obvious invalid leads, but plenty slip through. We rate every roofing lead, mark booked jobs so the account optimizes for revenue, and dispute what Google's system missed inside its 30-day window.
We do not bill you that month, and we handle the reinstatement process at no additional cost. Most agencies still charge their fee while the profile is offline.
All LSA advertisers need Google's verification (formerly Google Guaranteed). If you are not yet verified, we handle the application: license submission, insurance proof, background check coordination. Management starts as soon as you are approved.
Small roofing companies typically start at $1,500-$2,500/mo in ad spend, mid-size companies at $3,000-$5,000, competitive metros at $5,000-$10,000+. During storm season, raise the baseline 50-100% for the 2-4 week active window.
Yes. GAF Master Elite, Owens Corning Platinum Preferred, CertainTeed SELECT ShingleMaster, IKO Shield Pro Plus, and Malarkey Emerald Pro credentials unlock brand campaigns with lower CPC and 30-50% higher close rates, displayed on a dedicated landing page we build free.
Yes: scripted post-job request templates for your crews, monitoring, and responses written on your behalf. Review velocity matters for LSA ranking, and a year-round cadence avoids the storm-season-only clustering that reads as storm-chaser behavior.
Yes, active Google Ads Search certifications through Google Skillshop. We mention it because buyers ask, but the differentiator is the storm pre-build, the insurance vs cash separation, the brand-authorized strategy, the offline conversion stack, and the 90-Day Booked-Job Guarantee.
Ask for five numbers, and treat a dodge as an answer: cost per booked roof (not cost per lead), booking rate on the leads they send, revenue booked from their channel, how many leads were unreachable or wrong-service, and what they changed in the account last month. A report full of impressions, clicks, and "leads" without a booked-job number is a vanity report. If your agency cannot connect spend to signed roofing work, they are not measuring the thing you are paying for.
Usually because the account is optimizing for the wrong event. A default Google Ads setup counts every 60-second phone call as a conversion, so Google's bidding learns to produce phone rings: price shoppers, wrong numbers, solicitors. It has no idea which calls became roofing work. The fix is marking actual booked roofs in call tracking and importing them back into Google Ads against the original click, so bidding optimizes toward the calls that turn into revenue. The second cause is campaign structure: when an $800 leak repair and a $14,000 insurance replacement share one campaign, the algorithm optimizes for an average customer that does not exist.
Not on a bad month, and not without the numbers above. Give them one specific request: cost per booked roof for the last 90 days, broken out by campaign. An agency doing the work either has it or can build it in two weeks. An agency that deflects, blames a quiet stretch between storm events, or sends more impressions data has told you what you needed to know. Before you switch, confirm you own the Google Ads account, the LSA profile, the call tracking, and the conversion history, because starting over without them costs months of learning data.
Job seekers and DIYers are the most preventable waste in roofing advertising. Searches like "roofing jobs hiring", "roofer salary", "how to shingle a roof", "roofing nails bulk" click paid ads and can never become customers. The fix is a negative keyword block list installed before the first dollar is spent (careers, schools, licensing, DIY, parts and big-box retailers), plus weekly search-terms reviews for the first 60 days. On Local Services Ads, the equivalent is tight job-type configuration, a service area cut to your real response radius, and rating every lead so Google's system learns what fits and credits what does not.
After a hail event you are not just competing with the other roofers who bought the same lead, you are competing with out-of-state storm chasers working the same neighborhood. Shared platforms sell one homeowner several times over in exactly the window where speed decides the job. In April 2023 the FTC finalized an order requiring HomeAdvisor to pay up to $7.2 million, alleging it sold leads that did not match the services providers offered or the areas they asked to work in, and claimed job-conversion rates it could not substantiate. The order bars it from making claims about how often leads become jobs. If you use shared leads for roofing, treat them as a bridge: answer in under a minute, track close rate by source, cap the spend, and get your exclusive storm campaign built before the next event.
Because the map pack is not an auction. Paid ads and Google Business Profile rankings are separate systems, and no amount of ad spend moves your organic map position. Map ranking is driven by proximity to the searcher, category and service configuration, review volume and recency, profile completeness, and engagement. A competitor with 300 reviews and a fully built profile will outrank a bigger advertiser with 40 reviews every time. The fix is a review cadence after every roofing job plus a properly configured profile, which also lifts your LSA ranking and your landing page conversion rate at the same time.
Honestly, often not, and a good agency will tell you so. ServiceTitan measured a 42% average call booking rate across the trades it studied, and shops with fewer than 5 technicians averaged just 24% (roofing was not broken out separately in that dataset) (ServiceTitan's analysis of more than 3,000 trade businesses across the US and Canada, June 2022). Separately, call-tracking benchmarks put missed calls at roughly 20-30% of inbound volume for home service businesses, rising to 40-50% during seasonal peaks. So before adding budget, pull last month's call recordings and check three things: how many rang out unanswered, how many were answered but never asked for the appointment, and how many were quoted a price over the phone instead of booked for a visit. Fixing that is usually worth more than any bid change, and we will say so during the audit rather than sell you more spend.
No sales pitch. We open your roofing LSA profile + Google Ads account live, walk through what is working and what is not (campaign structure, storm readiness, insurance split, negative keywords), and email you the written diagnostic. Yours to keep whether you hire us or not.
Prefer email? Send us a message instead
If you want the operator-level depth before booking the audit call, the educational playbooks cover every section in this page at 3-5x the length:
Book a 30-minute audit. We will open your roofing LSA profile and Google Ads account live, identify the campaign structure gaps, check your storm readiness, audit your insurance vs cash split, and tell you exactly what to fix. Even if we do not work together.