๐Ÿ“ž RetainCall
Operations ยท 9 min read

Solar lead costs are up โ€” here's how installers stop wasting them

By the RetainCall Team ยท August 2026

Ask a solar installer what's gone wrong with the business over the last few years and you'll hear about the same three things: interest rates, the credit landscape, and the price of a lead. The first two are outside your control. The third one mostly is too โ€” you don't set what a shared lead or a click costs.

What you do control is what happens after the lead exists. And that's where most installers are quietly losing more money than any price increase has cost them.

This post is the math on that, and the fixes. No ad spend required for any of them.

Cost per lead is the wrong number to obsess over

Every installer knows their cost per lead. Very few can tell you their cost per sat appointment or their cost per signed contract โ€” which are the only two numbers that pay for the truck.

Here's why that matters. A solar sale runs through a chain of conversion steps, and cost per lead sits at the very top of it:

Cost per lead
รท contact rate (did a human ever actually talk to them?)
รท appointment-set rate
รท sit rate (did they show, with all decision-makers?)
รท close rate
= cost per signed contract

Because those rates multiply, a weak link anywhere in the chain hits your acquisition cost just as hard as a price increase at the top. And the weakest link at most installers, by a wide margin, is the first one: contact rate.

Run your own numbers

Let's take a mid-sized installer buying exclusive leads. Plug your own figures in โ€” the shape of the result holds regardless of the inputs.

100 exclusive leads ร— $250 = $25,000 spent

ร— 45% contact rate = 45 conversations
ร— 50% appointment-set rate = 22.5 appointments
ร— 70% sit rate = 15.7 sits
ร— 25% close rate = 3.9 signed deals

$25,000 รท 3.9 = ~$6,350 per signed contract

Now change exactly one number โ€” contact rate, from 45% to 65%. Nothing else. Same leads, same reps, same pitch, same price.

100 leads ร— $250 = $25,000 spent
ร— 65% contact rate = 65 conversations
ร— 50% ร— 70% ร— 25% = 5.7 signed deals

$25,000 รท 5.7 = ~$4,390 per signed contract

That's roughly $1,960 less per deal, or about a 31% cut in acquisition cost, from one operational change.

Here's the part worth taping to the wall: raising contact rate from 45% to 65% is arithmetically identical to negotiating your lead price down from $250 to $173. Nobody is going to give you that discount. But you can go get the equivalent yourself this month, and it doesn't require a single conversation with a lead vendor.

Why solar leads go cold faster than almost any other trade

Contact rate is low in solar for structural reasons, not because your team is bad at their jobs:

None of that is fixed by buying better leads. It's fixed by changing what happens in the first ten minutes.

The uncomfortable version: if you're paying $250 a lead and taking four hours to call, you are effectively buying someone else's appointments.

Seven fixes that cost nothing

1. Set a five-minute rule and give it an owner

Not "we try to call fast." A named person, per shift, whose job is that every new lead gets a call and a text within five minutes. If nobody owns it, it belongs to whoever is least busy, which means it belongs to nobody. Put the shift owner on a whiteboard.

2. Text first, then call โ€” within the same minute

A homeowner who won't pick up an unknown number will read a text. Send the text before the call so the incoming ring has context:

"Hi {{first name}} โ€” this is {{company}}, following up on the solar quote you just requested. Calling you in a minute from this number so you know it's us. If now's bad, reply with a better time."

That single sequence change is the highest-ROI thing on this list, and it takes an afternoon to standardize.

3. Qualify on the first contact, not at the appointment

Sending a rep to an unqualified sit is the most expensive mistake in the pipeline โ€” you're burning a two-hour appointment slot plus drive time. Six questions on the first call get you most of the way:

  1. Do you own the home? (Renters end the conversation politely, right there.)
  2. Roughly what's the average monthly electric bill?
  3. How old is the roof, and any known issues?
  4. Much shade over the roof โ€” big trees, neighboring buildings?
  5. Are you looking to buy outright, finance, or not sure yet?
  6. Who else is part of the decision, and can they be there too?

Question six alone will raise your sit rate more than any script tweak your reps have tried.

4. Confirm every appointment three times

Immediately after booking, again 24 hours out, again two hours out. Each touch is a text, each takes seconds, and each one either confirms the sit or gives you enough warning to rebook the slot instead of eating a windshield-time no-show. Installers who go from one confirmation to three routinely pull no-show rates down by a third.

5. Answer โ€” or text back โ€” outside business hours

Evenings and weekends are when homeowners think about their power bill. If your line rings out to voicemail at 7pm, you are handing the highest-intent window of the week to whoever picks up. At minimum, rewrite the after-hours greeting so it promises a specific callback time, and check the missed-call log before bed. Our post on why customers won't leave voicemails anymore covers why "leave a message" no longer does the job it used to.

6. Work the aged-lead list on a schedule

Every installer has a spreadsheet of leads from 30 to 120 days ago that went nowhere. A meaningful share of those homeowners didn't choose a competitor โ€” they just got busy. One texting pass per month over aged leads costs nothing and reliably surfaces deals you already paid for. Do it the week after a utility rate increase hits the news and it works even better.

7. Report on cost per sat appointment, not cost per lead

Change the number at the top of your weekly sheet. The moment you're managing to cost per sat appointment, you'll start reallocating spend toward the channels that produce homeowners who actually answer the phone โ€” which is frequently not the cheapest channel by CPL.

What the fixes are actually worth

Be honest with yourself about the ceiling here. Fixes 1 through 7 will not take a 45% contact rate to 90%. What they realistically do, at an installer that executes them consistently, is claw back the leads that were lost purely to timing โ€” which in most pipelines is the majority of the gap.

Using the earlier example: at 100 leads a month, that ~$1,960 per-deal improvement across roughly 5.7 deals is somewhere around $11,000 a month in acquisition cost you stop paying, on a lead budget you never increased.

Then there's the part these fixes can't reach: the 8pm form fill on a Saturday, the three leads that land while your one office person is on the other line, the week a state incentive announcement triples your inbound. That's the ceiling of what a human team covers, and no amount of discipline moves it.

When paying for coverage makes sense

If you get to the ceiling and there's still a leak, the honest options are the categories, not the brands:

We wrote up how those pricing models actually compare in how much an answering service costs in 2026, and there's a side-by-side on the comparison page if you want it in a table.

For what it's worth, that last category is what we built. RetainCall's AI, Sara, answers every call in under a minute โ€” including the 9pm ones โ€” asks your qualifying questions, and books the appointment into your calendar. It's $199 a month flat, unlimited calls, no per-call fees, so a surge week costs the same as a slow one. There's a 7-day free trial with no card required, and there's a solar-specific setup at retaincall.com/for/solar.

But do fixes 1 through 7 first. They're free, they're faster to implement than any vendor onboarding, and they'll tell you exactly how big your remaining leak actually is before you pay anyone to plug it.

Hear what an AI dispatcher sounds like on a solar call

Call (662) 676-3267 and play the homeowner. Sara will greet you the way she'd greet your lead, ask the qualifying questions, and text you back live. No signup needed to try it.

๐Ÿ“ž Call (662) 676-3267

RetainCall was built after watching contractors lose four-figure jobs to a phone nobody could get to. Reach us at support@retaincall.com. Related: What the missed-call data actually says ยท RetainCall for solar installers ยท Compare your answering options