Leap shows the window job your rep signed in SalesPro. Google Ads still thinks it was a form fill.
Your website form drops a lead into Leap CRM, a rep runs the appointment in SalesPro, and the contract gets signed at the kitchen table, sometimes with financing approved in the app. None of that reaches Google or Meta, so bidding learns from inquiries instead of signed jobs. We carry the ad click onto the Leap lead and send each signed or cancelled contract back to the platform that earned it.
Free30 minutesNo obligation
Leap · what breaks
What goes wrong with Leap
- 01
"Google keeps sending us tire-kickers"
If the only conversion is the thank-you page after your contact form, a quote shopper and a whole-house siding buyer count the same, and bidding chases whichever is cheaper to find.
- 02
"Referred By" is all we know about the lead
Leap's WordPress form plugin documents a Referred By field but no UTM or click ID fields. The click that paid for the lead is gone before the job exists.
- 03
Angi leads get counted as ad wins
Angi Leads flow into Leap automatically beside your Google and Meta leads. Count every new Leap lead and your ads take credit for leads you bought from Angi.
- 04
The sale happens in an app your ads can't see
SalesPro handles the contract, the in-app credit application and payment capture on the rep's tablet, and it's built to work without an internet connection. Handy in a basement with no signal, invisible to every tag on your site.
Leap · the fix
What changes — Leap
Bidding learns from signed contracts
Google Ads and Meta get the jobs your reps closed in SalesPro, with the contract amount.
Every Leap lead knows which ad it came from
The click ID and campaign sit on the Leap lead, so Referred By stops being your only source report.
Paid-for leads stay in their own column
Angi and referral leads are tagged and excluded, so cost per signed job by campaign is a number you can act on.
Leap · architecture
What Leap actually lets you hook into
Leap doesn't document a native Google Ads, GA4, Tag Manager or Meta connection. It does document ways in and out, and we build on those.
- 1
WordPress contact form plugin
Leap's own shortcode form sends inquiries into your account, with a Referred By field and a manual sync button. We confirm whether it can carry hidden fields; if not, your existing form plus Zapier does the job.
- 2
Zapier: Create Lead, Create Customer, Update Lead
Documented Leap actions, so a Gravity Forms or similar submission can create the Leap lead. Create Lead has no dedicated click ID field, so we agree which field on the lead holds it. The only triggers are New Customer and New Lead.
- 3
Access token from Leap's Developer settings
Leap generates an access token under Settings > Developer, which is how outside tools read account data. No Zapier trigger fires on a stage change, so we confirm what that access exposes for jobs, stages and contract value on your account.
- 4
SalesPro contract sync
Leap says closed SalesPro deals flow into Leap CRM without re-entry. If SalesPro runs alongside MarketSharp or JobNimbus instead, we confirm where the signed result lands and read it there.
- 5
Partner lead imports
Leap names Angi Leads, Lead Symphony and Get the Referral as direct connections. We check how each one is labeled on the Leap lead so it can be excluded.
Leap · diagnose
Where Leap tracking breaks, in diagnostic order
Start at the form, because a click ID that never reaches the Leap lead can't be recovered by anything downstream.
- 01
Submit a test inquiry from an ad-tagged URL
Open the new Leap lead and look for the click ID. With the stock plugin, it usually isn't there.
- 02
Check the WordPress sync status
The plugin lists sync errors in its customer listing. Leads stuck there never become Leap jobs.
- 03
Trace a signed SalesPro contract back to Leap
Confirm it lands on the right job with the contract amount, and how long an offline signing takes to sync.
- 04
Separate Angi and referral leads
If they share a stage or source with ad leads, cost per signed job looks better than it is.
- 05
Check how cancellations and declined financing are recorded
An unreported stage change means Google keeps bidding toward a job you never installed.
Leap · prove
The QA evidence — Leap
Run on a live inquiry through your real website form and a real SalesPro contract, not a lead keyed into Leap by hand.
Source of truth
Leap CRM jobs and SalesPro signed contracts — by job stage, contract amount, lead source and signing date
- One inquiry from an ad-tagged URL, click ID confirmed on the Leap lead.
- One inquiry, one lead conversion: no double count in Google Ads or in Meta Events Manager.
- A signed SalesPro contract arriving at both platforms with its value.
- An Angi Leads import confirmed absent from every ad conversion.
- A rescinded contract retracted in Google Ads, with the Meta side handled the way we agreed.
- A closed month of signed Leap jobs matched record by record.
- Rerun a month later, and again whenever you add, rename or reorder a Leap job stage.
Leap · free audit
What we check in the free audit
- Submit a test inquiry from an ad-tagged URL
- Check the WordPress sync status
- Trace a signed SalesPro contract back to Leap
- Separate Angi and referral leads
- Check how cancellations and declined financing are recorded
Checked against
Leap CRM jobs and SalesPro signed contracts — by job stage, contract amount, lead source and signing date
Free30 minutesNo obligation
Leap · when not to buy
When you don't need this on Leap
Some Leap accounts are better off with a short settings check, and we'll tell you so.
- If most jobs come from Angi, canvassing or referrals and you spend little on Google or Meta, there isn't much ad spend to steer.
- If you only run call ads and the same two people answer every call and log the source in Leap, a monthly reconciliation may be enough to start.
- If SalesPro runs on MarketSharp or JobNimbus and that CRM already sends sold jobs to Google, we'd fix that setup rather than build a second one.
- If you're happy optimizing to leads and Leap's close-rate reporting already answers your questions, fixing click capture on the form may be all you need.
Leap · what we deliver
The event map on Leap
Website inquiry submitted
Fired once when your Leap or Zapier-connected form posts, with the click ID and campaign attached.
Appointment set
Read from the Leap job stage, so Google sees which campaigns put a rep in the living room.
Contract signed in SalesPro
The main conversion, sent when the signed contract lands in Leap, valued at the contract amount.
Financing approved
Its own event wherever the approval is recorded on the Leap job, so you see which ads bring homeowners who qualify for financing.
Rescinded or financing declined
Retracted in Google Ads through a conversion adjustment, so a deal that died in the cancellation window stops teaching bidding. Meta can't take a sale back, so we agree when the Meta event is sent.
Excluded on purpose
Angi Leads imports, Get the Referral leads, canvassed leads and repeat customers.
Written guarantee
95%+ tracking accuracy
Measured against Leap CRM jobs and SalesPro signed contracts — by job stage, contract amount, lead source and signing date. Miss it and we keep working at no cost.
From $400 · See packages
FAQ
Leap questions, answered
Not natively, based on Leap's partner list. We store the Google click ID on the Leap lead and send signed contracts back through Google's offline conversion import, with enhanced conversions for leads where the click ID is missing.
Not out of the box. We read signed contracts from your Leap data and send them through Meta's Conversions API, which accepts offline and CRM events.
Zapier is fine for getting leads into Leap. Its Leap triggers are only New Customer and New Lead, though, so nothing fires when a contract is signed.
Only if they're counted. Angi Leads import into Leap automatically, so we tag them and keep them out of every conversion.
Signed contracts with value are the goal. Window, siding and basement companies with fewer sales often start on appointments set, then switch once enough contracts flow back.
It can delay it. SalesPro is built to work without an internet connection, so we check how long a contract signed offline takes to reach Leap, and send conversions from Leap's records, not from the app.
More on Leap
- Enhanced ConversionsEnhanced Conversions enrich the conversions that already fire. First we make sur…
- Meta CAPIA one-click CAPI integration sends thin events. That's why your Event Match Qual…
- Cross-Domain TrackingYour checkout provider is the best performing traffic source in your GA4 account…
RELATED GUIDES
Booking tools beside Leap, and what their bookings feed
- Followup CRMYour contracts close in Followup CRM. Your ads never find out.
- BuildiumGoogle Ads keeps counting leads. Buildium shows almost no applications.
- boberdooboberdoo conversion tracking that counts sold leads, not form fills
- SteerSteer conversion tracking: which ads actually brought cars into your bays?
- SalesRabbitYour rep drops a sale pin in SalesRabbit. Your ads never hear about it.
- ZapierYour Zap says "Success," so why can't Google Ads see the jobs you closed?
- LeadPerfectionYour ads say leads. LeadPerfection says who sat and who signed. We connect the two.
- OrbundYour ads fill Orbund with inquiries. Google can't tell which ones signed an enrollment agreement.
Free · 30 min
See which ads actually sign Leap contracts
Free30 minutesNo obligation
