Skip to main content

How to Target Storm-Damaged Areas With Direct Mail (Without Wasting Half Your Budget)

Michael Torres, Storm Damage Specialist··32 min readRoofing Sales & Growth
On this page

Direct mail still works for storm restoration, but most of the mail roofers send after a hailstorm is a coin flip dressed up as a strategy. You buy a radius around the office, blast 10,000 postcards, and hope the storm happened to wear out enough roofs inside that circle to cover the spend. Sometimes it pays. More often you find out three weeks later that the hail core actually clipped two neighborhoods you never mailed, while you papered a subdivision built in 2021 where every roof is a decade away from failing.

Targeting storm-damaged areas with direct mail is a geography problem first, a timing problem second, and a copywriting problem third. Get the geography wrong and nothing downstream matters. Most of what follows is about getting the map right before you spend a dime on printing, then layering in timing, list quality, and the messaging that actually pulls an aging or storm-worn homeowner off the couch.

I'm going to walk through the full operation the way a storm-restoration crew runs it: how to read the storm, how to draw the target area instead of guessing at a radius, how to build and clean the mailing list, how to pick the mail format and what it should say, how to time the drops, and how to track the math so you know whether to do it again. There's a section on where per-roof data fits in, the legal lines you cannot cross in your copy, and the mistakes that quietly eat margin.

Why Most Storm Direct Mail Underperforms

Before the workflow, it's worth naming the failure modes, because nearly every wasted dollar traces back to one of them.

The radius trap. A circle drawn around your shop or around a ZIP centroid has almost nothing to do with where hail fell. Hail damage follows storm cells, and cells track in narrow corridors. A severe supercell might lay down a damaging swath two to four miles wide and twenty miles long. A radius mailer treats a square mile of untouched roofs the same as the street that took golf-ball hail. You pay the same postage for both.

Mailing too late. By the time you've noticed competitors' yard signs going up, three things have already happened: the homeowners most motivated to act have signed with someone, the insurance filing window anxiety has set in, and the area is saturated with other roofers' mail. The first credible contractor in the mailbox after a storm has a structural advantage. Mail that lands week five is mail nobody opens.

Mailing too early or to the wrong storm. The opposite error. You see a tornado warning on the news, panic-print, and mail a county where the actual hail was pea-sized and cosmetic. Now you've trained a few thousand homeowners that you're a storm chaser crying wolf, and you've spent money generating tire-kicker calls that waste your inspectors' time.

Treating every house in the swath identically. Even inside a confirmed damage corridor, not every roof is a candidate. A three-year-old roof with a Class 4 impact-rated shingle may shrug off the same hail that totals a 22-year-old three-tab next door. Roof age and material change the odds of a payable claim dramatically. Mailing the new builds the same as the worn-out roofs dilutes your response rate and your close rate.

Weak, generic copy. "Free roof inspection!" on a stock postcard reads exactly like the other six in the stack. It makes no claim about this storm, this neighborhood, or why now. Response rates on undifferentiated storm mail can sit well under half a percent. Targeted, timely, specific mail can do several times that.

No tracking, so no learning. If you can't tie a closed job back to a specific drop, you're flying blind every storm. You repeat the same radius blast because you never proved it didn't work.

Fix these in order and direct mail goes from a gamble to one of the more predictable channels in storm restoration. The rest of the workflow is how.

Step 1: Read the Storm Before You Read a List

The single highest-leverage thing you can do is build an accurate picture of where damaging hail and wind actually fell. This is the part competitors skip, and it's why their mail is mostly waste.

What "damaging" actually means

Not all hail damages roofs. As a rough field rule, hail starts to bruise and fracture common asphalt shingles around one inch in diameter (about a quarter), and the probability and severity of damage climb steeply from there. At 1.25 inches (half-dollar) you're into reliable mat-fracturing territory on older or thinner shingles; at 1.75 inches (golf ball) and above, widespread functional damage is likely across most asphalt roofs regardless of age. Wind matters too: gusts in the 58 mph range are the severe-storm threshold, and shingle lift, creasing, and blow-offs scale up from there, especially on roofs with prior seal failure.

So your target is not "areas where it stormed." It's areas where hail likely reached roughly one inch or larger, or where wind gusts likely crossed into shingle-damaging range. That's a much smaller, much more specific footprint.

Where to get the storm data

You can assemble a credible damage map for free or near-free from public sources:

  • NOAA Storm Prediction Center (SPC) storm reports. Daily logs of hail and wind reports with sizes and locations, sourced from spotters and the public. Good for confirming a storm produced large hail and roughly where.
  • National Weather Service (NWS) local office pages and event summaries. After significant events, local NWS offices publish detailed write-ups, sometimes with hail-size maps and damage surveys.
  • NEXRAD radar archives (NCEI / NOAA). Radar-derived hail products such as MESH (Maximum Estimated Size of Hail) estimate hail size by location from radar reflectivity and storm structure. This is the closest thing to a true swath map you can get without ground truth, and it's far more precise than a storm report dot.
  • Local TV and emergency-management reports. Useful for corroboration and for spotting wind/tornado tracks.

