Storm season just ended. Your calendar went from slammed to silent overnight.
You're staring at a spreadsheet of 600, 800, maybe 2,000 names — people who called, filled out a form, or got a quote from you over the last few years. Most of them never became a job. And right now, in the slow season, you're not sure what to do with them.
By the end of this, you'll know exactly how roofing companies run a reactivation campaign on their old lead list, what math to expect even at the most conservative conversion rate, and how to set it up so it runs without you chasing a single person.
The framework here comes from real reactivation campaigns we've run for roofing companies. The math is conservative on purpose — these are the numbers you can actually count on, not best-case projections.
Why Roofing Leads Don't Actually Go Cold
Storm season ends and the phone goes quiet. You're staring at hundreds of names in your CRM who called you or filled out a form. Most of them never turned into a job.
Here's what most roofers think: those leads are dead. They found someone else. They got the work done. It's over.
That's usually wrong.
The reality is that most of those people are still in the same situation they were in when they first reached out. Maybe the damage wasn't bad enough to feel urgent and they put it off. Maybe they got one quote, didn't love it, and decided to wait. Maybe life got in the way and they simply forgot to follow up.
None of that means they don't need a roof. It means they need to be reminded.
Roofing damage doesn't fix itself. A lead who called about a slow leak in February is dealing with a much bigger problem by October. The longer they wait, the more likely they are to act — if someone gives them a reason to.
The Math That Makes This Worth Doing
Before you write off your old lead list as dead weight, run this formula.
Take the size of your database. Not your active customers — your full list. Every person who called, filled out a form, or got a quote from you in the last two to three years. Let's say that's 5,000 people.
Now apply 1%. That's the floor. The most conservative number you can use for a reactivation campaign.
The formula:
Database Size × 1% = Jobs Recovered
Jobs Recovered × Avg Job Value = Revenue
Example at 5,000 leads:
5,000 × 0.01 = 50 jobs
50 × $8,500 = $425,000
You didn't have to run a single ad to get those names. You already paid to acquire them — through marketing, referrals, or just answering the phone during storm season. The only cost now is reaching back out.
If your database is bigger, run the same math:
- 10,000 leads × 1% = 100 jobs × $8,500 = $850,000
- 20,000 leads × 1% = 200 jobs × $8,500 = $1,700,000
- 50,000 leads × 1% = 500 jobs × $8,500 = $4,250,000
That's the floor. If you hit 2%, double it. If your avg job is higher than $8,500, adjust it up. The point is that even at the most conservative rate, the number is large enough to act on.
This is why roofing companies that do database reactivation don't treat it as a one-time campaign — they make it part of how they operate the business year-round.
What Database Reactivation Actually Means for a Roofer
Database reactivation is not cold calling. It's not running a promo. It's not blasting a "we miss you" email to your whole list and hoping someone responds.
It's using AI to send a specific, personalized message to each old lead — referencing what they came in for — at the right time.
The difference between a reactivation message that converts and one that gets deleted is specificity.
Generic blast (doesn't work): "Hi, we're running a 10% discount on roof repairs this month. Call us today!"
Reactivation message (works): "Hi, this is [Company]. You reached out a while back about a leak near your chimney. Wanted to check in — has that been taken care of, or is it still something you're looking to get done?"
The second one works because the lead reads it and thinks: they remembered why I called. That one detail changes the entire dynamic of the conversation. It's not a sales pitch — it's a follow-up from someone who was paying attention.
Here's what the difference actually looks like in practice.
A roofing company runs a promo blast — 10% off all repairs through the end of the month. They send it to their whole list of 1,200 old leads. They get six responses. Three of them want repairs that would pay out $300 or less.
Another company — same market, similar list size — runs a reactivation sequence. The AI pulls each lead's original inquiry reason from the CRM and generates a message that references it. The person who called about a hail-damaged section gets a message about that section. The person who asked about an insurance claim gets a follow-up about their claim.
They get 47 responses in the first two weeks. Fourteen turn into estimates. Seven turn into jobs averaging $9,200 each.
Same list size. Completely different outcome. The only difference is specificity.
The 6-Month Threshold: When a Lead Enters the Reactivation Bucket
Not every old lead should get the same treatment. The timing matters more than most people realize.
Here's how to structure it: any lead that hasn't had active contact in more than six months automatically falls into the reactivation bucket. Before that threshold, a lead is still considered recent and handled by the standard follow-up sequence. After six months, they move into a separate track.
Why six months?
First, six months is long enough that the original urgency is probably gone. They're not in crisis mode anymore. That means the message can't be "act now or else" — it has to be a check-in that earns their attention rather than demanding it.
Second, six months is enough time for their situation to have changed. The lead who called about a minor leak in spring might be dealing with a much bigger problem heading into fall. Quotes they got from other contractors may have expired. The company they went with might have done bad work. The insurance claim they put off is now overdue.
Six months is when "maybe later" turns back into "I should probably deal with this." The reactivation message meets them at exactly that moment.
Once the six-month rule is set up in your system, it runs automatically. Every lead that crosses the threshold gets added to the sequence without anyone doing it manually. You don't have to remember who to follow up with — the system handles it.
What the Reactivation Sequence Looks Like
The sequence is not complicated. It doesn't need to be. Three to four touchpoints, spaced out, is enough to reactivate the leads that are ready to move.
Here's a basic structure that works for roofing:
- Day 1 — The Check-In: "Hey [Name], this is [Company Name]. You reached out a while back about [reason they called]. Wanted to check in — is that something you've taken care of, or is it still on your plate?" No pitch. No discount. Just a human question that references what they came in for.
- Day 5 — The Soft Follow-Up: "Hey [Name], just following up on my last message. No rush at all — if the timing isn't right, totally understand. But if you're still thinking about it, I'd love to get you a current estimate. Things may have changed since we last talked."
- Day 12 — The Value Touch: Something useful — a note about what to watch for heading into winter, a tip about the insurance claims process, anything that gives them a reason to open it besides just "we want your business." This one builds trust without asking for anything.
- Day 21 — The Close or Archive: "Hey [Name] — last time reaching out for now. If you're ready to move forward with the roof, just reply and we'll get you on the calendar. If now's not the right time, no worries — we'll be here when you're ready."
That's 21 days. Four messages. Zero manual effort on your end once it's set up.
The AI handles the personalization, the timing, and the follow-through. The people on your team handle the jobs that come in.
Important: The response channel matters. Some leads respond better to text. Some respond better to email. The best reactivation setups run both — a text message referencing their original inquiry, followed by an email if there's no response. The text gets the open. The email provides the details.
How to Run This Without Doing It Yourself
The reason most roofing companies never do this isn't because they don't want to. It's because they don't have time to manually send 800 messages, track who responded, and follow up again five days later.
That's exactly what the AI does.
Here's what the setup looks like:
- Step 1 — Export your old leads. Pull every lead from your CRM that's been inactive for more than six months. Name, phone, email, and what they originally came in for is enough. If you don't have the inquiry reason in your CRM, a general reactivation message still outperforms a promo blast.
- Step 2 — Load the list and set the trigger. The system takes that list and builds a personalized sequence for each contact based on their original inquiry. Going forward, the six-month threshold is automated — any lead that crosses it gets added to the sequence without anyone doing it manually.
- Step 3 — Set the sequence and let it run. Messages go out on the schedule. Responses come back into a single inbox. Your team handles the replies — the AI handles everything that comes before.
- Step 4 — Review results at 30 days. Most campaigns see meaningful responses within the first two weeks. At 30 days, you know exactly what the list is worth. You can also see which messages converted best and adjust the sequence for the next round.
This isn't a project you run once and forget. The six-month rule means the pipeline refills itself continuously — every new lead that goes cold for six months automatically enters the reactivation track. Over time, you're never letting a lead sit dormant without a plan to bring them back.
The leads you already have are the most valuable ones you own. You paid to get them. They raised their hand. They said they needed a roof.
Most of them still do. The only question is whether you reach back out before your competitor does. And right now, most of your competitors aren't doing this — which means the leads sitting in your CRM today are still yours to win.
If you want to see what a reactivation campaign on your actual lead list looks like — the numbers, the sequence, the setup — book a strategy call with Profitaable. We'll run the math on your database and show you what's there before you commit to anything.
More on how roofing companies capture new leads the same way they lose them — by phone: AI Answering Service for Roofing Companies.
Ready to see what your database is worth?
We'll run the math on your lead list — free, no pitch.
Bring your database size and average job value. 15 minutes and you'll know exactly what's sitting in your CRM waiting to be reactivated.
Book a Free Call