How solar contractors find leads using building permit data
If you sell solar installations and you're still buying leads from aggregators at $80-$150 each, you're paying for prospects who already said yes to seven other contractors. There's a better source: building permit data, which tells you exactly when a homeowner is researching solar — often weeks before they sign with anyone.
The problem with traditional solar lead sources
Most solar contractors fall into the same lead funnel: pay-per-lead aggregators (HomeAdvisor, Modernize, EnergySage), Google/Facebook ads, door-to-door, or referrals. Every one of these has the same fundamental problem: by the time you know about the homeowner, so does everyone else.
Aggregator leads sell to 4-7 contractors simultaneously. Google ads have $40-$100 CPCs in solar verticals. Door-to-door is brutal economics on a 1-2% conversion. Referrals are great but don't scale.
The structural issue: you're competing for attention after a homeowner has already decided to investigate solar. By then, every contractor in their ZIP code is already in the inbox.
The shift: get there before the decision is made
Here's what most contractors miss. When a homeowner installs solar, the timeline looks roughly like this:
| Stage | Activity | Time |
|---|---|---|
| 1 | Curiosity / research | Months 1-3 |
| 2 | Get quotes from 3-5 contractors | Weeks 1-4 |
| 3 | Sign contract with chosen installer | Week 4-6 |
| 4 | Permit filed with the city | Week 5-7 |
| 5 | Permit issued, install begins | Week 8-12 |
Most contractors are fishing in stages 1-2 along with everyone else. Building permit data lets you target stages 3-4 differently. Why does that matter?
A filed solar permit is a verified, named-and-addressed homeowner who just signed a solar contract. They're not a "lead" — they're already a customer. But they're a customer for someone else right now. So why would you care?
Three reasons:
- Adjacent property campaigns. Neighbors are 7x more likely to install solar after their immediate neighbor does. When 123 Main St files a permit, you mail 121 and 125 the next morning. "Your neighbor went solar — here's what they paid."
- Add-on services. The homeowner is about to make a $25k+ home investment. They're a hot prospect for battery storage, EV chargers, panel upgrades, and roofing — all categories solar contractors profitably bolt on.
- Competitive intelligence. Track which contractors are winning in your service area, what system sizes they're permitting, what neighborhoods they're saturating.
The four-step playbook
Pull solar permit data for your service area
Daily, ideally — fresh data is the entire advantage. The PermitStack API exposes 282,489 solar permits across 52 metros, with daily updates from official city portals. Filter by city, ZIP, and date range to get only the permits relevant to your trucks.
Set up real-time alerts
Webhooks fire within 60 seconds of new permits matching your filters. The faster you can act on a fresh permit, the higher your conversion. A homeowner getting a postcard from their installed neighbor's contractor 3 days post-permit lands very differently than the same postcard 6 weeks later.
Match permits to neighboring properties
Use parcel data or property records to identify the 5-10 homes adjacent to each new solar permit. These become your highest-priority outreach list. Direct mail, hyperlocal Facebook ads, or door-knock — whatever your motion is.
Track competitor activity
The same permit data tells you which contractors are winning in your area. If three competitors are saturating one ZIP code, maybe shift your spend to an under-served area. If a competitor just won 12 jobs in your service area, you know who to compete against on price/quality.
What the data actually looks like
A typical solar permit record from the API:
{
"permit_number": "BLD-2026-04-12345",
"address_street": "1234 SUNSET BLVD",
"address_city": "LOS ANGELES",
"address_zip": "90026",
"category": "SOLAR",
"status": "ISSUED",
"description_raw": "INSTALL 8.4KW ROOF MOUNTED PV SOLAR SYSTEM",
"estimated_value": 32500.00,
"date_filed": "2026-04-15",
"date_issued": "2026-05-01",
"jurisdiction": "Los Angeles"
}
Notice what's there: address (you can match to neighbors), system size (mentioned in description), estimated cost (price your competitive offer), date filed (your urgency window), and date issued (when crews arrive on the property — peak neighbor visibility).
Cost economics
For most small-to-mid solar contractors:
- Aggregator leads: $80-$150/lead, ~10% conversion. Effective CAC: $800-$1,500.
- Google ads: $40-$100 CPC, ~2-5% lead form conversion, ~10% close. Effective CAC: $800-$5,000.
- Permit-driven mail: $0.60/postcard, target 5 neighbors per permit, ~1% response, ~30% close. Effective CAC: $100-$200.
The PermitStack API costs $49/month on the Developer plan, which includes the webhook alerts you need to make this work in real time. That's it. No per-lead fees, no surprise charges.
Get started
If you're already running paid solar lead gen and want to layer this in:
- Sign up for a free API key (100 req/day to test)
- Browse recent solar permits in your metro to see the data
- When you're ready for real-time, upgrade to Developer ($49/mo) and read the webhook docs
Most contractors set up their first webhook in under 30 minutes. The hard part isn't the integration — it's deciding which neighborhoods to target and how to write your "neighbor went solar" copy.
Start finding solar leads from permit data
Free tier includes 100 req/day. Upgrade to Developer for real-time webhooks when you're ready to scale.
Get free API key