Paid hail-mapping services (the ones storm restoration companies commonly subscribe to) take radar-derived estimates, calibrate them against ground reports, and hand you a clean polygon of estimated maximum hail size by address or parcel. If you chase storms for a living, one of these subscriptions usually pays for itself by killing wasted mail alone. But you can do a respectable version manually with SPC reports plus NEXRAD MESH.

Build the swath, not the circle

The deliverable from Step 1 is a damage polygon: an outline on a map of where hail likely reached your damage threshold (say, 1 inch or larger), ideally graded by severity (1.0 to 1.25 inch, 1.25 to 1.75 inch, 1.75 inch and up). Wind-driven events get a corridor along the track instead.

Draw it generously enough to catch the real edges (radar estimates have error bars), but resist the urge to fatten it into a blob. The whole point is to exclude the neighborhoods the storm missed. A good swath for a single supercell hail event might cover 8,000 to 25,000 homes, not the 150,000 inside a lazy ten-mile radius.

A quick worked example. Suppose a late-spring supercell tracks west-to-east across the north side of a metro. SPC shows three hail reports of 1.5 to 2.0 inches strung along a line. NEXRAD MESH shows a coherent swath about three miles wide and eighteen miles long crossing four ZIP codes. You overlay that on a parcel map and find roughly 14,000 single-family roofs inside the 1.25-inch-or-greater contour. That is your universe. Everything outside it is somebody else's wasted postage.

Reading radar-estimated hail honestly

Radar-derived hail size is an estimate, not a measurement, and it pays to understand the error so you don't over-trust a single number. MESH and similar products infer hail size from how high and how intensely reflectivity sits above the freezing level inside the storm; they don't see the stones hitting the ground. That means a few predictable failure modes you should account for when you draw the swath:

  • Overestimates in tall, cold storms that didn't actually drop large hail to the surface. A towering storm can light up the radar without depositing big stones at ground level.
  • Underestimates at the radar's range edges and in low-level beam blockage. Far from the radar site, the beam overshoots the lower storm and can miss what's happening near the ground.
  • Timing and motion smearing. Fast-moving cells can paint a swath that's offset from the true ground track if the product isn't motion-corrected.

The practical fix is triangulation. Cross-check the radar swath against SPC ground reports, NWS damage surveys, and local photos. Where radar and ground reports agree, you have a high-confidence core; mail it hard. Where radar says big hail but no ground report corroborates, treat it as a softer edge; you might still mail it, but weight it lower. This is the same discipline a good adjuster or hail-mapping analyst uses, and doing it by hand for one storm takes an afternoon, not a week.

Wind events need a different shape

Hail gets a swath; straight-line wind (and the rare tornado track) gets a corridor, and the damage signature is different. Wind damage concentrates on the windward and leeward edges of roofs, ridge caps, and any shingles with prior seal failure, and it's far more variable house-to-house than hail. After a derecho or a severe wind event, your target geography follows the reported gust corridor and the damage-survey path rather than a radar hail product. Pull NWS damage assessments, which often map wind speeds and tornado paths in detail, and build your corridor from those. Wind events also skew your messaging: lead with missing and lifted shingles and exposed underlayment rather than hidden hail bruising, because wind damage is more often visible from the ground and homeowners may already suspect a problem.

Step 2: Turn the Swath Into a Mailable List

Now you convert geography into addresses, and then you make those addresses smarter than your competition's.

Get the addresses inside the polygon

There are a few ways to pull addresses that fall inside your damage swath:

  1. County parcel / assessor data. Most counties publish parcel data with situs addresses, year built, and property characteristics, often free or cheap. You can clip parcels to your polygon in basic GIS (or hand a contractor the polygon and let them do it).
  2. Consumer/property data list brokers. They'll let you draw or upload a polygon, or select by carrier route, then filter by home characteristics. You pay per record but save the GIS labor.
  3. USPS EDDM (Every Door Direct Mail). EDDM mails to entire carrier routes without buying names. Cheap postage, no list cost, but it's a blunt instrument: carrier routes rarely match a hail swath cleanly, so you'll overspray into undamaged blocks. EDDM is best when your swath happens to align with a few tight carrier routes, or for budget operators who accept the overspray.

For true swath precision, parcel-clipped lists or a polygon-capable broker beat EDDM almost every time. EDDM wins on simplicity and cost when the geography cooperates.

Filter to roofs that are actually candidates

