Google Ads for San Diego roofing companies.

A leak click and a replacement click are worth different amounts and behave differently, so I run them as separate campaigns. I judge each by the calls and estimate requests it produces, and you see the search terms you paid for.

No long contracts. You talk to Simon.

Map pack: emergency roof leak repair El Cajon

Simplified map of San Diego County A B C
Illustrative
  • 17 years in SEO
  • Engineering degrees
  • 85% of clients in San Diego County
  • No long contracts

Where roofing ad budgets go missing

  • Repair and replacement share one campaign and one budget
  • Ads show for roofing jobs and DIY searches
  • The budget is spent before the rain arrives

How I test roofing ads

Scientific SEO

  1. 1 Measure I count calls and estimate requests per campaign, with repair apart from replacement.
  2. 2 Change one thing I change one thing, such as a new landing page for leak repair.
  3. 3 Measure again You see the same counts about two weeks later, or longer if clicks were few.
  4. 4 Keep what works I keep running the version that produced more booked work per dollar.

What the work covers

How search ads differ for roofers

With Google Ads, a roofing company pays to appear above the organic results for searches such as “roof leak repair near me” and “roof replacement,” and those two searches should almost never share a campaign. Rain, and the gap in value between a repair and a replacement, are what set roofing apart in Google Ads management.

Leak repair ads are built for a phone call

The person searching has water coming in and will call the first credible result. So the ad says you repair leaks, names the area and shows a number they can tap, and the page behind it repeats that with nothing to read first.

These campaigns do their work in rain weeks. Most of the county’s rain falls in the cooler months, and I plan the budget around that: low or paused in a dry stretch, raised when storms are forecast. I also schedule the ads for the hours someone will pick up. If nobody answers after 6pm, the ads stop at 6pm.

Replacement ads are built for a slower decision

The search terms change here (“roof replacement cost,” “tile roof underlayment replacement,” “new roof estimate”), because this homeowner is weeks from choosing and will collect several bids. The landing page has more to do: photos of finished roofs in nearby cities, what your estimate includes, how the job runs, your license number. The goal is an estimate request. One replacement is worth far more than one repair, so it can justify a higher cost per lead, but only when I can see which leads became signed jobs. That takes call tracking and your own record of which estimates closed. No budget comes with a promised number of calls, and the first weeks of data show the real cost per call in your cities.

Searches a roofer shouldn’t pay for

Roofing keywords attract clicks from people who will never hire you, and I block those with negative keywords. The usual ones are people looking for roofing jobs, supply yards, do-it-yourself instructions and cities outside your area. I read the search terms report for your search ads, which lists what people typed before clicking, and add exclusions from it.

Location settings matter as well. I target people who are physically in your service area, because the broader setting can show ads to people elsewhere who only showed interest in San Diego.

Local Services Ads: check before planning

Local Services Ads (LSA) are pay-per-lead listings that appear at the very top of the results for some trades. Availability depends on the trade and the area, and the list changes, so I check Google’s own sign-up for your category and zip codes before building a plan around them. If roofing is offered where you work, they are worth testing beside search ads with the same call counting. If it isn’t, search ads carry the paid side.

Where ads sit next to SEO

Ads cover the cities SEO hasn’t reached yet, and they stop the day the budget does.

A roofer often ranks well near the yard and poorly across the county. A company based in Santee might hold the map pack for leak repair in East County and be invisible in Chula Vista. Ads can cover Chula Vista in rain weeks while the roofing SEO work continues, and the rank grid shows when a city no longer needs them.

What a result looks like

Every engagement starts and ends with the same measurement.

Sample layout. Not a real client.

Trade, city: the problem in one line

Starting point
Rank grid before any change
What changed
The one or two changes that moved it
Result
Rank grid after, and the change in calls

Roofing ads across San Diego County

Should a roofer run Google Ads all year or only when it rains?

It depends on the campaign. Leak repair ads do most of their work in rain weeks, and most of the county's rain falls in the cooler months, so they can be paused or cut back in long dry stretches and raised when storms are forecast. Replacement ads make sense in the dry months, when homeowners plan the work and crews can schedule it. I set separate budgets for the two so one doesn't drain the other.

Are roofing clicks expensive?

They can be, and I won't quote a figure because it varies by search, city and week. Clicks tend to cost more in rain weeks, when many roofers raise their bids at once. Judge them by the cost per booked job. I report cost per call by campaign, and cost per job wherever you can tell me which calls turned into signed work.

Can I advertise on tile roof searches specifically?

Searches that mention tile, underlayment or another roof type can go in their own ad group, with an ad and a landing page that speak to that job. There are fewer of them than general roofing searches, but the searcher has told you what they have. A page with tile job photos from nearby cities fits that click better than a general page.

Should my roofing ads mention insurance claims?

Not as a promise. An ad implying insurance will pay sets an expectation you don't control, and reads like a door-to-door pitch. Saying you inspect and document storm damage is fine. Coverage is between the homeowner and their insurer.

Find out where ads would fill your roofing gaps.

Before any ad spend, I measure where you already rank for repair and replacement in the cities you give me, so ads go only where they are needed.

  • A rank grid showing where you appear, and where you don't
  • The technical and Google Business Profile issues that matter most
  • What I'd change first, in plain English

Prefer to talk? Call (619) 675-7678, 9am to 6pm.

Step 1 of 2: your business

Your business

Where to reach you

No long contracts. You talk to Simon.

Call Get My SEO Audit