Conversion tracking that tells Google and Meta which ads booked real jobs
Google Ads says 52 conversions, Analytics says 31, your job software shows 18 new requests, and bidding chases the cheapest count. We tie every call, form and booking to the ad click behind it, follow it to the booked and paid job, and report that outcome to Google Ads and Meta, so both bid for customers instead of taps.
Free30 minutesNo obligation
Local conversion tracking · what breaks
What it costs when tracking stops at the tap
- 01
Conversions that are not customers
Taps on your number, ten-second calls and page loads fill the Conversions column, and Smart Bidding buys more of the cheapest.
- 02
Your best leads arrive with no source
Callers who dial your site's number, and people who book through your job software's widget, show up as direct, so the campaigns that found them get cut.
- 03
Every platform claims the same customer
Search, LSA, your Business Profile and Facebook each claim one homeowner, so their reports add up to more jobs than you booked.
- 04
Big jobs never reach Google
A replacement signed weeks after the estimate never reaches bidding, so it counts like a small repair.
Local conversion tracking · the fix
What fixed looks like — Local conversion tracking
One source on every lead
Each call, form and booking lands in your CRM with its click ID and campaign attached automatically, not typed in by staff.
Bidding on qualified and booked work
Primary conversions limited to qualified calls, confirmed forms and booked jobs. Taps stay as secondary reporting.
A monthly number you can check
Starts from jobs in your records and explains the gap to each platform.
Local conversion tracking · architecture
How it works: eight methods, used where they fit — Local conversion tracking
No single tag tracks a local business. We combine what your tools support and name the rungs that stay dark.
- 1
Confirmed events on your own site
Forms and bookings fire from a confirmed success response through a first-party container.
- 2
Signals the vendor documents
Where a scheduler publishes an embed callback, we use it and pass only the fields we need.
- 3
Cross-domain and redirect handoff
When booking ends on the vendor's domain, we test that the click ID survives.
- 4
API, webhook or server relay
Booked, completed and paid status comes straight from the job software.
- 5
Call tracking joined to outcomes
Google's website call conversions swap a Google forwarding number onto your page; call tracking platforms do the same and join each call to its CRM record.
- 6
CRM offline conversion import
Google takes click-ID conversion uploads for 90 days after the click, and uploads carrying hashed customer data for 63. Jobs that close later report an earlier rung.
- 7
Tagged outbound clicks and marketplace reports
For Angi, Thumbtack or Yelp we see the click out and the platform's lead report, not the sale.
- 8
Approved export reconciliation
With no API, exported records are matched by phone and date. Slower, still checkable.
Local conversion tracking · diagnose
Where local tracking usually breaks, checked in this order
Over-counting first: a fake conversion hurts bidding more than a missed one.
- 01
List every primary conversion action
Anything that fires without someone asking for a job, like a tap or page load, goes first.
- 02
Look for two actions counting one lead
Google's call conversions plus a call tracking import of the same calls count each one twice. Google recommends one conversion per click for leads.
- 03
Push a test booking through your widget
If nothing fires on your domain when it completes, self-bookings are invisible.
- 04
Open five recent jobs from Google
If the record holds no click ID, there is nothing to send to Google or Meta when the job closes.
- 05
Filter tracked calls for existing customers
Customers who saved a tracking number use it to reschedule, counting as new leads until excluded.
Local conversion tracking · prove
The evidence you get — Local conversion tracking
Run on live leads through your real site and phones.
Source of truth
Your CRM or job software: new leads, booked jobs, completed jobs and payments by date, with source and value
- A test call, form and booking from an ad click, each found in your CRM with its click ID.
- No lead counted twice on either ad platform; the Pixel and Conversions API copies of an event carry the same event ID.
- The qualifying-call rule checked against a sample of counted calls.
- Booked and completed jobs uploaded with value and accepted by Google Ads.
- A cancellation retracted and a reschedule left alone.
- Every click-matched conversion in a finished month paired with its CRM record, one line per lead.
- LSA, marketplace and unmatched leads listed on their own lines, with a second pass a month later.
Local conversion tracking · free audit
What we check in the free audit
- List every primary conversion action
- Look for two actions counting one lead
- Push a test booking through your widget
- Open five recent jobs from Google
- Filter tracked calls for existing customers
Checked against
Your CRM or job software: new leads, booked jobs, completed jobs and payments by date, with source and value
Free30 minutesNo obligation
Local conversion tracking · when not to buy
When you don't need this — Local conversion tracking
Some owners need a short fix, or nothing.
- Your ad spend is small and whoever answers the phone can note each caller's source. At that volume, a notepad does the job.
- Most work comes from referrals or marketplaces. Tracking can't attribute what never touches your site.
- Nobody records what a lead became. Until your CRM holds a booked or won status, start there.
- The only fault is a duplicate conversion action. That's a settings change we'll show you how to make.
Local conversion tracking · what we deliver
What we build, rung by rung — Local conversion tracking
Click and call intent
Click IDs and UTMs captured first-party on landing. Taps on your number are signals, never conversions.
Lead received
Counted only when your backend or the vendor confirms it, with a lead ID and deduplication key.
Call connected and qualified
Number swapping on your site, a separate Business Profile number, and a qualifying rule built from your real booking calls.
Booked and attended
Status read from your scheduler or job software by API, webhook or export. Reschedules never count twice.
Completed, won and paid
Job values sent to Google Ads as offline conversions with enhanced conversions for leads, and to Meta via the Conversions API.
Cancellations and refunds
Retracted or restated in Google Ads inside its 54-day adjustment window, and corrected at other destinations where their APIs allow it.
Written guarantee
95%+ tracking accuracy
Measured against Your CRM or job software: new leads, booked jobs, completed jobs and payments by date, with source and value. Miss it and we keep working at no cost.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
Repairs and verifies the browser-side setup you already have, on a live conversion. Honest about its ceiling on this platform.
- Root cause fixed, not worked around
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Money events sent from your own records through a first-party container on your subdomain, so the browser can no longer lose them.
- First-party server container on your own subdomain
- Money events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, with monitoring so the next break surfaces in days.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring on every destination
FAQ
Local conversion tracking questions, answered
Every rung from click or call to paid job: lead, connected call, qualified, booked, attended, completed, won, paid, plus cancellations and refunds. We tell you up front which rungs your tools let us see.
Usually the primary conversion is cheaper than a job: a tap on your number, a short call or a page load. Smart Bidding optimizes toward whatever it is given, so the goal moves to qualified calls and booked jobs.
Partly. LSA leads are calls, messages, voicemails and booking requests handled inside Google, so no website tag sees them; we match them to jobs by phone and date. Google is moving LSA into Google Ads in phases starting August 2026, and LSA performance reports will not carry over, so save copies before your account moves.
Conversions matched back to an ad click: forms, bookings, tracked calls and the jobs they become. LSA leads, marketplace leads and untracked calls are excluded and reported as separate lines.
Not the source, as long as the tracked number forwards to it. The AI summary is a note we can't verify, so a call counts as qualified only when an outcome lands in your CRM. Transcripts never go to ad platforms.
With tighter rules, yes. Google's customer data policy bars conversions tied to health or medical information from enhanced conversions, and Meta blocks custom audiences that suggest health conditions or financial status. Names, symptoms, case details and transcripts stay out of every event; only neutral stages are sent. Confirm it with your counsel.
More on Local conversion tracking
Free · 30 min
See which ads actually book your jobs
Free30 minutesNo obligation