This is where you separate from the radius crowd. Inside the swath, prioritize the homes most likely to have a payable, sellable roof:

  • Owner-occupied single-family. Renters can't authorize the work; absentee owners are slower and harder to reach. Filter to owner-occupied where you can.
  • Roof age / home age. Older roofs fail at lower hail sizes and present more clearly as damaged. If parcel data carries year built (a proxy, since roofs get replaced), or if you have actual roof-age data, weight toward roofs in the back half of their service life. A 25- to 30-year-old asphalt roof in a 1.25-inch swath is a far stronger candidate than a five-year-old roof in the same swath.
  • Home value / roof complexity bands. Optional, but some operators tier mail by approximate roof size or home value to align the offer and the route economics.
  • Suppress recent customers and recent installs. Don't mail a roof you put on two years ago.

The output is a ranked, clipped list: every address sits inside the confirmed damage swath and clears your candidate filters. You're now mailing the intersection of "the storm hit it" and "the roof can fail," which is exactly the population that converts.

A note on list hygiene

Run the list through CASS/NCOA processing (standardize addresses, drop undeliverables, update movers) before you print. Undeliverable mail is pure waste, and your mail house can do this in minutes. Dedupe against your CRM so you're not mailing active jobs or recent estimates a stranger's offer.

Tiering the list so the spend tracks the opportunity

A flat list mailed at one price point leaves money on the table. Once you've clipped and filtered, split the list into tiers and assign each tier a format and a touch count based on how strong a candidate it is. A practical three-tier split:

Tier Who's in it Format Touches
A (premium) Older roofs in the high-severity core of the swath, higher-value or larger homes, owner-occupied Letter or handwritten-style upgrade, plus postcard 3
B (core) Mid-age roofs across the confirmed swath, owner-occupied single-family Oversized postcard 2 to 3
C (edge) Newer roofs, softer-confidence radar edges, lower-priority parcels Oversized postcard or EDDM saturation 1

The point is to spend more per piece where one closed job pays for a lot of envelopes, and spend the minimum where the odds are thinner. A 14,000-home swath might break into 2,000 Tier A, 8,000 Tier B, and 4,000 Tier C, and your budget allocates accordingly instead of treating every roof as equal. This tiering is exactly where per-roof ranking earns its keep, which is the next section.

What to do when parcel data is thin

Not every county hands you clean year-built and owner-occupancy fields, and some assessor data is years stale. When the data is thin, you have a few fallbacks. Subdivision build-out years are often discoverable from public records or even from the neighborhood's name and platting date, which lets you approximate roof age at the neighborhood level. Owner-occupancy can be inferred imperfectly by matching the mailing address to the situs address in tax records, since absentee owners usually have a different mailing address. And aerial-imagery-based roof-age estimation sidesteps the year-built problem entirely by looking at the roof itself rather than the house's age. The thinner your local parcel data, the more a per-roof data source is worth, because it replaces the field you're missing.

Step 3: Where Per-Roof Intelligence Changes the Math

Everything above gets you to a clipped, age-weighted list using public storm data and parcel records. That's already better than 90% of storm mail. The ceiling on this approach is the quality of two inputs: how precisely you know where the storm hit each roof, and how well you know which roofs were due anyway.

This is the gap per-roof data fills, and it's worth being precise about what it does and doesn't do.

Roof age as a range, per address. Parcel "year built" is a weak proxy because roofs get replaced mid-life. Aerial-imagery analysis can estimate a roof's age as a range (for example, "roughly 14 to 19 years") per address rather than relying on when the house was built. That lets you rank a swath by which roofs are aging out, rather than only by which houses are old. A range is not a birth certificate, and you should treat it as a probability signal, not a guarantee: some roofs in the "older" band were recently redone, and a few "newer" estimates will be off. Used as a ranking input across thousands of addresses, though, it sharpens the list considerably.

Storm physics modeled per roof. Rather than a single hail-size contour painted across a whole neighborhood, per-roof storm modeling estimates the exposure each individual roof likely took, accounting for the storm's track and intensity at that point. Two roofs on the same street can have meaningfully different exposure; a swath polygon alone can't see that.

This is the niche RoofPredict sits in: it ranks addresses by which roofs are due house-by-house, combining a roof-age range from aerial imagery with storm exposure modeled per roof, so the doors and mail routes go to the roofs a storm actually wore out plus the roofs aging out on their own. For a direct-mail operation, that means you can sort your swath list from "most likely a due, storm-worn roof" down to "probably fine," and spend your postage from the top down until the budget runs out. You mail the strongest candidates first instead of mailing alphabetically.

The honest limits matter, and you should say them out loud to your team so nobody oversells in the field. A modeled estimate is odds, not proof. It tells you a roof is a likely candidate worth knocking and inspecting; it does not tell you a specific roof is damaged, and it is never a substitute for an actual inspection or for what the insurer ultimately decides. The storm model raises the probability that a given address is worth your inspector's time. The roof-age range raises the probability that the roof is near end of life. Neither one writes a claim or promises an approval. What they do is concentrate your mail and your crews on the addresses where the math is in your favor, which is the entire game in storm restoration. Used that way, per-roof data turns a good swath list into a prioritized one, and a prioritized list is where direct-mail ROI quietly doubles.

