Atlanta, GA

    Buying roofing demand your dispatcher can actually reach

    Paid search fails Atlanta roofers in a specific and predictable way. Somebody draws a radius, spends real money reaching people forty-five minutes away in traffic, books what they can, cancels the rest, and concludes the channel does not work. The channel works. The geography was wrong. In a metro where drive time and not distance decides what a crew can serve, the account has to be built around the roads first and the keywords second. That means separate campaigns for separate dispatch zones, negatives written before storm season rather than during it, budget paced to crew hours, and one number reported at the end: what it cost to win a job you actually installed.

    Thirty miles at ten in the morning is not thirty miles at five

    A mileage radius is a bid on a circle that does not exist, because your crew's real reach changes by the hour.

    Take your yard and drive out in four directions at seven in the morning, then again at four thirty. The difference is not small. A job you can reach comfortably in the morning becomes a truck stuck on the Perimeter in the afternoon and an estimator who sees two roofs instead of four.

    Build the targeting from that, not from a slider. Draw the zones your crews genuinely run, name them the way your dispatcher names them, and give each one its own campaign so you can see its own numbers. Zones and not one blob.

    Exclusions matter as much as inclusions. If you do not go past a certain exit, exclude past that exit rather than hoping bid modifiers sort it out. Every impression outside your real reach costs money and, worse, produces inquiries someone has to decline.

    Set location targeting to people in your locations rather than people interested in them. Otherwise you will pay for somebody in another state researching a roof on a rental, and you will pay it repeatedly.

    Inside the Perimeter and outside it are two different auctions

    The same keyword costs different money, converts at a different rate and produces a different job depending on which side of I-285 the click comes from.

    Intown, the housing is older and smaller, more of the work is repair or partial, and access is tighter. Out past the Perimeter in Cobb, Gwinnett and north Fulton, more of the demand is full replacement on subdivision homes of similar age, and the average ticket sits differently.

    Mixing them in one campaign averages away everything useful. You cannot see that one zone is buying jobs at a sensible cost while another is quietly eating the month, because the report shows you a blended number that describes neither.

    Split at least along that line, and split further by county where volume supports it. Give each its own budget so a busy week in one zone cannot drain the other. Write ad copy that names the area, because a homeowner in Roswell reads the word Roswell and skips past the word Atlanta.

    Watch the split for a few weeks before you act on it. Small daily budgets produce noisy numbers, and reacting to three conversions is how accounts get broken.

    Bid the storm cycle, and write the negatives before the wind arrives

    Storm weeks are the most profitable and most wasteful periods in a roofing account, and which one you get is decided in advance.

    After a wind or hail event, search volume spikes and so does competition, including out-of-town crews buying the same words. Costs rise for a few days. Your budget will empty by noon unless somebody has set the daily caps and the schedule ahead of time.

    Have the storm structure sitting paused in the account: separate campaigns, higher caps, ad copy about response and inspection rather than about financing, and landing pages that already exist. Turning something on is a five minute job. Building it during the event is not.

    Negatives are the difference between a good storm week and a burned one. Terms that pull do-it-yourself intent, employment searches, supply and material shopping, tarps for sale, and pure information seeking all show up heavily in these weeks. Build the list now, from your own search terms report, and review it weekly while spend is elevated.

    Be careful with claim language in the ads themselves. Say you will inspect and document. Do not say what an insurer will decide, and keep any specific advice on that in a conversation rather than in a headline.

    A real winter buys you cheap months, if you have something to sell in them

    Two seasons instead of one long one means the auction gets quieter twice a year, and quiet auctions are where disciplined accounts make their margin.

    Competitors here tend to spend hard in spring and after storms, then pull back. Costs soften in the slower stretches. That is only useful if you have an offer that fits the season.

    Cold-weather demand is real but different: leaks that show up under freeze and thaw, ice sitting on shaded north slopes, gutter and valley problems, small repairs an owner wants handled before it gets worse. Point the ads at that rather than at replacement, and send the click to a repair page instead of a quote form built for a full re-roof.

    Slow months are also the right time to book inspections for work that will be installed later. An inspection now and a contract for March is a perfectly good outcome, and it costs less to buy in January.

    Pace the spend to crew hours rather than to an even monthly line. If the calendar is full three weeks out, lowering budget for a week is not a failure. Buying jobs you cannot install for two months is how a good lead becomes a cancellation.

    Ads that start at six in the morning need somebody answering at six

    Paid demand is perishable in this trade, and the fastest way to waste a budget is to buy clicks nobody picks up.

    A homeowner with water coming through a ceiling is calling three companies in ten minutes. Second callback loses most of the time. Ad schedule and phone coverage have to match, and if they do not, the schedule should shrink to the hours you actually answer.

    Turn on call reporting and listen to the recordings. Not for scoring people, for finding the moment the call goes wrong. Usually it is the same two or three things: no clear next step, a promise about timing that nobody checked, or a question about the address that should have come earlier.

    Count a call as a conversion only past a real duration, and count form fills separately. Otherwise the platform optimizes toward whatever produces the most rings, which is not the same as the most roofs.

    If you take calls after hours, say so in the ad. If you do not, do not imply it. An unanswered promise is worse than a narrower one.

    A signed job in Alpharetta and one in East Point do not cost the same to win

    Report the cost of a job you installed, split by zone, and most decisions in the account make themselves.

    Cost per lead is a comfortable number and a misleading one. It treats a repair inquiry and a full replacement as the same event, and it treats a booked inspection in a zone you serve easily the same as one across the metro at rush hour.

    Push the measurement further down the funnel. Inquiry, then booked inspection, then inspection completed, then contract signed, then job installed. Connect the last step back to the campaign and the zone. Roofing sales cycles run long enough that the month of the click and the month of the contract are often different, so the reporting has to look back rather than only at the current window.

    Once the numbers are split by zone, the decisions are obvious. A zone that buys installed work at a sensible cost gets more budget. A zone that produces cheap leads and few contracts gets cut, whatever its cost per lead looks like.

    One caution. Do not restructure on a handful of conversions. Roofing volume in a single metro is thin enough that a month of noise can look like a trend, and rebuilding an account every four weeks guarantees you never learn anything from it.

    Questions we actually get

    What should we budget to start?
    There is no honest universal figure, and the right answer depends on how many dispatch zones you want live and what a job is worth to you. What we can say about structure: each zone needs enough daily budget to produce readable data, so it is better to run two zones properly than six on scraps. Start with the geography you serve best, prove the cost of an installed job there, and expand from a number you trust rather than from a hope.
    Should we run Local Services Ads as well as search ads?
    They are different products serving different intent and they can run together, but they compete for the same budget and the same phone. Local Services requires verification and screening, and the lead quality and dispute process behave differently from search. Decide deliberately rather than defaulting to both. If your team can only handle a set number of calls a day well, adding a second source of calls without adding coverage will lower your close rate, not raise it.
    How do we stop paying for people outside our service area?
    Three things together. Set location targeting to presence rather than interest, so you are not paying for out-of-state research on a rental. Use exclusions for the areas past your real reach instead of relying on bid adjustments. And build the zones from actual drive time at the hours your crews travel, not from a mileage radius. Then check the geographic report weekly for the first month, because the map almost always shows spend somewhere you did not intend.
    Is it worth advertising during storm weeks when costs jump?
    Usually yes, if the account is prepared in advance and the phones are covered. Storm periods bring both the highest intent and the most waste, and the deciding factor is whether the negatives, the caps and the landing pages already exist. If the structure has to be built while the event is happening, you will spend the first two days paying to learn what your negative list should have been.
    How quickly should we change the account when numbers look bad?
    Slower than instinct says. A single metro in one trade does not produce enough weekly conversions to make small differences meaningful, and accounts that get rebuilt every month never accumulate learning. Fix obvious waste immediately: irrelevant search terms, geography outside your reach, ads pointing at broken pages. Leave structural decisions until you have enough installed jobs behind the number to believe it.

    What is different here

    Florida has tightened what a roofing contractor may say to a homeowner about an insurance claim, and the rules around soliciting claim work carry real consequences for the client rather than the agency. Design wind speed and product approval also vary by county, so a re-roof specification is a local document. Marketing built around storm claims needs legal review before it runs.

    Written by KC Thompson, Morgul Marketing.

    Tell us the number you are trying to move.

    We will say which of these disciplines would move it, and which would not.

    Book a Strategy Call