Skip to main content
Local conversion trackingLocal business

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

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

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

  3. 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.

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

    Confirmed events on your own site

    Forms and bookings fire from a confirmed success response through a first-party container.

  2. 2

    Signals the vendor documents

    Where a scheduler publishes an embed callback, we use it and pass only the fields we need.

  3. 3

    Cross-domain and redirect handoff

    When booking ends on the vendor's domain, we test that the click ID survives.

  4. 4

    API, webhook or server relay

    Booked, completed and paid status comes straight from the job software.

  5. 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. 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. 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. 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.

  1. 01

    List every primary conversion action

    Anything that fires without someone asking for a job, like a tap or page load, goes first.

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

  3. 03

    Push a test booking through your widget

    If nothing fires on your domain when it completes, self-bookings are invisible.

  4. 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.

  5. 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

Get my free conversion tracking audit

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.

Get my free conversion tracking audit

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
Fix what I have

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
Rebuild it server-side

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
Get the full stack

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.

Free · 30 min

See which ads actually book your jobs

Free30 minutesNo obligation