Step 4: Choose the Mail Format

Format is a budget and credibility decision. Here's how the common options stack up for storm work.

Postcards (6x9 and 6x11)

The workhorse of storm mail. Cheap to print, high glance-read rate (no envelope to open), and the larger 6x9 and 6x11 sizes stand out in the stack and qualify for first-class or standard postage depending on volume. For a storm drop where speed and reach matter, an oversized postcard is usually the right default.

  • Pros: low cost per piece, fast turnaround, no open required, big visual real estate for a storm-specific headline and map.
  • Cons: easy to dismiss as junk if the design and message are generic; limited room for proof.

Letters in envelopes

Higher cost and lower glance-read rate, but a well-done letter reads as personal and serious. A hand-addressed or hand-stamped envelope dramatically lifts open rates and works well for higher-value targets (larger or steeper roofs, higher-value homes) where one extra closed job pays for a lot of envelopes.

  • Pros: feels personal, higher perceived legitimacy, room for a real letter and proof.
  • Cons: must be opened to work; higher cost per piece; slower to produce at volume.

EDDM saturation pieces

Large-format saturation mail by carrier route. Lowest postage, no list cost, but blunt targeting as discussed. Good for budget saturation of a swath that aligns with carrier routes; bad for surgical targeting.

Handwritten-style and dimensional mail

For a small list of premium targets, handwritten notes or dimensional mailers (something with bulk in the envelope) get opened at very high rates. Too expensive for mass storm drops, but a sharp tool for a short list of high-value roofs in a confirmed swath.

Practical default for most storm operations: an oversized postcard (6x9 or 6x11) for the main swath drop, with a letter or handwritten upgrade reserved for a top-tier sub-list of the highest-value, highest-probability roofs. Run both off the same prioritized list so the spend tracks the opportunity.

A rough cost-per-piece reference

Exact pricing depends on volume, market, and your mail house, but as ballpark ranges to budget against:

Format Typical all-in cost per piece Best use
EDDM saturation (large format) ~$0.30 to $0.45 Swath aligns with carrier routes; budget reach
Oversized postcard, targeted list ~$0.50 to $0.75 Main swath drop
Letter in envelope, targeted ~$0.85 to $1.50 Higher-value Tier A targets
Handwritten-style / dimensional ~$2.00 to $6.00+ Short list of premium roofs

All-in means print, postage, list cost, and a share of design amortized across the drop. The reason format choice matters so much is that it multiplies against your whole list size: a ten-cent difference per piece on a 10,000-piece drop is $1,000, which is a roof's worth of gross profit. Match the format to the tier, don't blanket the whole list at the most expensive option, and don't cheap out on your best candidates.

Step 5: Write Mail That Actually Pulls

The message has to do three jobs in the two seconds before it hits the trash: signal that it's about this storm and this neighborhood, establish that you're a real local roofer and not a fly-by-night, and make the next step feel low-risk and worth taking.

The anatomy of a storm postcard that works

Headline: specific to the storm and place. "Did the May 14 hail hit your Oakdale roof?" beats "Free Roof Inspection" every time. Naming the date and the neighborhood signals relevance and local presence. If you have a swath map, a small map graphic showing "the hail came through here" with the neighborhood marked is one of the strongest visual hooks in storm mail, because it answers the homeowner's first question ("did this affect me?") instantly.

Subhead: why roofs like theirs are at risk. One line connecting hail (or wind) to roof damage that often isn't visible from the ground: bruising, granule loss, fractured mat, lifted shingles. Homeowners frequently assume that if the roof isn't leaking, it's fine. Educate gently.

The offer: a no-pressure inspection. A free or no-cost inspection is the standard storm offer and it's legitimate, provided you describe it honestly. You are offering to document the roof's condition. Keep it simple and credible.

Trust signals. Local address and phone, years in business, licensing/insurance, manufacturer certifications, real photos of your crews and trucks, a handful of genuine reviews or a star rating. Storm chasers don't have local roots; show yours. A local phone number and a physical address do real work here.

A clear, single call to action. One action: call this number, or scan this code, or book online. Don't offer five ways to respond; offer one, made easy. A QR code to a simple booking page captures the homeowners who'd rather not call.

Urgency that's honest, not manufactured. There is real, legitimate time pressure after a storm: many insurance policies require timely reporting of damage, and the longer a compromised roof sits, the more secondary damage accrues. You can communicate "sooner is better" truthfully without inventing fake deadlines or scaring people.

A sample postcard front (use as a template, not verbatim)

Did the May 14 hail damage your roof in Oakdale Heights? Golf-ball-sized hail came through this neighborhood. Damage to asphalt shingles is often invisible from the ground but can shorten a roof's life by years.

