What roofing marketing actually involves
Roofing demand is split between emergency intent (storm damage, active leaks), planned replacement (aging roof, home sale prep), and commercial re-roof RFPs. Each requires a different channel mix, and the agencies worth hiring will tell you that on the first call.
For residential, the non-negotiables are Google Local Services Ads (LSAs), Google Search, and Google Business Profile optimization across every service-area city you work. LSAs in particular have become the single highest-intent channel in the category — a verified GAF- or Owens Corning-certified contractor with a 4.7+ rating and responsive call handling will outperform competitors spending 3x on traditional search. Beyond Google, expect Meta (Facebook and Instagram) for storm-response campaigns and retargeting, NextDoor for neighborhood-level brand lift, and YouTube pre-roll when you want to build trust ahead of a $25K sale. Review generation through BirdEye, NiceJob, or Podium is table stakes; so is structured data and local SEO work through tools like BrightLocal or Whitespark.
For storm-restoration operators, canvassing routes driven by hail-swath data (HailTrace, Interactive Hail Maps) and geo-fenced Meta campaigns after a named storm event are the actual revenue drivers. A good agency knows how to spin up a landing page and a paid campaign within 48 hours of a hail event and pull them down when the market saturates.
Commercial roofing is a different animal entirely. SEO for "TPO roof replacement [city]" and "commercial roof coating" matters, but so do property-manager email sequences, LinkedIn outreach to facility managers, and trade association presence (IRE, NRCA events). If an agency pitches you the same Meta-first playbook for your commercial division that they'd pitch a residential roofer, they don't understand your business.
What roofing marketing should cost
Expect managed-services fees separate from media spend. As a rough map:
- Local SEO + GBP management only: $1,500 to $3,500 per month.
- Full-service retainer (SEO, paid search, paid social, CRO, reporting): $4,000 to $12,000 per month for a single-market residential roofer. Multi-market operators run $10,000 to $25,000+.
- Media spend on top of retainer: $5,000 on the low end for a single metro; storm-chaser operators routinely run $30,000 to $150,000/month across paid channels during active seasons.
- Website builds: $8,000 to $40,000 depending on whether it's a template refresh or a custom build with financing integrations, instant-quote tools, and CRM handoffs.
- Per-lead pricing: some agencies will sell exclusive roofing leads at $80 to $250 per lead for retail, $40 to $120 for insurance-angled storm leads. Quality varies wildly and exclusivity is often a fiction.
Typical engagement lengths are six to twelve months. Anything shorter and SEO won't mature; anything longer as a minimum commitment is a red flag unless it's paired with a real performance guarantee.
What to ask on a sales call
-
"How many roofing clients do you currently work with, and where?" A good answer is a specific number and a willingness to name markets so you can confirm they're not working with your direct competitor. A bad answer is vague "dozens of home services clients."
-
"Who owns the Google Ads account, the LSA profile, and the website if we part ways?" You want to hear: you own all of it. Anything else is a hostage situation.
-
"What's your approach when a hail or wind event hits one of my markets?" Specialists have a playbook — rapid landing pages, geo-fenced creative, canvassing coordination. Generalists fumble this question.
-
"How do you track a lead from click to closed job?" You want CallRail or similar with dynamic number insertion, plus CRM integration (JobNimbus, AccuLynx, Roofr, ServiceTitan). If they can't explain closed-loop reporting, their "ROI" numbers are made up.
-
"What's a realistic cost per booked inspection in my market?" A specialist has benchmarks. A generalist will deflect to cost-per-click or "engagement."
-
"Do you work with insurance-restoration shops, retail, or both?" If you're a retail-only roofer and they mostly serve storm chasers, the creative and offers will be wrong for you.
-
"How do you handle review generation and reputation?" A specific tool and workflow should come up, not "we help with that."
-
"Can I talk to two current clients and one former client?" Refusal on the former-client piece is telling.
KPIs that actually matter for roofing
Forget impressions, CTR, and "engagement." The metrics that determine whether you should renew are:
- Cost per booked inspection (not per lead). In most markets, $150 to $450 per booked inspection is healthy for retail residential. Storm-driven costs can be much lower during active events.
- Inspection-to-contract rate. This is on you and your sales team, but good agencies track it to understand lead quality. Retail roofers should see 25 to 45 percent; storm-restoration shops often run 50 percent or higher on insurance-angled leads.
- Cost per acquired job (CAC). For retail residential re-roofs, $500 to $1,500 all-in is a reasonable band; commercial CAC can run into five figures and still pencil out given ticket sizes.
- Revenue per marketing dollar. A mature residential program should return $8 to $15 in booked revenue per $1 of combined agency fees and media spend. Below $5:1, something's broken.
- LSA lead quality score and response time. Google actively ranks you on this. Missed calls kill LSA performance faster than anything else.
- Organic rankings for money keywords — "roof replacement [city]," "roofers near me," "[brand] certified installer [city]." Map pack presence matters more than blue-link position one for most of these.
The one number not to obsess over: raw lead volume. A hundred form fills from a Meta campaign aimed at "free roof inspection" can produce zero jobs if the offer attracted tire-kickers.
Red flags in roofing agency contracts
- Twelve-month minimums with no out clause. Six months is reasonable to see SEO traction; twelve with no exit for non-performance is just protection for the agency.
- Agency owns the ad accounts, GBP, or website. If you can't take the assets with you, you don't own your marketing — you rent it.
- Vague deliverables. "Ongoing SEO optimization" means nothing. You want a monthly scope with named outputs: X backlinks, Y pages published, Z technical fixes.
- Rev-share models without caps. These start attractive when you're small, become punitive when you scale, and incentivize the agency to chase volume over quality.
- White-label fulfillment they won't disclose. Many "roofing marketing agencies" are two-person shops reselling fulfillment from a handful of production houses overseas. Ask directly who does the work.
- Pay-per-lead with "exclusivity" that isn't. Read the definition of exclusive. Often it means exclusive to one campaign, not one company per market.
- Setup fees that lock up your assets. A $5,000 "website build" you can't take with you is a $5,000 hostage fee.
Common roofing marketing mistakes
The most expensive mistake is hiring on price. The $1,200/month agency is almost always running a templated campaign across 50 roofers and cannot produce what a real specialist produces. The second most expensive is hiring a broadly competent generalist because they do your dentist's website or your friend's restaurant — roofing's channel economics are too specific for that to translate.
Other repeat offenders: expecting SEO to move in 60 days (it won't; four to six months is realistic for a competitive metro), underfunding media spend so the agency can't actually test anything, failing to answer the phone during business hours (LSAs will deprioritize you within weeks), and not staffing a dedicated appointment setter or CSR. An agency can deliver 80 booked calls a month and you'll still lose money if 30 of them go to voicemail.
The subtle one: not instrumenting your CRM to close the reporting loop. If you can't tell your agency which leads became jobs and at what ticket size, they're optimizing on proxy metrics and you're both flying blind.
In-house vs. roofing agency
Below roughly $3M in revenue, in-house marketing rarely pencils out. A competent roofing marketing manager costs $70K to $110K fully loaded, and they still can't cover paid media buying, SEO, creative production, and reporting without tools and contractors. You're better off with a specialist agency and a part-time internal coordinator who manages the relationship and owns your CRM data.
Between $5M and $20M, a hybrid model is usually optimal: one in-house marketing lead who owns strategy, CRM, reviews, and local community presence, paired with an agency for paid media execution, SEO, and creative. The in-house person's real value is speed — they can approve creative, respond to a storm event, and push offers same-day without a project manager in the loop.
Above $25M, particularly for multi-state operators, building an internal team of three to six starts to make sense, though most still retain an outside agency for paid media because the tooling and bidding expertise is hard to hire in-house at that scale. The inflection point isn't really revenue; it's the number of markets. Once you're in five or more metros, the coordination overhead tips the math.