← Back to blog
Roofing

May 10, 2026

5 Roofing Follow-Up Templates That Close Bids

You walked the roof, climbed back down, and handed the homeowner a $9,500 estimate. Then you went to the next job and forgot about it. Two weeks later, you find out they signed with the guy who texted them three times.

That is the real loss in roofing. Not pricing. Not warranty length. Not GAF certification. It is silence between the estimate and the signed contract.

The homeowner is not ignoring you. They are drowning in three other bids, a spouse who has not weighed in, and an adjuster who has not called back. The contractor who shows up in their inbox at the right moment, with the right message, gets the deposit.

Below are five copy-paste templates built for roofing specifically. Cash jobs and insurance jobs have different windows, different objections, and different cadences, so the templates reflect that. Brackets mark the variables. Read them, swap the words that do not sound like you, and ship them today.

We chase. You build.

Template 1: Same-Day Estimate Confirmation (Send within 30 minutes)

Speed-to-lead is brutal in roofing. After a hailstorm, homeowners get pitched by four contractors in 48 hours. The first to put a written estimate in their hand, with photos, usually wins the mental shortlist. Send this the moment you leave the driveway, before you start the next estimate.

This template does three jobs. It confirms you were there so the homeowner does not forget your name. It anchors a number so other bids get measured against yours. And it sets the next touchpoint expectation so a day-3 follow-up does not feel like nagging.

Keep it text-first. Email is fine as a backup, but a text gets opened in 3 minutes versus 90 minutes for email, and homeowners reply faster on the channel they were already on.

Text/SMS template:

"Hi [FIRST NAME], [YOUR NAME] with [COMPANY] here. Thanks for letting me on the roof today. Quick recap: [SQUARES] squares, [SHINGLE BRAND/COLOR], [WARRANTY] warranty, ice-and-water shield on all valleys and eaves, drip edge included. Total [TOTAL]. I will text photos tomorrow morning. Reply YES if you want me to hold the [PROPOSED INSTALL DATE] slot on my calendar."

  • Send within 30 minutes of leaving the property
  • Anchor the scope (squares, shingle, warranty) so cheaper bids look incomplete
  • Name a specific install date to create urgency
  • Ask for a micro-commitment ("reply YES") not a signature

Template 2: Day-3 Photo Drop (Make it visual)

Most roofers send a PDF estimate and stop. The contractor who sends drone photos with red-circled problem areas wins on perceived expertise, even at a higher price. By day 3, the homeowner has seen at least one other bid. Your photos are how they remember which estimate is which.

Pick three to five photos: the worst granule loss, a cracked boot, an exposed nail line, and one wide drone shot showing the whole plane. Annotate them with arrows or circles. Free apps like Skitch or your phone's markup tool work fine.

Email works better than text for this one because attachments render cleanly and the homeowner can forward to a spouse without screenshotting.

Email template:

"Subject: Photos from your roof, [STREET NAME]

Hi [FIRST NAME],

Following up with the photos I promised. I circled the four spots that concern me most:

1. [PHOTO 1 — e.g. North valley, granule loss to bare mat] 2. [PHOTO 2 — e.g. Pipe boot cracked, active leak path] 3. [PHOTO 3 — e.g. South ridge, lifted shingles from [STORM DATE] wind event] 4. [PHOTO 4 — drone overview]

The estimate I left covers full tear-off, [UNDERLAYMENT], ice-and-water shield in all valleys and 6 ft up from the eaves, new drip edge, and [SHINGLE] in [COLOR]. Total [TOTAL].

Let me know if you want to walk through the photos by phone. I have [DAY] [TIME] or [DAY] [TIME] open.

[YOUR NAME] [CELL]"

  • Three to five annotated photos beats a clean PDF every time
  • Reference the actual storm date if it was insurance-driven
  • Offer two specific call windows, not "let me know when works"
  • Sign with your cell, not a generic office line

Template 3: Day-7 Schedule Signal (Create a soft deadline)

Day 7 is when cash-job decisions usually land. The homeowner has all their bids, the spouse has weighed in, and they are picking. If you do not surface, you get forgotten. If you push too hard, you sound desperate. The trick is to make it about your schedule, not their decision.

This template references your crew's calendar as a real constraint, which it is. With 1 to 2 jobs per week per crew, a week-out commitment is genuinely the difference between a May install and a June install. Homeowners respond to specifics.

SMS template:

"Hi [FIRST NAME], [YOUR NAME] with [COMPANY]. My crew has [DATE A] and [DATE B] open in the next two weeks, then we are booked through [LATER DATE]. If you want one of those slots, I need to know by [DEADLINE]. No pressure if the timing is off, just did not want you to lose the date."

  • Reference real calendar slots, not vague availability
  • Name the next-available date so the gap feels concrete
  • Use "no pressure" to keep the tone non-pushy
  • End without a question mark, which feels less like a sales close

Template 4: Day-14 Graceful Close (Recoverable for 90 days)

By day 14, a cash lead is cold. But cold is not dead. Roofing leads stay recoverable for about 90 days, especially storm-driven ones, because adjusters move slow and spouses change their minds. The day-14 message is designed to close the loop without burning the bridge.

The psychology here is reverse-pressure. Instead of asking for the sale, you give them an out. Most homeowners who ghosted will reply with the real reason, which is almost always "we are still deciding" or "waiting on insurance." That reply gives you the data to follow up correctly in 30 days.

Email template:

"Subject: Closing the file on [STREET NAME]?

Hi [FIRST NAME],

I have not heard back, so I am going to assume you went a different direction or the timing is not right. Totally fine either way.

If I am wrong and you are still considering it, just reply with "alive" and I will hold off on closing the file. If I do not hear back by [DATE], I will pull you off my active list. You will always be welcome to circle back if anything changes.

Thanks for the time on the roof.

[YOUR NAME]"

  • "Closing the file" is the highest-replying subject line in our data
  • Give them an easy one-word reply ("alive")
  • Do not actually delete them, move them to a 30-day re-touch list
  • Storm leads stay viable for 90 days, do not write them off at 14

Template 5: Insurance-Job Adjuster Check-In

Insurance jobs make up 40 to 60 percent of roofing work in Florida, Texas, and the Midwest, and they have a totally different timeline. The decision window is 30 to 60 days, not 7 to 21, and the bottleneck is the adjuster, not the homeowner. If you follow up like a cash job, you will annoy them. If you do not follow up at all, the public adjuster or the other contractor will take it.

The right move is a low-friction, every-7-to-10-days check-in that positions you as their advocate, not another vendor chasing a check.

SMS template:

"Hi [FIRST NAME], [YOUR NAME] checking in on the [CARRIER] claim. Any update from [ADJUSTER NAME] on the inspection date or supplement? Happy to jump on a call with them if you want me to push it. No rush, just keeping it on my radar."

  • Name the carrier and adjuster — shows you remember the file
  • Offer to call the adjuster directly, this is your superpower vs DIY homeowners
  • Cadence: every 7-10 days until claim approves, then switch to cash-job urgency
  • Track claim stage, not days-since-estimate, in your CRM

The bottom line

These five templates cover roughly 80 percent of the follow-up moments where roofing bids go cold. The other 20 percent is execution: actually sending them, on time, every time, across every estimate you write. That is where most roofers fail, and it is not because they are lazy. It is because at 7 PM on a Friday after climbing six roofs, nobody opens a CRM to schedule a day-3 photo drop.

This is exactly what QuoteFollow automates. You write the estimate once, the system sends the day-3, day-7, and day-14 touches in your voice, and you only step in when a homeowner replies. Flat $79 a month, SMS included, 14-day trial. No per-message fees, no enterprise pricing call.

Start your trial at /auth/signup and load these templates in 5 minutes.

Frequently asked questions

How many follow-ups should I send per roofing estimate?

Five to seven touches over 14 days for cash jobs, then a 30-day and 60-day re-touch. Insurance jobs need 6 to 10 touches over 30 to 60 days, paced to the claim timeline rather than the estimate date.

Should I follow up by text or email?

Text first for confirmation and schedule signals, email for photo drops and longer scope explanations. Texts get 90 percent open rates within 3 minutes; emails are better when you need attachments or a spouse to forward.

What time of day gets the best reply rate?

5 to 7 PM on weekdays for homeowners. They are off work, eating dinner, and looking at their phone. Avoid 8 AM, when they are commuting and triaging email. Saturday morning works for storm follow-ups.

How long do roofing leads stay recoverable?

About 90 days for storm-driven cash jobs, longer for insurance jobs that get denied or under-scoped. A 60-day and 90-day re-touch on cold leads recovers 8 to 12 percent of bids that originally went silent.

Stop chasing quotes. Start chasing jobs.

QuoteFollow chases every estimate and invoice automatically — flat $79/mo, SMS included, 14-day free trial.

Start free trial →

Keep reading

Related guides

Stop losing quotes to silence.

QuoteFollow chases every quote and invoice automatically — flat $79/mo, SMS included.

Start free trial →