[small swath map: storm track over Oakdale Heights]

We're [Company], roofing [City] homeowners since 2009. We'll document your roof's condition at no cost and show you exactly what we find, with photos.

Book your free roof check: [phone] | [QR to booking] Licensed & insured | [X] local reviews | [manufacturer] certified

Copy lines that lift response

  • Name the storm date and the specific neighborhood.
  • Show rather than tell: a map or a photo of hail-bruised shingles outperforms paragraphs.
  • Lead with the homeowner's question ("did this hit me?"), instead of your services.
  • One offer, one action.
  • Local proof over slogans.

The back of the postcard earns its keep

The front stops the homeowner; the back closes the small commitment of picking up the phone or scanning the code. Use the back for the work the front doesn't have room for: a short, plain-language explanation of why hail damage hides (granule loss and mat bruising that won't leak for months but shorten roof life), two or three real before/after photos or a single sharp shot of bruised shingles with a callout, your trust block (license number, insurance, certifications, an honest review count), and a tight restatement of the offer with the CTA repeated. Resist cramming. White space reads as legitimate; a wall of text reads as a scam. One clear paragraph, one photo strip, one trust block, one CTA.

Match the message to the segment

The same swath holds different homeowners, and the strongest operations vary the copy by tier. For the older-roof Tier A list, the aging angle does heavy lifting even apart from the storm: "Your roof was already near the end of its service life, and the May 14 hail likely accelerated that. A free inspection will show where it stands." For the core swath, the storm-and-place hook leads. For wind events, lead with visible damage. The booking page the QR code points to should echo the postcard, same storm date, same neighborhood, same offer, so the homeowner who scans doesn't land on a generic homepage and bounce. Message-match from mailbox to landing page is where a surprising amount of response leaks away when nobody's watching.

Step 6: Stay on the Right Side of the Lines

Storm restoration marketing has real legal and ethical guardrails, and crossing them in your mail can cost you far more than the campaign. Keep your copy clean on these points. This is general guidance, not legal advice; check your state's rules and run high-volume campaigns past counsel.

Don't promise free roofs or to pay deductibles. "We'll get you a free roof" and "we'll waive/eat your deductible" are the two most common ways roofers get into trouble. Many states explicitly prohibit a contractor from rebating, paying, or absorbing a homeowner's insurance deductible; it's treated as insurance fraud. Never put deductible-waiving language on mail, and train your reps never to say it.

Don't claim or imply you handle, adjust, or approve the insurance claim. The homeowner owns the claim; the insurer decides coverage. In many states, a contractor who negotiates or adjusts a claim on the homeowner's behalf is engaging in unlicensed public adjusting. Your lane is documenting the roof's condition and providing an estimate. Say that, and only that. Avoid "we handle the insurance" or "we deal with the adjuster for you" phrasing.

Don't present a forecast or a model as proof of damage. A storm model or hail map tells you a roof is likely worth inspecting; it is not evidence that a particular roof is damaged. Don't write "our data shows your roof is damaged." Write "your neighborhood was in the hail path; a free inspection will show whether your roof was affected." Odds, not proof.

Don't fabricate stats, urgency, or affiliations. No fake "FEMA-approved," no invented deadlines, no made-up damage percentages. The FTC and state consumer-protection laws police deceptive advertising, and a competitor or a regulator can come after obviously false claims.

Mind solicitation and contract-rescission rules. Some jurisdictions have specific storm/disaster solicitation rules, required contract disclosures, and cancellation-rights language for roofing contracts tied to insurance. Know your state's roofing contractor and home-solicitation statutes.

The through-line: your honest position is strong on its own. You document conditions and provide an estimate; the insurer decides coverage; the homeowner owns the claim and makes the call. Mail that respects that division of roles is both legal and more credible than the chaser stuff homeowners have learned to distrust.

Step 7: Time the Drops

Timing is the second-biggest lever after geography. Storm mail has a window, and the window is shorter than most contractors think.

The post-storm timeline

  • Days 0 to 3: Homeowners are dealing with immediate impacts (leaks, debris) and the most motivated are already calling roofers. Door-knockers are out. If you can get a mailer designed, printed, and dropped this fast, you're first in the box and you own the early share. Few contractors are organized enough to hit this window with mail, which is exactly why it's valuable.
  • Days 4 to 14: The sweet spot for most mail. Homeowners have moved past triage and into "should I get this looked at?" mode. The first wave of door-knockers has created awareness; your credible local mailer rides that awareness without the pushiness. This is where the bulk of your drop should land.
  • Days 15 to 30: Still workable, but saturation is rising and the early movers are gone. A second touch to non-responders fits here.
  • Day 30+: Diminishing returns for the storm angle specifically, but this is where the "aging roof" message (less storm-dependent) keeps producing, especially to the older-roof segment of your list.

Multi-touch sequencing

