Roofing in Tampa Bay, FL
Won storm season without outbidding the storm chasers.
A second-generation roofer who was losing every storm season to crews with bigger ad budgets. Eleven months later, most of her inspections are booked straight off posts under her own name in the neighborhood groups.
Family-owned roofing company, 9 staff. Told by Dana, owner.

- Leads from the groups
- 178
- over 11 months
- Leads a month, once running
- 19.4
- Cost per lead
- $62
- was $142 from ads
- Close rate
- 20%
- 36 jobs closed
- Closed revenue
- $398k
- $10,967 spent
- Return on spend
- 36x
- revenue ÷ fees
The business
Dana took over the company from her father in 2019. Two crews, one estimator, and an office run out of a converted house in Brandon. About 60% of their work is full replacements; the rest is leak repairs and insurance claims.
- In business
- 14 years
- Average ticket
- $11,800
- Tracked
- Apr 2025 to Feb 2026
- Service area
- Westchase, Brandon, Riverview, Palm Harbor and Wesley Chapel
Before
Every time a storm came through, out-of-state crews flooded the area and bid on the same keywords. Her cost per click nearly doubled from August to October, which is exactly when she needed the phone to ring.
- Where leads came from
- Google Ads
- Referrals from past customers
- A few insurance adjusters
- Google Ads
- $4,500 a month
- Typical cost per lead
- $142
What we did
We got Dana into 162 local groups and posted about 14 times a week across them: tips, offers and finished jobs, with every comment and message answered the same day. A few of the groups:
- Westchase Neighbors
- Brandon Moms & Families
- Riverview FL Community
- Palm Harbor Happenings
What worked for roofing
- Before-and-after photos from finished roofs, posted only in the group for that neighborhood, with a free inspection booking link in the first comment.
- Storm-week posts after each named storm: what to photograph for the insurance claim, and how to tell a local roofer from a storm chaser.
- Replies in “anyone know a roofer?” threads within the hour, under Dana’s own name.
Results
Leads per month from group threads, Apr 2025 to Feb 2026
| Month | Leads |
|---|---|
| Apr | 3 |
| May | 8 |
| Jun | 12 |
| Jul | 17 |
| Aug | 18 |
| Sep | 23 |
| Oct | 26 |
| Nov | 19 |
| Dec | 15 |
| Jan | 17 |
| Feb | 20 |
September and October were the busiest months the company has had, and most of those requests came through the inspection link under her storm posts. December dropped to 15, which Dana called normal: nobody wants a crew on the roof the week before Christmas.
| Measure | Before | With the groups |
|---|---|---|
| Monthly spend | $4,500 | $997 |
| Cost per lead | $142 | $62 |
| Leads that became jobs | 11% | 20% |
| Cost per closed job | $1,291 | $305 |
Along the way
- Week 5
First inspection booked through the link under a before-and-after post in Westchase Neighbors.
- Month 6
11 inspection requests in the nine days after a named storm, most of them off one post about what to photograph for the claim. No ad budget running.
- Month 9
Paused Google Ads for good. Kept the budget for a third crew instead.
“I figured Facebook groups were for people selling couches. Then they put up an old picture of me and my dad on a roof in Brandon, and people were still messaging me about it a month later. Half of them wanted an inspection.”
More from roofing
Roofing · Columbus, OH
From the fourth call on a shared lead to the first call.Roofing · Oklahoma City, OK
Halved the ad budget before hail season. Leads went up.HVAC · San Antonio, TX
The best November this company has had in five years.
One company per trade per city
Is your trade still open where you work?
We take one roofing company per city, with a 25-mile territory. $997 a month flat, no ad spend, and 15 leads a month by month four, or we work free until you get there.