LSA economics for roofers
Local Services Ads bill per lead rather than per click, which changes the arithmetic in ways that catch roofers out.
- Per-lead billing charges for the enquiry whether or not it becomes work.
- Your qualification rate decides whether the channel works, and most roofers do not know theirs.
- Storm cycles move demand, competition and per-lead cost together.
- Dispute unqualified leads. The process exists and is under-used.
- Paid and unpaid answer different questions about time, so we will not sell you one as a cure for the other.
Here is the short version. The number that governs this channel is one a roofing company can work out from its own books in an afternoon, and most have never worked it out. Everything below builds to that sum, then sets the channel beside the ones we run.
What are you actually buying with Local Services Ads?
Placement above the map pack on high-intent searches, billed per lead. Eligibility involves screening on licensing and insurance, and participating businesses can display a badge. That is the product. Everything after the phone rings is still your job, and the billing does not wait for you to do it.
You are buying position and contact volume. You are not buying qualification.
Google decides who is eligible and where the unit sits. We have no lever on either, and I would be careful with anyone who tells you they do. What we can look at with you is what happens to a contact once it lands, which is the part your own systems own.
Where does per-lead billing bite a roofing company?
A lead is charged whether or not it becomes work. Wrong-area enquiries, price shoppers, and jobs outside what you do all bill the same as a booked replacement. The channel does not sort your pipeline for you, so the cost of a bad month lands on the card before you have seen a roof.
So the number that decides whether LSA works for you is your qualification rate, and most roofers do not know theirs before they start.
I have sat with owners who could quote their close rate to the point and had no idea what share of billed enquiries were even inside their service area. That is the gap this article is about. It is a bookkeeping gap, and you can close it yourself.
What sum should a roofer run before the first month?
Take your average job value, your close rate on inbound enquiries, and your qualification rate. Multiply. That is what a lead is worth to you. Three numbers, one multiplication, and every roofer I have asked can find two of them inside ten minutes. The third is the one that decides the channel.
| Input | Where you get it | What it does to the answer |
|---|---|---|
| Average job value | Your closed roofing invoices over the last twelve months | Sets the ceiling on what any single lead can be worth |
| Close rate on inbound enquiries | Your CRM or your job book, counted against enquiries and not against quotes issued | Scales that ceiling down to the share you win |
| Qualification rate | The share of billed leads that were in area, in scope and reachable | The input most roofing companies have never counted |
Compare it to the per-lead cost in your market. If the gap is thin before you have accounted for your own time on the phone, it is thinner than it looks.
Do this before the first month, not after it.
Count the phone time honestly while you are there. An owner qualifying enquiries at seven in the evening is a real cost that never shows on a statement, and on a thin margin it is the cost that flips the answer.
Get my free Visibility CheckBook a call with Youssef
What makes roofing different from other trades here?
Storm cycles spike demand and competition together, and per-lead costs move with them. Insurance-restoration enquiries take longer to qualify and longer to close, so the same lead cost buys a slower return. Seasonality means a month tells you less than a quarter.
Read the channel on a rolling quarter, then. A single storm week can make a bad account look healthy and a quiet fortnight can make a sound one look broken, and both readings send an owner into a decision they later reverse.
The restoration side deserves its own row in your books. If insurance work and retail replacement sit in one bucket, the blended close rate hides which of the two is paying for the leads.
Should a roofer dispute unqualified leads?
Dispute unqualified leads. The process exists and most contractors do not use it. We treat it as a standing weekly job with a named owner, because an undisputed bad lead is money you decided to keep paying. Put it in someone's calendar, not in your good intentions.
Give the job to whoever answers the phone, because they already know which enquiries were out of area or out of scope. A week later nobody remembers, and the note you needed was never written down.
How does LSA sit against organic, map and AI visibility?
LSA buys volume now. Organic, map and AI visibility compound and take quarters. They are complements, and neither improves the other. What they share is the same buyer, arriving at a different moment, so the honest comparison is about time and control, not about which channel is better.
| Channel | What the position is | How it is billed | Source |
|---|---|---|---|
| Google Local Services Ads | Placement above the map pack on high-intent searches | Per lead | Google, Local Services Ads product design |
| Google Ads search campaigns | Placement in the paid results on the search page | Per click | Google, Google Ads product design |
| Organic, map pack and AI answers | An unpaid ranked link, an unpaid map position, or an unpaid mention inside an answer | The platform bills nothing for the position | Mindflow observation, not a published source |
What we read from that, and this part is our judgement rather than anything the sources state: per-lead billing puts the risk of a poor enquiry on the roofer, per-click billing spreads that risk across the traffic, and the unbilled channels trade money for months. The rows above carry the billing model and nothing else.
Where a roofer needs work this month, we will say that paid is the right answer and that what we do is the wrong one for that timeframe.
“Where a roofer needs work this month, we will say that paid is the right answer and that what we do is the wrong one for that timeframe.”
How do we measure whether the unbilled channels are working?
We score Share of Answer: twelve frozen buying questions, three platforms, three runs each, quarterly, with every screenshot archived and dated. The questions are fixed before the first run, so the denominator cannot move later. A roofing owner reading the report can check the number instead of believing it.
Quarterly is deliberate. Three runs of twelve questions across three platforms is a sample, and sampling it monthly would put more noise into the report than movement. The protocol is written down and you can read it before you spend anything.
Read the full methodOr get your free Visibility Check
Rankings are never guaranteed. Anything we could not trace to a primary source is absent from this page, not estimated. The audit runs the same six layers described on the pricing page, and Share of Answer is scored quarterly.
What has Mindflow published on the compounding side?
Two clients have given written permission to publish their numbers, and neither is a roofing company. Precision Fenceworks is a fence company working four Georgia markets, verified live 2026-06-16. Fireside Antiques is an eCommerce antiques dealer in Baton Rouge, Louisiana, with Search Console and Ahrefs data pulled 2026-06-10.
Second in the Athens map pack and third organic, named by three of the four major assistants with Perplexity giving them as its first pick. First organic in Alpharetta and third in the map pack, beaten there on distance and not on trust signals. Page one organic in Lawrenceville with zero map presence. 87 AI mentions across 72 cited pages, and 631 Precision Fenceworks reviews at a 4.9 average.
In Atlanta the same client has no reachable map presence against 100,000-plus impressions in sixteen months. Their pin sits in Alpharetta, proximity decides the Google map pack, and no page moves a building.
Five of eight tracked core terms ranking strong, with dining tables, armoires, mirrors and coffee tables all recovered to first position after a ranking dip.
A national eCommerce catalogue and not a local service business, which is why it sits here as evidence of method and not as a forecast for a roofing contractor.
Neither client is a roofer, and we are not going to imply otherwise. What transfers is the method: the audit, the frozen questions, the stated denominators and the work ledger. What does not transfer is a promise about your own street.
What we cannot show either: revenue, lead volume and job values. Neither client's permission covers it. So we cannot tell you whether this visibility became money, and we would rather say that than let a chart imply it. Two clients is not a large portfolio and we are not going to present it as one.
Read the full fencing recordRead the eCommerce record
What does the alternative cost, and where do you start?
A Visibility Check is free. A Local Visibility Audit is $3,500 to $7,500 and credits against your first invoice if you start a monthly partnership within 30 calendar days of delivery. The monthly partnership starts at $3,500 a month on a 90-day initial term, then runs month to month. No setup fee and no annual contract.
The credit caps at that first invoice and does not carry forward. At the bottom of the range a $3,500 audit against a $3,500 first month costs you nothing if you continue. At the top, a $7,500 audit against a $3,500 first month credits $3,500 and the remainder is spent.
We would rather you ran that sum at your own desk than found it on an invoice. It is the same habit this whole article is asking for.
The full ladder, with what sits inside each tier, is on the pricing page.
One company per metro in each service category. If a roofing company signs first in your metro, we turn down every other roofer there for the life of that engagement, including better-funded ones.
Start with the free checkSee the published pricing