One postcard is a single shot. A sequence compounds. A simple, effective storm cadence:

  1. Touch 1 (days 2 to 7): Storm-specific postcard to the full prioritized swath list.
  2. Touch 2 (days 12 to 18): Second postcard or a letter to non-responders, with a slightly different angle (a photo of typical hail damage, a short testimonial, a gentle nudge on insurance reporting timeliness).
  3. Touch 3 (days 25 to 35): Final touch to non-responders, often shifting from "storm" to "is your roof near end of life?" for the older-roof tier.

Response climbs with touches up to a point; three is a sound default for storm work. Combine mail with door-knocking the same routes and the lift is bigger than either channel alone, because the homeowner sees your name in the mailbox and then on the doorstep.

How fast can you actually move?

The operators who win the early window have pre-built the machine before the storm: design templates ready to drop in a date and neighborhood, a mail house on standby with a known turnaround, a list pipeline that can produce a clipped swath list in a day, and a phone/booking process that can absorb the call volume. If you're assembling all of that from scratch after the storm, you'll land in week three with everyone else. Build the system in the off-season; pull the trigger when the storm hits.

Step 8: Track the Money

If you don't measure it, you'll repeat whatever you did last time regardless of whether it worked. Storm mail is measurable if you instrument it.

What to track

  • Pieces mailed and total spend (print + postage + list + design), per drop.
  • Responses (calls, form fills, QR scans, booked inspections), tied to the drop. Use a tracking phone number and a unique QR/landing URL per drop so you can attribute.
  • Inspections booked and completed.
  • Jobs sold and gross revenue.
  • Cost per response, cost per inspection, cost per sold job, and ROI/ROAS.

The core formulas

  • Response rate = responses / pieces mailed.
  • Cost per piece = total campaign cost / pieces mailed.
  • Cost per lead = total campaign cost / responses.
  • Cost per acquisition = total campaign cost / jobs sold.
  • ROI = (gross profit from jobs sold − campaign cost) / campaign cost.

A worked ROI example

Say you mail an oversized postcard to a clipped, prioritized swath of 10,000 homes. All-in cost is roughly $0.55 per piece (print, postage, list, design), so $5,500 total.

  • A generic radius blast might pull 0.3% response: 30 responses. If you book and inspect 20, sell 6 roofs at $4,000 gross profit each, that's $24,000 gross profit against $5,500 spend. ROI ≈ 3.4x. Not bad, but you sprayed a lot of dead streets.
  • A tightly targeted, prioritized swath drop with strong, storm-specific copy might pull 1.0% or better: 100 responses. Book and inspect 60, sell 18 roofs at $4,000 gross profit, that's $72,000 gross profit against the same $5,500 spend. ROI ≈ 12x.

Same postage, same printing, same crews. The difference is entirely in who got the mail and what it said. That spread, roughly 3x versus 12x, is the whole argument for doing the geography and the list work properly. (Numbers here are illustrative to show the mechanics; your real response and close rates will vary by market, storm, and crew. Track your own.)

Closing the loop for next time

Keep a simple campaign log: storm date, swath description, list size and filters, format, copy version, drop dates, and the resulting cost-per-sold-job. After two or three storms you'll have your own benchmarks, your own best-performing copy, and a clear read on which list filters move ROI. That log is worth more than any vendor's case study.

Attribution is harder than it looks

A few realities make storm-mail attribution messier than the clean formulas suggest, and knowing them keeps you from drawing the wrong conclusion. Storm restoration runs multi-touch by nature: a homeowner might get your postcard, see your geofenced ad, then book after a rep knocks, and all three channels will try to claim the sale. Resolve this by asking on the inbound call and at the inspection, "what made you reach out today?" and logging the answer, rather than trusting a single tracking number to tell the whole story. Phone tracking also undercounts, because some homeowners hold the postcard for weeks and call the main line, or look you up online instead of dialing the tracked number. The fix isn't perfect attribution; it's consistent attribution. Use the same tracking setup and the same intake question every storm, accept that your numbers undercount mail somewhat, and compare drops against each other rather than against an absolute ideal. Relative comparison across your own consistent method is what tells you which swath, which copy, and which tier paid.

A simple per-drop scorecard

Keep one row per drop in a spreadsheet with these columns, and the patterns surface fast:

Field Example
Storm date / event May 14 supercell, north metro
Swath / list filters 1.25in+ core, owner-occ, roof age 15+
Pieces / tier 8,000 Tier B postcards
Drop date(s) May 18, May 30
Copy version v3 (map + bruise photo)
Spend $4,400
Responses / inspections 88 / 54
Jobs sold / gross profit 16 / $64,000
Cost per sold job / ROI $275 / ~13.5x

Nothing fancy. The value is in the accumulation: three storms in, you can see that your map-plus-bruise-photo creative beats your stock template by a wide margin, that the age-15+ filter outperforms an unfiltered swath, and that your second touch is or isn't worth the postage.

