Conversion tracking for solar, from enquiry to signed contract
Solar has one of the longest and highest-value consumer sales cycles there is: an enquiry, a phone qualification, an in-home or virtual consultation, a proposal, and a signed contract months later worth five figures. Optimizing on the enquiry — which is what almost every solar account does — buys the cheapest leads in a market full of unqualified ones. The build attributes the enquiry, follows it to the signed contract, and sends the real contract value back.
Free30 minutesNo obligation
Getting and tracking leads for solar installers
Why solar leads look cheap in Google Ads and expensive by the time anyone signs
A solar installer's paid leads include renters, homeowners with a shaded roof or a small electric bill, people searching for 'free solar' programs, and leads bought from marketplaces, all counted the moment a form is sent. Count a lead when a homeowner with a suitable roof books a consultation and it is held, and keep the source on the deal in Enerflo, Aurora or OpenSolar until the contract is signed.
Every solar owner knows this one: Google Ads reports a cost per lead you can live with, the setters say too many of the numbers are wrong or the person rents, and the deal pipeline in Enerflo shows a thin line of sits and fewer signatures. What is happening is that the form submit is the conversion. A homeowner with a north-facing roof under oak trees, a renter who liked the idea, and someone who clicked an ad promising panels at no cost all count the same as the owner with a high summer bill and a new roof. The signature that matters happens weeks later, in Aurora's or Enerflo's proposal on a vendor domain, and the loan approval happens on GoodLeap's or Mosaic's page, so none of it reaches the ad account on its own.
That costs you through the bidding. Google and Meta learn from whatever you tell them is a conversion, so they find more people like the ones who fill forms fastest, and setters spend their day dialing them. Marketplace leads from EnergySage or SolarReviews make it worse when they are keyed into the same CRM as your own leads: if signed deals are uploaded without filtering by source, the ads get credit for customers they never found. The ten-minute check: export last quarter's signed contracts, put each one's original source next to it, and count how many trace to a paid click versus a marketplace, a referral or a door knock. Then compare that with what each channel was credited.
Fixed looks like: the click ID captured on the first form and stored on the CRM deal, the held consultation sent back as the early signal and the signed contract sent with its system value, marketplace and canvassing leads kept out of ad uploads, and a monthly view of cost per signed contract by channel. The free audit starts with that contract-to-source table, then checks which events your ads are actually bidding on.
Where the leads come from
| Channel | Role | Note |
|---|---|---|
| Local Services Ads | Homeowners who call to ask about panels or a battery, paid per lead | Category is 'Solar energy contractor'. Switch off job types you don't sell, since those leads are no longer credited; no click ID, so match by phone and date. |
| Google Search ads | Installer, battery backup and brand-specific searches from homeowners comparing quotes | Keep 'free solar' and 'solar jobs' searches out with negatives, and bid on held consultations and signed contracts imported from the CRM. |
| Business Profile | Reviews and install photos buyers check before agreeing to a consultation | A tracking number as primary with the office line as an additional phone keeps profile calls apart from ad calls. |
| Meta | Instant forms and savings angles that produce volume | Add qualifying questions on homeownership and the monthly bill, and send CRM stages back through the Conversions API so Meta learns from sits, not submits. |
| Nextdoor | Neighbors asking about the panels that went up down the street | Give it its own source; it often hides inside 'referral'. |
| EnergySage, SolarReviews, Modernize | Bought or marketplace leads shared with other installers | These never touch your site, so they carry no click ID. Label them by source and keep them out of Google and Meta offline uploads. |
Which calls count
- Count it when
- Count the call when a homeowner confirms they own the house at an address you install in and agrees to a consultation. Renters, roofs you would not mount on and lead vendors are not leads.
- Minimum duration
- Start at a few minutes, because a real solar inquiry covers ownership, roof age and shade, and the electric bill; tune from recordings and let the held consultation decide.
- After hours
- Solar forms arrive in the evening and the homeowner is comparing installers that night. A callback first thing the next morning matters more than overnight phone coverage.
Where each lead should land
- Website form or call from a paid click
- CRM deal with the click ID in a custom field, carried through proposal and contract so the signed value can be sent back.
- Enerflo or OpenSolar web tool
- The same deal, with UTMs and click ID captured by us, because these tools document no ad-platform integration of their own.
- Marketplace or bought lead
- Deal tagged with the vendor as source and excluded from Google and Meta conversion uploads.
- Financing approval
- A stage on the original deal, never a new lead, since the GoodLeap or Mosaic application happens on the lender's page.
Solar · what breaks
What solar companies usually run into
- 01
Cheap enquiries that never qualify
A market full of them.
- 02
Signed contracts months after the click
Straining every attribution window.
- 03
Flat conversion values on five-figure contracts
Bidding blind to system size.
Solar · the fix
What changes — Solar
Qualified appointments as the bidable event
Inside the window, and predictive.
Signed contracts fed back with value
So bidding chases real jobs.
Lead quality visible by channel
Which reorders the ranking sharply in this vertical.
Solar · architecture
The conversion map for solar companies
Five stages across months, with a qualification rate that differs wildly between channels.
- 1
Enquiry
Browser-side plus call tracking. High volume, low quality, poor target.
- 2
Phone qualification passed
Server-side from the CRM. The first meaningful signal.
- 3
Consultation attended
The realistic optimization target.
- 4
Proposal issued
Server-side with estimated system value.
- 5
Contract signed
Server-side with real contract value, uploaded where the cycle fits the window.
Solar · diagnose
Where solar companies tracking usually breaks
- 01
Optimizing on raw enquiries
Qualification rates vary so much by channel that enquiry-optimized bidding reliably finds the worst traffic.
- 02
Click ID lost over a months-long cycle
Cookies expire; the CRM record doesn't, if you write to it.
- 03
Flat values on five-figure contracts
System size varies enough that value-based bidding is worth a lot here.
- 04
Cycles beyond the 90-day import window
Which forces consultation-attended to carry the optimization.
Solar · prove
How the work is proven — Solar
Source of truth
your CRM's record of signed contracts and installed systems
- Click ID present on a live CRM record.
- Qualification outcome confirmed flowing back as a conversion.
- Signed contracts uploading with real contract value.
- Contracts reconciled against the CRM for a closed quarter.
Solar · free audit
What we check in the free audit
- Optimizing on raw enquiries
- Click ID lost over a months-long cycle
- Flat values on five-figure contracts
- Cycles beyond the 90-day import window
Checked against
your CRM's record of signed contracts and installed systems
Free30 minutesNo obligation
Solar · when not to buy
What lands in your monthly report — Solar
- Enquiries, qualified leads, consultations and signed contracts for the period, by channel.
- Qualification rate by channel — usually the single most decision-changing number in solar.
- Cost per signed contract and average system value by channel.
- How much contract revenue fell outside the attribution window.
Solar · what we deliver
The flow we build — Solar
Click ID captured and written to the CRM
It has to survive months.
Qualification recorded and sent
Phone screen outcome, not raw enquiry.
Site survey and consultation tracked
As staged conversions.
Signed contracts uploaded with system value
Offline conversion import.
Written guarantee
95%+ tracking accuracy
Measured against your CRM's record of signed contracts and installed systems. Miss it and we keep working at no cost.
From $400 · See packages
FAQ
Solar questions, answered
Because qualification rates differ hugely between channels. Enquiry-optimized bidding finds the cheapest leads, and in solar the cheapest leads are overwhelmingly unqualified.
Optimize on consultation attended, which sits inside the window and predicts contracts well. Use signed contracts for budget decisions rather than bidding.
The contract amount. System sizes vary enough that flat values push bidding toward the smallest jobs.
On the CRM record, written at first enquiry. No cookie survives a solar sales cycle.
More on Solar
- Google Ads · SolarGoogle Ads conversion tracking for solar companies
- Meta · SolarMeta Ads conversion tracking for solar companies
- TikTok · SolarTikTok Ads conversion tracking for solar companies
RELATED GUIDES
Funnels, reconciliation and tools for solar companies
- Chimney sweepsConversion tracking for chimney sweeps, measured in completed jobs
- MovingConversion tracking for movers, measured in booked moves
- Meta · Quote → closed jobHow to track quote request to closed job for Meta Ads
- Meta · Phone call → saleHow to track phone call to sale for Meta Ads
- Meta × Job SystemHow to reconcile Meta Ads against your job management system
- Solar installersLocal Services Ads for solar installers: renters, canvassed homeowners and cost per installed system
- Tree serviceConversion tracking for tree service, measured in signed jobs
- Garage doorsConversion tracking for garage doors, measured in completed jobs
Free · 30 min
Bid on signed contracts, not cheap enquiries
Free30 minutesNo obligation
