Skip to main content
Google Ads · SolarGoogle Ads × Solar

Google 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 Google Ads adds on top of that is a mechanical requirement: gclid, gbraid and wbraid have to reach the record that holds the money, because Google Ads 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 Google Ads specifically needs to accept it.

Free30 minutesNo obligation

Specific to Google Ads × Solar

Google Ads for solar: bid on attended consultations, not form fills

Track solar on Google Ads by importing an attended consultation as the primary conversion action against the gclid, gbraid or wbraid stored on the CRM lead at first enquiry. Send it from the CRM through offline conversion import with an estimated system value, and keep raw enquiries as a secondary, non-bidding action.

Solar search traffic mixes people pricing a system with people chasing a "$0 down" or "free panels" offer, and enquiry-optimized bidding cannot tell them apart. Mark the raw form fill and the call from the ad as secondary conversion actions so they still report, and make the CRM's consultation-attended status the only primary action in the solar campaigns. That one change moves Smart Bidding off the cheapest queries and onto the ones that survive a phone screen.

The 90-day import limit decides the rest. Many residential contracts sign after it closes, so a signed-contract upload will reject a share of rows as too old. Upload contracts anyway as a separate secondary action carrying the contract amount, because the rows that do match show which campaigns produce kilowatts rather than appointments. If leads come through Google lead form assets, check that the click ID in the webhook payload is written to the CRM; it is easy to keep the name and phone and drop the identifier.

Where it breaks for solar: the consultation is booked by a setter on the phone, often days later, and the record created at that moment is a fresh one without the gclid from the web form. Merge on phone or email before any import runs. And if your ads promote solar loans or financing terms, check whether Google's credit and financial services rules limit the audience targeting you can use before planning Customer Match lists around it.

Google Ads · Solar · what breaks

Why Google Ads under-reports for solar companies

  1. 01

    Cheap enquiries that never qualify

    A market full of them.

  2. 02

    Signed contracts months after the click

    Straining every attribution window.

  3. 03

    Flat conversion values on five-figure contracts

    Bidding blind to system size.

  4. 04

    Gclid, gbraid and wbraid never reaches the record

    Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.

Google Ads · Solar · the fix

What working looks like — Google Ads · 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.

Google Ads · Solar · architecture

How Google Ads and solar companies actually connect

  1. 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. 2

    Google Ads needs a click to match

    A click identifier inside the 90-day window, a conversion action name that matches one configured in the account, a conversion timestamp for when the outcome happened, and a value. Read the match rate after uploading — a file can upload perfectly and match nothing.

  3. 3

    The identifier: gclid, gbraid and wbraid

    Three parameters, not one. gclid is the long-standing identifier; gbraid and wbraid arrive on iOS traffic where privacy constraints prevent the usual one. Capture code that names only gclid loses a growing share, silently, and the loss is invisible until you audit how many records carry an identifier.

  4. 4

    Where it gets sent from

    your CRM's record of signed contracts and installed systems.

  5. 5

    Deduplication and window

    There's no shared event ID mechanism like Meta's. What matters instead is the counting setting on each conversion action — 'one' for lead-type conversions so a repeat submitter doesn't count three times, 'every' for ecommerce where a second purchase is a second sale. This is the single most common misconfiguration we find in Google Ads accounts. Google's offline import window is 90 days from the click. Anything older can't be matched, and rows outside it fail as unmatched without much explanation. Measure your median click-to-outcome time against that before designing anything.

Google Ads · Solar · events

The conversion map for solar companies

Five stages across months, with a qualification rate that differs wildly between channels.

EnquiryBrowser-side plus call tracking. High volume, low quality, poor target.
Phone qualification passedServer-side from the CRM. The first meaningful signal.
Consultation attendedServer-side. The realistic optimization target.
Proposal issuedServer-side with estimated system value.
Contract signedServer-side with real contract value, uploaded where the cycle fits the window.

Google Ads · Solar · diagnose

Diagnostic order — Google Ads · Solar

  1. 01

    Count records carrying gclid, gbraid and wbraid

  2. 02

    Optimizing on raw enquiries

    Qualification rates vary so much by channel that enquiry-optimized bidding reliably finds the worst traffic.

  3. 03

    Click ID lost over a months-long cycle

    Cookies expire; the CRM record doesn't, if you write to it.

  4. 04

    Flat values on five-figure contracts

    System size varies enough that value-based bidding is worth a lot here.

  5. 05

    Read the match rate on the upload, not the success message

    A conversion action that stops receiving hits is flagged as inactive 30 days later — by which point a month of budget has already run against a missing signal. Check the last-received date on every action monthly; it takes two minutes and it's the cheapest monitoring available.

Google Ads · Solar · prove

How it gets proven — Google Ads · 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 match rate on the upload, not the success message read directly, not inferred from an upload succeeding.

Google Ads · Solar · free audit

What we check in the free audit

  • Count records carrying gclid, gbraid and wbraid
  • Optimizing on raw enquiries
  • Click ID lost over a months-long cycle
  • Flat values on five-figure contracts
  • Read the match rate on the upload, not the success message

Checked against

your CRM's record of signed contracts and installed systems

Get my free conversion tracking audit

Free30 minutesNo obligation

Google Ads · Solar · when not to buy

When you don't need this — Google Ads · Solar

  • If Google Ads 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 gclid, gbraid and wbraid.
  • If you're running Performance Max exclusively and haven't separated your conversion actions, the import will work and the reporting won't tell you much. Worth sorting the account structure first.

Google Ads · Solar · what we deliver

What gets built — Google Ads · 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 Google's offline conversion import

    Uploaded against the click identifier, either through the Google Ads API or as a file. The upload is the easy part; what limits it is how many of your records carry an identifier at all. Verify the current column format against Google's own template — it has changed before.

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.

Get my free conversion tracking audit

From $400 · See packages

FAQ

Google Ads · Solar questions, answered

Yes, as a backstop. It matches the hashed email or phone from the form to the later CRM outcome when the gclid was lost, which happens often when setters re-key leads. Confirm its lookback in your account; it does not make a six-month contract matchable.

Free · 30 min

Get Google Ads reporting what solar companies actually earn

Free30 minutesNo obligation