What to Look For in a Roofing Marketing Agency (And What to Run From)
What to Look For in a Roofing Marketing Agency (And What to Run From)
A roofer in Huntsville called me last fall, frustrated.
He'd just fired his second marketing agency in 18 months. The first one charged him $2,200 a month for 14 months. They promised SEO, Google Ads, social media management, and "lead generation." What he got: a website that looked exactly like 47 other roofing websites, a handful of Facebook posts with stock photos, and a grand total of 11 trackable leads over the entire engagement.
That's $30,800 for 11 leads. $2,800 per lead.
The second agency was "different." They promised. They charged $1,800 a month. They lasted 9 months before he pulled the plug. This time he got 23 leads — better ratio — but 16 of them were for towns he doesn't even service. They'd run ads targeting a 60-mile radius without asking him where he actually works.
So he'd spent $47,000 on marketing agencies in a year and a half. His total closed jobs from those leads? Four. His cost per acquired customer: $11,750.
His average roofing job is $8,400.
He was literally paying more to get customers than he made from them. And he didn't even realize it until he sat down and did the math.
This isn't a rare story. I hear versions of it constantly from roofers across North Alabama. Marketing agencies promise the world. They show fancy dashboards. They use words like "impressions" and "engagement" and "brand awareness." And contractors keep writing checks because they don't know what good looks like — or what questions to ask.
So let's fix that.
Why Roofing Companies Are Targets for Bad Agencies
Before we get into what to look for, let's talk about why roofers specifically get burned so often.
Roofing is high-ticket. An average residential roof replacement in the Huntsville area runs $8,000-$15,000. Commercial work is even higher. That means marketing agencies know roofers can write big checks. A contractor doing $175 service calls might balk at $2,000/month retainers. A roofer doing $12,000 jobs? They'll pay.
Roofing is competitive. After every major storm, new roofing companies pop up like mushrooms. The North Alabama market has gotten significantly more crowded since the tornado outbreak in 2011, and again after the storms in 2019 and 2021. More competition means more desperation, and desperate business owners make easy marks.
Roofing is seasonal and weather-dependent. When storm season hits, every roofer wants to capture demand. Agencies know this. They'll time their sales pitches for February and March, right when roofers are thinking about spring and hail season. "You need to be ready when the storms come." It's not wrong — but it's manipulative when they know they can't actually deliver.
Most roofers don't understand digital marketing. No shame in this. You're good at roofing. You probably didn't go into this business to learn about SEO and conversion rates and pixel tracking. But that knowledge gap is exactly what shady agencies exploit.
The Red Flags (What to Run From)
Let me save you some money. If you see any of these, walk away.
1. They guarantee rankings or lead numbers.
"We'll get you on the first page of Google in 90 days." "We guarantee 50 leads per month."
No legitimate agency can promise this. Google's algorithm changes constantly. Competition varies by market. What works in Birmingham might not work in Decatur.
Any agency that guarantees specific outcomes is either lying or planning to game the metrics (which I'll explain in a minute).
A roofer in Madison told me his agency guaranteed 30 leads per month. They hit that number. But here's what they counted as a "lead": anyone who clicked on an ad. Not filled out a form. Not called. Clicked. Including bots. Including competitors checking out his ads. Including people who immediately bounced.
His actual phone calls from those "30 leads"? Three. Maybe four in a good month.
Guarantees are a red flag. Always.
2. They won't show you exactly where your money goes.
If you're paying $2,500/month and they can't show you:
- How much goes to ad spend
- How much goes to their management fee
- How much goes to content creation
- How much goes to software/tools
...then you have no idea what you're buying.
I've seen agencies charge $3,000/month and put $400 into actual ad spend. The rest is "management" — which often means they log into your account twice a month and generate an automated report.
Ask for a detailed breakdown. If they get cagey, leave.
3. Their "case studies" are suspiciously vague.
"We helped a roofing company increase leads by 340%."
340% of what? What was the baseline? What was the timeline? What did they actually do? Can you talk to that roofing company?
Good agencies have specific, verifiable case studies. They'll give you names. They'll let you call references. They'll show you before-and-after data with context.
Bad agencies have impressive percentages that mean nothing.
4. They own your website, your ad accounts, or your content.
This is the big one. This is how agencies trap you.
If they build your website and you don't own the domain, you're in trouble. If they run your Google Ads through their master account instead of yours, you're in trouble. If the blog posts they write belong to them and not you, you're in trouble.
Because when you leave — and eventually you might — you'll have nothing.
A roofing contractor in Athens learned this the hard way. His agency "built" him a website as part of their package. Two years later, he wanted to switch agencies. Turns out the website was on the agency's hosting, under the agency's account, and he had no access. When he tried to leave, they wanted $5,000 to "transfer" the site — or he could start from scratch.
He started from scratch. Lost two years of SEO work.
Everything should be in your name: domain, hosting, Google Ads account, Google Analytics, Google Business Profile. Everything. An agency should be running things for you, not owning them.
5. They want long contracts with no exit clause.
Twelve-month contracts aren't automatically bad. Marketing does take time. But if there's no way out if things aren't working — no 30-day notice clause, no performance benchmarks that allow exit — you're trapped.
A roofer in Morgan County signed a 12-month contract with a $4,000/month agency. By month three, he knew it wasn't working. Zero leads. But he owed them for nine more months. The agency wouldn't negotiate. He ended up paying $36,000 for nothing because the alternative was a lawsuit.
Look for contracts with exit clauses. Three months with 30-day notice is reasonable. Six months with 60-day notice is reasonable. Twelve months with no exit is a trap.
6. They talk about "branding" and "awareness" but can't tell you how to measure ROI.
Here's a phrase that should make you nervous: "It's not about leads, it's about building your brand."
Branding matters for Nike. Branding matters for Coca-Cola. For a roofing company in Decatur serving a 40-mile radius, what matters is whether the phone rings.
Some agencies hide behind "brand awareness" because they can't deliver actual leads. If you ask "how do I know if this is working?" and their answer involves impressions, reach, engagement, or any other metric that doesn't translate to people calling you — be suspicious.
Ask them directly: "How will we measure whether this is worth the money?" If they can't answer in terms of leads, calls, form submissions, or closed jobs, they're not focused on your success.
What Actually Matters (What to Look For)
Now that you know what to avoid, here's what good looks like.
1. They understand roofing.
This might sound obvious. It's not.
A generalist marketing agency that does law firms, dentists, and "also some contractors" doesn't understand your business. They don't know that roofing is seasonal, that storm chasers flood the market after hail, that homeowners are skeptical because they've heard stories about roofers disappearing, that insurance claims complicate the sales process.
You want an agency that either specializes in roofing or has deep experience with contractors. They should be able to talk about your business without you explaining everything.
Ask them: "What's different about marketing a roofing company versus a general contractor?" If they don't have a real answer, they don't have real experience.
2. They obsess over local SEO.
For a roofing company, national rankings don't matter. You don't care if someone in Phoenix finds your website. You care about homeowners in your service area.
That means local SEO:
- Google Business Profile optimization (and they should know that "Google Business Profile" replaced "Google My Business" — if they still call it GMB, they're behind)
- Local service pages (not one "roofing services" page, but pages for each city you serve)
- Review strategy (because reviews drive local rankings)
- NAP consistency (Name, Address, Phone number exactly the same across every listing)
- Local link building (getting mentioned on local news sites, chambers of commerce, community organizations)
Ask them what their local SEO process looks like. If they can't walk you through it step by step, they're winging it. And if you want to know what proper Google Business Profile work actually involves — so you can tell when an agency is doing it vs. faking it — I wrote out the full GBP optimization process for contractors.
3. They set up tracking properly from day one.
This is the boring stuff that makes everything else work.
You need:
- Google Analytics installed and configured correctly (GA4, not the old Universal Analytics)
- Call tracking so you know which leads came from which source
- Form submission tracking
- Google Search Console connected
- Conversion tracking on your Google Ads
If an agency can't show you exactly how many leads came from organic search vs. paid ads vs. social media vs. direct traffic, they're not doing their job. You can't improve what you don't measure.
I talked to a roofer who'd been with an agency for 8 months. I asked him how many leads came from their SEO work vs. their paid ads. He didn't know. Neither did the agency. They'd never set up proper tracking.
They'd been billing him $2,700/month and couldn't tell him whether any of it was working.
4. They create real content, not stock garbage.
Look at their portfolio. Look at the websites they've built for other roofers.
Is the content specific? Does it mention actual places, actual roofing challenges, actual insurance processes in your state? Or is it generic "we provide quality roofing services" nonsense that could apply to any roofer anywhere?
Good roofing content sounds like it was written by someone who understands roofing. It talks about the difference between 3-tab and architectural shingles. It explains how the insurance claims process works in Alabama. It addresses specific concerns homeowners in North Alabama have — wind damage from severe storms, humidity and algae growth, aging roofs in 1970s subdivisions.
Bad content sounds like it was written by someone who Googled "what do roofers do" for five minutes.
Ask to see blog posts or pages they've written for other clients. Read them. Would a homeowner actually find this helpful? Would a roofer read it and nod, or roll their eyes?
5. They report in terms you understand.
A good agency meeting should answer one question: is this working?
Not "here's your click-through rate." Not "your impressions are up 47%." But: "You got 14 leads this month from our work, compared to 9 last month. Here's where they came from. Here's what we're doing to get more."
If you leave a meeting more confused than when you started, something's wrong.
Ask for sample reports before you sign. If it's 18 pages of graphs with no clear summary of what's working and what isn't, that's a warning sign. They might be burying bad news in complexity.
6. They're not your only option.
Here's something agencies won't tell you: you might not need an agency at all.
A roofing company doing $500K-$1M per year might be better served by:
- A one-time website build from a good freelancer ($3,000-$7,000)
- Learning to manage their own Google Business Profile (free)
- A part-time marketing assistant for $15-20/hour
- A monthly SEO consultant for $500-$800/month
The full-service agency model ($2,000-$5,000/month) makes sense for larger roofing companies — $2M+ in revenue, multiple crews, serious growth goals. For smaller operations, you're often paying for overhead you don't need.
A good agency will be honest with you about this. They'll say "based on your current size, here's what we recommend" — even if that recommendation is "you don't need us yet."
An agency that tells every prospect they need the full package is an agency that needs your money more than they need your success.
The Right Questions to Ask
Before you sign anything, ask these:
"Can I talk to three current clients?"
Not "clients" — current clients. If they won't let you talk to people who are actively paying them, wonder why.
"What happens if I leave after six months?"
Get the exit terms in writing. Know what you're committing to.
"Who owns the website, the ad accounts, and the content?"
The answer should be "you do." Anything else is a problem.
"How much of my monthly fee goes to actual ad spend?"
Know where your money goes.
"What does success look like at 90 days? 6 months? 12 months?"
Get specific benchmarks. "More leads" isn't a benchmark. "15-20 inbound leads per month from organic search" is a benchmark.
"What happens if we don't hit those benchmarks?"
A good agency will have an answer. They might say "we adjust strategy" or "we have performance clauses in the contract." A bad agency will get uncomfortable.
"What do you need from me to be successful?"
This is actually a trick question. A good agency will tell you: "We need access to your Google accounts, photos of your work every month, cooperation on review requests, and 30 minutes of your time per week for updates." They have a process.
A bad agency will say "nothing, we handle everything." Which sounds good until you realize they're not integrating with your business at all. They're just doing their thing in a vacuum.
How to Vet an Agency (The Process)
Here's the actual process I'd recommend before signing:
Step 1: Google them.
Search "[agency name] reviews." Search "[agency name] complaints." Search the owner's name. See what comes up.
Look at their own website. Is it good? Is it optimized? If a marketing agency can't market themselves well, why would they market you well?
Step 2: Check their work.
Look at websites they've built. Are they custom or templates? Do they rank for local searches? Can you find actual clients in Google and see their results?
A roofer in Limestone County did this before hiring an agency. He found three roofing companies the agency listed as clients. He Googled "[company name] + [their city]." Two of the three didn't even show up on the first page for their own name + city. The third showed up, but with an outdated website.
He didn't hire that agency.
Step 3: Call their references.
Actually call. Ask:
- How long have you worked with them?
- What were your results in the first 6 months?
- What's your cost per lead?
- Would you hire them again?
If the references are enthusiastic and specific, that's a good sign. If they're vague or hesitant, keep looking.
Step 4: Start small if possible.
Some agencies offer a "discovery" or "strategy" engagement before the full commitment. Pay $1,000-$2,000 for an audit and strategy document. See how they work. See if they understand your business. Then decide on the bigger commitment.
Better to spend $1,500 to realize they're not right than $15,000 to learn the same lesson.
The Hard Truth About Marketing Agencies
Here's something nobody in the agency world wants to admit:
Most of what agencies do, you could learn to do yourself. It would take time. It would be painful at first. But there's no magic. SEO is not black magic. Google Ads is not sorcery. It's processes, consistency, and patience.
The reason people hire agencies isn't because agencies have secret knowledge. It's because business owners don't have time, don't want to learn, or don't trust themselves to be consistent.
Those are valid reasons. But go in with your eyes open.
A good agency is essentially renting you expertise and accountability. They know what to do, and they'll actually do it consistently because you're paying them. That's the value.
A bad agency is renting you busy work and excuses. They'll do stuff — send reports, schedule posts, make changes — but none of it will move the needle because they don't actually know what they're doing.
The difference is hard to spot before you've worked with them. That's why the vetting process matters so much. The same questions and red flags apply to every trade — I covered the general principles in my piece on what to ask before hiring a contractor marketing agency if you want a checklist that isn't roofing-specific.
When to Walk Away (Even After You've Started)
Let's say you've hired an agency. How do you know when to cut your losses?
No clear improvement after 90 days.
SEO takes time. Ads can take time to optimize. But within 90 days, you should see some movement. More website traffic. More calls. More form fills. Something.
If you're at 90 days and everything looks the same as day one, have a serious conversation. If they can't explain what's happening and what's changing, start looking elsewhere.
They get defensive about data.
You ask for reports. They delay. You ask for access to your accounts. They make excuses. You ask for specifics. They answer with generalities.
This is hiding something. Maybe bad performance. Maybe not doing the work. Either way, you can't trust a partner who won't show you what's happening.
Your cost per lead keeps climbing with no explanation.
Ad costs fluctuate. Competition changes. But if your cost per lead is going up and up and they can't explain why or what they're doing about it, they're not managing your money well.
You feel like you know more than they do.
This happens. You'll Google something, find an article, and realize it contradicts what your agency told you. You'll ask about a feature and they'll seem unsure. You'll suggest something and they'll dismiss it without a real reason.
Trust your gut. If you increasingly feel like you're paying for people who know less than you, you probably are.
An Honest Admission
I'm going to tell you something I tell everyone I work with: I'm not a marketing agency. I build websites for contractors. I handle hosting and content updates. I don't run ads. I don't do social media management. I don't provide full-service marketing.
And honestly? Most of the roofers I talk to don't need full-service marketing.
What they need is a solid website that ranks for local searches. A Google Business Profile that's optimized and active. And maybe — maybe — some help with content so their pile of dirt keeps growing.
That's not a $3,000/month engagement. That's $149-$449/month for most people.
If you're a roofing company doing $3M+ in revenue with multiple crews and real growth goals, maybe a full-service agency makes sense. But if you're doing $500K-$1.5M? You might be better off with a simpler setup and keeping more of that money.
The best marketing investment I've seen roofers make isn't an agency. It's consistently asking every customer for a Google review. That's free. And it works better than most things agencies charge thousands for.
What to Do This Week
If you're currently shopping for an agency — or suspicious of the one you have:
1. Calculate your actual cost per lead and cost per customer. Pull your numbers. Total marketing spend divided by total leads. Total spend divided by closed jobs. Know what you're really paying.
2. Request full access to your accounts. If you don't have login credentials to your Google Ads, Google Analytics, and Google Business Profile, get them. If your agency resists, that tells you something.
3. Read your contract. Know your exit terms. Know what you're committed to. Know what happens to your website and content if you leave.
4. Call one of their references. Just one. Have a real conversation. Ask the uncomfortable questions.
5. Google your own company. Search "[your company name]" and "[roofing + your city]." Do you show up? Does your website look good? What would a homeowner think if they landed on it? If you've never thought about what Google actually shows people when they search your business, that's the first audit to run — and it's free.
If the answers concern you, it's time to have a conversation — either with your current agency or with someone new.
Need a website that actually ranks without the agency overhead? I build sites for roofing contractors in North Alabama — free, no upfront cost. Just hosting and content if you want it. Let's talk.
— Irene Daniels, Sites On Call sitesoncall.com