A Full End-to-End Workflow Checklist

Here's the whole operation as a runnable checklist.

Before storm season (build the machine):

  • Build mail templates (postcard + letter) with editable date/neighborhood/map slots.
  • Line up a mail house and confirm fastest realistic turnaround.
  • Establish your list pipeline (parcel/GIS, broker, or per-roof data source) so you can produce a clipped swath list in 24 hours.
  • Set up tracking numbers and a booking page/QR you can spin up per drop.
  • Pre-write copy variants and have them reviewed for legal compliance.

When a storm hits (read the storm):

  • Pull SPC reports and NWS summaries; confirm hail reached ~1 inch+ or damaging wind occurred.
  • Build the damage polygon from NEXRAD MESH / hail-map data, graded by severity.
  • Sanity-check against ground reports and local news.

Build the list (turn swath into addresses):

  • Clip parcels/addresses to the polygon.
  • Filter to owner-occupied single-family.
  • Rank by roof age / storm exposure (per-roof data here if you have it); weight older, harder-hit roofs to the top.
  • Suppress recent customers and active jobs; run CASS/NCOA hygiene.

Produce and drop (mail it):

  • Drop in the date and neighborhood; add the swath map graphic.
  • Confirm copy is storm-specific, locally credible, single-CTA, and compliant.
  • Touch 1 within days 2 to 7; schedule touches 2 and 3 to non-responders.
  • Pair mail routes with door-knocking where you have crews.

Measure and learn (track the money):

  • Attribute responses by tracking number / unique URL.
  • Calculate response rate, cost per lead, cost per sold job, ROI per drop.
  • Log the campaign; compare against prior storms; adjust filters and copy.

Common Mistakes Pros Still Make

Even experienced storm crews leave money on the table here. The recurring ones:

Mailing the radius out of habit. It's easy and the broker makes it frictionless. It's also the single biggest source of wasted spend. Draw the swath.

Ignoring roof age inside the swath. Hitting a swath full of three-year-old roofs converts poorly. Age-weight the list.

Slow execution. A perfect mailer that lands in week four loses to a good-enough mailer that lands in week one. Speed beats polish in storm work.

One-and-done drops. Single touches underperform sequences. Budget for two to three.

Generic creative. "Free inspection" on a stock template is invisible. Name the storm, name the street, show the map.

Compliance shortcuts in copy. Deductible and "we handle your claim" language can sink the whole operation. Keep the mail clean.

No measurement. Without tracking numbers and a campaign log, you can't tell a 3x drop from a 12x drop, so you can't improve. Instrument every drop.

Overspraying with EDDM when the swath doesn't fit the routes. EDDM is cheap per piece but expensive per useful piece if half the carrier route missed the hail. Match the tool to the geography.

How This Fits the Rest of Your Storm Playbook

Direct mail is one channel, and it's strongest when it's not alone. The same prioritized swath list that drives your mail should drive your door-knocking routes, your targeted digital ads (geofenced to the swath), and your call-down lists. When a homeowner sees your postcard, then a geofenced ad, then a rep at the door, all referencing the same storm and neighborhood, your credibility compounds. The mail isn't a standalone gamble; it's the opening move in a coordinated push against a well-defined target area.

The winners in storm restoration aren't the ones who mail the most. They're the ones who mail the right homes first with a credible, specific message, and who can prove which drops paid. Get the geography right, age- and exposure-rank the list, move fast, keep the copy honest and local, and track the math. Do that and direct mail stops being a coin flip and becomes one of the most reliable parts of your storm operation.

FAQ

How big does hail have to be to damage a roof and justify mailing an area?

As a field rule, asphalt shingles start showing functional damage (bruising, granule loss, mat fracture) around one inch in diameter, roughly quarter-sized, with severity climbing steeply above that. At 1.25 inches and larger, damage to older or thinner shingles becomes likely; at golf-ball size (1.75 inches) and up, widespread damage across most asphalt roofs is common. Target areas where hail likely reached about one inch or larger, or where wind gusts crossed roughly 58 mph, rather than mailing everywhere it merely stormed.

Where can I get the storm data to map where hail actually fell?

Free public sources include the NOAA Storm Prediction Center (daily hail and wind reports), National Weather Service local event summaries and damage surveys, and NEXRAD radar archives, which include radar-derived hail-size estimates such as MESH. Paid hail-mapping services calibrate radar against ground reports and hand you a clean estimated-hail-size polygon by address, which usually pays for itself by killing wasted mail if you chase storms regularly.

Should I use EDDM or a targeted mailing list for storm restoration?

EDDM (Every Door Direct Mail) is cheapest per piece with no list cost, but it mails entire carrier routes, which rarely match a hail swath cleanly, so you overspray undamaged blocks. A parcel-clipped or broker-built list lets you mail only addresses inside the damage swath and filter by roof age and owner-occupancy. Use EDDM when your swath happens to align with a few tight carrier routes or budget is tight; use a targeted list for surgical precision, which almost always wins on ROI.

