Key takeaways
- Price the roles, not the person: paid search, the Google profile, the website, Meta ads, CRM follow-up, job content and reporting.
- Count hours twice, once for storm season and once for the off-season. A salary is the same in both.
- In-house works best for a coordinator who lives with the crews: photos, reviews, yard signs and partner visits.
- Hybrid is the common answer: the coordinator in-house, the specialist work outside, every account in your name.
Weighing a marketing employee vs an agency, a roofing company should start with the work, not the salary. Running Google Ads, the Business Profile, the website, Meta ads, CRM follow-up and job content is several specialties, and a hailstorm can bury all of them in a week. Price each role, then compare one hire, an agency and a hybrid against the same list.
What the work actually requires
Roofing marketing is six or seven jobs that rarely sit in one person. Here is what each involves for a roofer:
- Paid search and Local Services Ads. Keywords for repair, replacement and storm damage, and budget rules for storm weeks. Local Services Ads are moving into Google Ads as Performance Max campaigns with pay-per-lead goals (Google's announcement), so whoever runs search will soon run your pay-per-lead budget too.
- Business Profile and local SEO. Categories, service areas, weekly roof photos, review replies and service pages for each kind of work.
- Website and landing pages. A storm-response page, an insurance claim explainer, forms that work on a phone in the rain, and fast load times.
- Meta ads. Retail replacement campaigns aimed at homeowners in the areas you serve, and follow-up on those leads the same hour.
- CRM and automation. HighLevel follow-up connected to JobNimbus or AccuLynx, texting registration and review requests.
- Content from the job site. Before-and-after photos, short videos, project write-ups. This one needs someone near the crews.
- Reporting. Tracing each lead source to inspections and signed roofs.
Few people are strong at more than two of these. An owner who hires one generalist usually ends up directing the rest personally.
In-house, agency or hybrid
| Question | In-house | Agency | Hybrid |
|---|---|---|---|
| Skills covered | What one or two hires know | A team of specialists | A lead in-house, specialists outside |
| Your management time | High: you manage people | Low: one partner | Some: one hire and a partner |
| Account ownership | Yours | Insist it stays yours | Yours |
| If someone leaves | Their knowledge goes too | The team covers it | Partly covered |
Cost comparison framework
- List the roles you need from the list above. Drop any you truly do not use.
- Estimate monthly hours for each, twice. Once for storm season and once for the off-season. Paid search and the phones swing hardest.
- Price each role locally. Use local job postings for pay, then add payroll taxes, benefits, software seats, training and the cost of recruiting.
- Add management time. Count the hours you or your office manager would spend directing and checking the work, at what your time is worth.
- Get a quote for the same scope. Ask an outside team to price the same roles and the same reporting.
- Compare cost per signed roof, not cost per month. The cheaper option on paper is not cheaper if it books fewer inspections.
A worksheet to fill in with your own numbers:
| Role | Hours a month in storm season | Hours a month off-season | Your local cost to hire | Outside cost for the same scope |
|---|---|---|---|---|
| Paid search and LSA | ||||
| Business Profile and SEO | ||||
| Website and landing pages | ||||
| Meta ads | ||||
| CRM and automation | ||||
| Job site content | ||||
| Reporting | ||||
| Your management time |
Then compare the three models on what the totals hide:
| One in-house hire | Agency | Hybrid | |
|---|---|---|---|
| Control | Full, if you manage them | Shared; keep accounts in your name | Full on content, shared on specialist work |
| Cost shape | Fixed salary all year, busy or slow | Scoped by project or month | Fixed for the coordinator, flexible for the rest |
| Management time | High: you set every priority | Low to moderate | Moderate |
| Skills covered | One or two | Several | Several, plus on-site content |
| Storm-week surge | One person absorbs it | A team absorbs it | The coordinator handles the job site, the team handles ads and phones |
| When someone leaves | Know-how leaves too | Handover, if accounts are yours | Partial continuity |
When in-house makes sense
In-house makes sense when one role has steady, specific work and someone to manage it. In roofing that is usually a marketing coordinator who lives with the crews: photographing every roof, gathering reviews at the final walkthrough, keeping the Google profile fresh, ordering yard signs, and visiting the agents and home inspectors who send you work. That job happens on driveways and job sites. An outside team cannot do it from a desk.
It makes less sense when you expect one person to run Google Ads, rebuild the website and wire up the CRM. That is several specialties, and storm season will find the gaps.
Hybrid models
A hybrid usually fits a roofing company best: the coordinator in-house, the specialist work outside. Make it work with three rules:
- Split by kind of work. In-house owns job site content and relationships. The outside team owns ads, SEO, the website, automation and reporting.
- Keep every account in your company's name, with both sides as users.
- One list and one report. A shared weekly task list and one monthly report in inspections booked and roofs signed, so nobody argues about whose leads they were.
For what to demand from the outside half of that team, see choosing a marketing agency for roofing companies. If paid search is the role you most need covered, the Local Services Ads guide for roofing companies explains what the move into Google Ads changes.
How VETS Growth Marketing helps
We cover the specialist roles for about the cost of one senior hire, and we work alongside the coordinator you keep in-house. Every account stays in your company's name, the work is scoped as projects with dates, and there is no long-term contract. We report in inspections booked, roofs signed and cost per customer. Bring your filled-in worksheet to a growth consultation and we will price the same scope against it.