Meta Ads conversion tracking for solar companies
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. What Meta Ads adds on top of that is a mechanical requirement: fbclid and _fbc have to reach the record that holds the money, because Meta can only credit a conversion it can tie back to a click it recognizes. This page covers both halves — what a conversion is in solar companies, and what Meta specifically needs to accept it.
Free30 minutesNo obligation
Specific to Meta × Solar
Meta for solar: feed CRM stages back so lead ads stop rewarding junk
Track solar on Meta by sending CRM stage events through the Conversions API: a qualified-lead event when the phone screen passes, then Schedule for an attended consultation. Instant Form leads are matched on the lead ID Meta issued rather than fbclid; website leads need _fbc captured on landing and stored on the CRM record.
Most solar spend on Meta goes into Instant Form lead ads, and the form's convenience is the problem: prefilled details, one tap, and a lead who has forgotten submitting by the time the setter calls. Meta can optimize lead ads toward a later CRM stage if you send stage changes back through the Conversions API against the lead ID it issued. Check whether your account offers the conversion-leads optimization goal and what stage volume it asks for; it is the most useful build for a solar account here, and it needs no fbclid.
Timing is sharper than on search. Meta's attribution is a 7-day click window, and a solar contract signs months later, so a contract event reaches Meta long after any ad can be credited. Send the contract as Purchase with the real contract value for your own reporting, but don't expect it to steer delivery. Phone qualification usually happens within days, which is why it, not the contract, should carry the bidding.
Two Meta-specific cautions. Ads promoting solar loans, leases or financing terms may fall under Meta's special ad category for financial products and services, which narrows age, gender and location targeting; check before building plans around lookalikes. And never pass credit-check outcomes, credit scores or income bands in user_data or custom parameters as a lead-quality signal. That is exactly the sensitive financial detail Meta's terms keep out.
Meta · Solar · what breaks
Why Meta under-reports for solar companies
- 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.
- 04
Fbclid and _fbc never reaches the record
fbclid arrives on the landing URL and is normally written into the _fbc cookie. If it isn't captured on landing, _fbc never exists — and _fbc is the strongest click signal Meta has, so its absence caps your match quality regardless of what else you send. Forward _fbp too, from the browser rather than regenerating it server-side.
Meta · Solar · the fix
What working looks like — Meta · 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.
Meta · Solar · architecture
How Meta and solar companies actually connect
- 1
The conversion in solar companies
Enquiry, phone qualification, consultation, proposal, contract signed. Qualification rates in solar vary enormously by channel, which is why the first stage is nearly worthless as a target.
- 2
Meta Ads needs a click to match
event_name from the standard set with exact casing, event_time in seconds, a shared event_id, an action_source, and hashed user_data that was normalized before hashing. Purchase additionally requires value and currency.
- 3
The identifier: fbclid and _fbc
fbclid arrives on the landing URL and is normally written into the _fbc cookie. If it isn't captured on landing, _fbc never exists — and _fbc is the strongest click signal Meta has, so its absence caps your match quality regardless of what else you send. Forward _fbp too, from the browser rather than regenerating it server-side.
- 4
Where it gets sent from
your CRM's record of signed contracts and installed systems.
- 5
Deduplication and window
This is the mechanism that decides whether adding CAPI helps or doubles your conversions. Both the Pixel and the server event must carry the same event_id — the order or booking reference works best, because both sides can produce it without coordinating. A case difference in the event name alone produces two events even with a matching ID. Read the Deduplicated indicator in Events Manager over a full week, not one session. Meta's default attribution is a 7-day click and 1-day view. View-through is included by default, which is a large part of why Meta claims more conversions than your other platforms — that overlap is expected rather than a fault.
Meta · Solar · events
The conversion map for solar companies
Five stages across months, with a qualification rate that differs wildly between channels.
| Event | What it means here |
|---|---|
| Enquiry | Browser-side plus call tracking. High volume, low quality, poor target. |
| Phone qualification passed | Server-side from the CRM. The first meaningful signal. |
| Consultation attended | Server-side. The realistic optimization target. |
| Proposal issued | Server-side with estimated system value. |
| Contract signed | Server-side with real contract value, uploaded where the cycle fits the window. |
Meta · Solar · diagnose
Diagnostic order — Meta · Solar
- 01
Count records carrying fbclid and _fbc
- 02
Optimizing on raw enquiries
Qualification rates vary so much by channel that enquiry-optimized bidding reliably finds the worst traffic.
- 03
Click ID lost over a months-long cycle
Cookies expire; the CRM record doesn't, if you write to it.
- 04
Flat values on five-figure contracts
System size varies enough that value-based bidding is worth a lot here.
- 05
Read the Deduplicated indicator and the per-event match quality score, both read over seven days
Match quality is where most Meta accounts lose attribution, and it's almost always normalization rather than coverage. An email hashed with a capital letter, or a phone hashed with brackets, produces a perfectly valid hash that matches nobody and errors nowhere. Normalize first, then hash, and read the score per event rather than overall.
Meta · Solar · prove
How it gets proven — Meta · 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.
- The Deduplicated indicator and the per-event match quality score, both read over seven days read directly, not inferred from an upload succeeding.
Meta · Solar · free audit
What we check in the free audit
- Count records carrying fbclid and _fbc
- Optimizing on raw enquiries
- Click ID lost over a months-long cycle
- Flat values on five-figure contracts
- Read the Deduplicated indicator and the per-event match quality score, both read over seven days
Checked against
your CRM's record of signed contracts and installed systems
Free30 minutesNo obligation
Meta · Solar · when not to buy
When you don't need this — Meta · Solar
- If Meta already reports conversions that reconcile against your crm's record of signed contracts and installed systems within a few percent, this is working and there is nothing to buy.
- Measure identifier coverage yourself first — pull your last hundred records and count how many carry fbclid and _fbc.
- If you're advertising a business type Meta restricts data collection for — health being the obvious one — the parameters you can legitimately send are narrower, and that constraint should shape the build rather than be worked around.
Meta · Solar · what we deliver
What gets built — Meta · 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.
Dispatch via the Conversions API
Server events go through CAPI with an action_source describing where the conversion happened. Offline outcomes flow through the same API rather than a separate product. Verify current field names against Meta's documentation before building — this surface changes.
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
Meta · Solar questions, answered
Only with CRM stage events flowing back. Without them, Meta optimizes toward whoever submits forms most readily, and in solar that is a large pool of people who never answer the setter's call.
A phone-qualified lead stage if you have dozens a week, the attended consultation if volume allows. Keep the raw Lead for reporting and send Purchase with contract value for budget decisions.
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.
fbclid arrives on the landing URL and is normally written into the _fbc cookie. If it isn't captured on landing, _fbc never exists — and _fbc is the strongest click signal Meta has, so its absence caps your match quality regardless of what else you send. Forward _fbp too, from the browser rather than regenerating it server-side.
Server events go through CAPI with an action_source describing where the conversion happened. Offline outcomes flow through the same API rather than a separate product. Verify current field names against Meta's documentation before building — this surface changes.
By reading the Deduplicated indicator and the per-event match quality score, both read over seven days and reconciling against your CRM's record of signed contracts and installed systems. An upload that succeeds is not an upload that matched.
More on Meta · Solar
- SolarConversion tracking for solar, from enquiry to signed contract
- Meta · Home securityMeta Ads conversion tracking for home security companies
- Meta · Pest controlMeta Ads conversion tracking for pest control companies
RELATED GUIDES
More for solar companies: other angles on the same outcome
- SolarConversion tracking for solar, from enquiry to signed contract
- Meta · Air duct cleaningMeta Ads conversion tracking for air duct cleaning companies
- Meta · Paving and asphaltMeta Ads conversion tracking for paving and asphalt contractors
- Meta · Phone call → saleHow to track phone call to sale for Meta Ads
- Meta × Invoicing SystemHow to reconcile Meta Ads against your invoicing system
- Solar installersLocal Services Ads for solar installers: renters, canvassed homeowners and cost per installed system
- Meta · Tree serviceMeta Ads conversion tracking for tree service companies
- Meta · Windows and doorsMeta Ads conversion tracking for window and door companies
Free · 30 min
Get Meta reporting what solar companies actually earn
Free30 minutesNo obligation
