Bought demand in the DMV splits three ways before you write a single ad
Account structure should mirror your licensing and dispatch reality, because the auction does not care that the metro feels like one city.
Start with a plain question: which jurisdictions can you legally and practically work tomorrow. The District, Montgomery County, Prince George's, Arlington, Alexandria, Fairfax County. Anything you cannot serve does not get a campaign, a keyword or a dollar.
Once that list is honest, campaigns follow it. One structure that works is a campaign per jurisdiction group, each with its own budget, its own landing page and its own phone number. Costs and close rates differ enough across the river that blending them hides the truth.
Separate budgets also let you throttle independently. A crew tied up in Silver Spring for three weeks is a reason to pull Maryland spend and push Northern Virginia, and that is a two minute change in a structured account and an impossible one in a single blended campaign.
Resist the temptation to let automated bidding smooth across everything. Automation optimizes toward whatever you feed it, and if the conversion signal is form fills from a county you do not serve, it will cheerfully buy you more.
Draw campaigns on jurisdiction lines, not a circle around the yard
A radius from Falls Church or Silver Spring spends real money in places you would decline on the phone.
Geographic targeting here should be built from named locations: counties, independent cities, District neighborhoods or ZIP groups. Radius targeting is a blunt tool in a metro where a fifteen mile circle covers two states and a federal district.
Set targeting to people physically in or regularly in your locations, not people merely showing interest. A national audience searches for Washington constantly for reasons that have nothing to do with a roof, and interest-based targeting quietly bills you for it.
Add explicit exclusions for the jurisdictions you do not serve. Excluding is more reliable than assuming the targeting will hold, and it stops a broad match keyword from wandering out past the Beltway.
Then check the location report monthly, not annually. Look at where clicks actually came from rather than where you intended them to come from. Drift is normal and correcting it is usually the single cheapest improvement available in a roofing account.
The negative keyword list starts with federal contract bids and snow removal crews
In this metro the wasted clicks have a local accent, and a generic negative list will not catch them.
Roofing accounts here pull traffic from people looking for federal and institutional contracting opportunities, subcontractor work, roofing jobs and apprenticeships, and vendors chasing procurement notices. None of them will ever book a residential tear-off.
Build the list in layers. Employment terms first: jobs, hiring, salary, apprentice, union. Then procurement language. Then adjacent trades you do not sell: gutter cleaning, chimney sweep, solar panel installation, pressure washing, snow plowing.
Winter adds its own noise. Roof snow removal, ice dam steaming and emergency tarping generate calls that are cheap to buy and expensive to serve if you are not equipped for them. Decide deliberately whether those are a service line or a negative, then act on the decision.
Run the search terms report weekly during any active season. Negatives are not a setup task you finish. In a metro this varied, the list should keep growing for as long as the account runs.
The week after a freeze is a different auction than the week before
Weather moves demand and competition together, so flat monthly pacing overpays in quiet weeks and runs out in the week that mattered.
Leak volume here spikes around freeze and thaw cycles and after heavy snow. Everyone in the trade sees it at once, budgets get pushed, and click costs move. A fixed daily budget guarantees you go dark right when demand peaks.
Hold a reserve. Plan spend so a meaningful share of the monthly budget can be released within a day when the forecast turns, and set the account so an emergency or repair campaign can absorb it without touching the replacement campaigns.
Match pacing to crew capacity as well. Buying replacement demand while your calendar is full four weeks out just fills a follow-up list, and buying repair demand with no repair crew produces angry voicemails.
Time of day matters more than most roofers think. If the phone is answered until six and a leak call goes to voicemail at seven, either extend the answering window or reduce evening bids. Paying full price for a call nobody picks up is the most common waste in these accounts.
A flat roof in Shaw and a shingle roof in Rockville need separate ads and separate landing pages
Keyword, ad and page have to agree on what the roof is made of, or the click converts into a wasted drive.
Split at the covering level. Low slope and membrane in one place, asphalt shingle in another, slate and metal in a third if you sell them. Each gets ad copy in the customer's vocabulary and a page showing that kind of roof.
Bid on failure and trigger words, not only on the trade name. Flat roof leak, roof leak after snow, missing shingles, ceiling stain, parapet repair. Someone typing a symptom is closer to booking than someone typing the category.
Say the jurisdiction in the ad. A line naming the counties and cities you cover pre-qualifies the click, and it costs nothing but characters.
Landing pages should carry the same split. Sending a flat roof searcher to a homepage full of suburban shingle photography wastes the click you just bought and tells them, accurately, that you did not have them in mind.
Report booked work per jurisdiction, because the District costs more to reach than Fairfax
Cost per lead is a comfortable number that hides everything you actually need to know.
Get conversion tracking past the form. Import booked jobs from the CRM so the account knows which clicks became a survey and which became a contract. Without that, optimization is aiming at whichever channel produces the most cheap noise.
Then split the reporting by jurisdiction. A District job carries access, parking and staging costs that a Fairfax County driveway job does not, and a blended cost per booked job averages those into meaninglessness.
Track call quality, not just call count. Recorded calls and a simple outcome tag on each one will tell you within a fortnight whether an expensive keyword is producing surveys or people asking whether you clean gutters.
Nobody can promise a lead volume or a cost figure in advance. What can be promised is that the account will be structured so the numbers you get are attributable to a jurisdiction, a covering and a crew, which is the only way a spend decision gets made with any confidence.
Questions we actually get
- Should we run one campaign for the whole metro to give the algorithm more data?
- Not here. Consolidation helps when the underlying jobs are similar, and jobs across three jurisdictions are not. You lose the ability to pull budget out of a county your crews cannot reach, and the bidding averages away real differences in cost to serve. Keep jurisdiction splits and consolidate within them if volume is thin.
- Do Local Services Ads make sense alongside search ads?
- Often yes, but the service area and screening setup has to reflect where you are genuinely licensed, and that varies across the District, Maryland and Virginia. Confirm requirements with each jurisdiction. Run both for a period, tag the source on every booked job, and let the booked work decide the split rather than the lead counts.
- What should we bid on during winter?
- Depends on whether you are equipped to sell repair and emergency response. If you are, freeze and thaw symptom terms are the highest intent traffic in the calendar. If you are not, negative them out and keep spend on replacement and inspection terms, because buying a leak call you cannot service damages more than it earns.
- How much budget do we need to start?
- There is no honest universal number, and any figure quoted before looking at your coverage, your covering mix and your crew capacity is invented. The useful question is the reverse: how many booked jobs a month do the crews need, and what is the account currently paying per booked job. Start where the math has a chance and scale from evidence.
- Can you guarantee a cost per lead?
- No, and neither can anyone else. Auction prices move with weather, competitors and season, particularly around freeze events in this metro. What is controllable is structure, exclusions, pacing and measurement, and those are the levers that decide whether your spend produces surveys or noise.