How soon after a storm should I send direct mail?

The strongest window is days 2 to 14. Days 0 to 3 put you first in the mailbox if you can move that fast, which few contractors can. Days 4 to 14 are the sweet spot, when homeowners shift from triage to deciding whether to get the roof looked at. After 30 days the storm angle fades, though an aging-roof message keeps producing for older roofs. Speed matters: a good mailer in week one beats a perfect one in week four.

What should a storm-damage roofing postcard actually say?

Name the storm date and the specific neighborhood in the headline (for example, 'Did the May 14 hail damage your Oakdale roof?'). Add a subhead explaining that hail damage is often invisible from the ground, a small swath map showing the storm's path, honest trust signals (local address, phone, years in business, licensing, reviews), and one clear call to action such as a phone number or a QR code to book a free inspection. Specific and local beats a generic 'Free Inspection' template every time.

What can I legally NOT say in storm restoration direct mail?

Avoid promising a 'free roof,' offering to waive or pay the homeowner's deductible (prohibited in many states and treated as insurance fraud), claiming you handle, adjust, or approve the insurance claim (which can be unlicensed public adjusting), and presenting a hail map or model as proof a specific roof is damaged. Don't fabricate stats, deadlines, or affiliations. Your honest lane: you document the roof's condition and provide an estimate; the insurer decides coverage; the homeowner owns the claim. This is general guidance, not legal advice, so check your state's rules.

How do I know which roofs inside the swath are the best targets?

Inside a confirmed damage swath, prioritize owner-occupied single-family homes and weight toward older roofs, since a 25-year-old roof fails at lower hail sizes than a five-year-old impact-rated one. Parcel 'year built' is a weak proxy because roofs get replaced, so per-roof roof-age estimates (a range, from aerial imagery) and storm exposure modeled per roof let you rank addresses from most to least likely to be a due, storm-worn roof, and mail from the top down until budget runs out.

Does per-roof data like RoofPredict tell me a specific roof is damaged?

No. RoofPredict ranks addresses by which roofs are due house-by-house, combining a roof-age range from aerial imagery with storm exposure modeled per roof. That is odds, not proof: it raises the probability that a given address is worth your inspector's time and that the roof is near end of life. It does not confirm a specific roof is damaged, does not replace an actual inspection, and does not decide what an insurer will cover. Used as a ranking input across thousands of addresses, it concentrates your mail and crews on the highest-probability candidates.

What response rate should I expect from storm restoration direct mail?

It varies widely by market, storm, list quality, and copy. Generic radius blasts often land well under half a percent, while a tightly targeted, prioritized swath drop with storm-specific creative can do several times that, sometimes one percent or more. Rather than chasing a benchmark, instrument every drop with a tracking number and unique URL, calculate your own cost per sold job and ROI, and use a campaign log to improve over the next few storms.

How many times should I mail the same storm-damaged area?

One postcard is a single shot; a sequence compounds. A sound storm cadence is three touches: a storm-specific postcard within days 2 to 7, a second touch to non-responders around days 12 to 18 with a different angle, and a final touch around days 25 to 35 that can shift to an aging-roof message for older roofs. Pairing the same routes with door-knocking lifts results beyond what either channel does alone, since the homeowner sees your name in the mailbox and at the door.

The Roofline by RoofPredict

Stay Ahead of Roofing Market Changes

Join The Roofline by RoofPredict for weekly roofing intelligence: material price signals, storm demand, insurance and regulatory updates, sales tactics, and local contractor opportunities.

By signing up, you agree to receive The Roofline by RoofPredict. Unsubscribe anytime.

Sources

  1. Storm Prediction Center Storm Reportsspc.noaa.gov
  2. NWS Severe Weather Definitions (Severe Thunderstorm Criteria)weather.gov
  3. NOAA National Centers for Environmental Information (NEXRAD Radar Data)ncei.noaa.gov
  4. NSSL Severe Weather 101: Hailnssl.noaa.gov
  5. Insurance Institute for Business & Home Safety (IBHS): Hailibhs.org
  6. USPS Every Door Direct Mail (EDDM)usps.com
  7. USPS Mailpiece Design and Move Update / CASS Certificationusps.com
  8. FTC Advertising and Marketing Basics for Businessesftc.gov
  9. NRCA (National Roofing Contractors Association)nrca.net
  10. Texas Department of Insurance: Roof Damage and Insurancetdi.texas.gov
  11. National Association of Insurance Commissioners (NAIC): Catastrophe and Disaster Resourcesnaic.org
  12. U.S. Census Bureau: American Housing Surveycensus.gov
  13. OSHA Fall Protection in Construction (Roofing)osha.gov
  14. RoofPredictroofpredict.com

Related Articles