Skip to main content
Google Ads · PlumbersGoogle Ads × Plumbers

Google Ads conversion tracking for plumbing businesses

Plumbing enquiries arrive on a mobile phone, in an emergency, within minutes of the search — and the customer taps the number rather than filling in a form. 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 plumbing businesses, and what Google Ads specifically needs to accept it.

Free30 minutesNo obligation

Specific to Google Ads × Plumbers

Google Ads for plumbers: import call conversions, not just gclid

For a plumber on Google Ads, the conversion is a qualified emergency call. Track calls from call assets with Google's forwarding numbers and a minimum duration, and import attended jobs with invoice value from the job system, matched on gclid, gbraid or wbraid where a site visit happened, or on caller ID for direct calls.

A plumbing emergency search frequently ends on the results page: the customer taps the call button in the ad and never sees your site. That call has no gclid to store, so a build that relies on landing-page capture misses the plumber's most valuable traffic entirely. Google's call reporting with forwarding numbers records those calls as conversions; set the minimum duration so a wrong number or a vendor pitch doesn't count as a job enquiry.

For the job outcome, Google accepts call conversion imports keyed on the caller's phone number and the call start time instead of a gclid; check the current template in Google's documentation. That lets you send the attended job and its invoice value back for a call that never touched the website. Plumbing jobs usually close the same day, so upload daily rather than anywhere near the 90-day limit.

Where people do visit the site, the plumber's specific gap is the sticky mobile call bar: a hard-coded tel: link that never received the forwarding number, so the click shows in Google and the call doesn't. Also set counting to 'one' on the call conversion. A panicked customer who rings three times in five minutes about one flooded basement is one job.

Google Ads · Plumbers · what breaks

Why Google Ads under-reports for plumbing businesses

  1. 01

    The phone is the channel and it's untracked

    So the best traffic is invisible.

  2. 02

    Every call worth the same

    A wrong number counted like a burst pipe.

  3. 03

    Mobile click-to-call firing nothing

    The single biggest gap in this vertical.

  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 · Plumbers · the fix

What working looks like — Google Ads · Plumbers

  • Calls as the primary conversion

    Measured, attributed, valued.

  • Short calls filtered out

    Duration or outcome as the qualifier.

  • Completed jobs fed back

    So bidding learns what a real customer looks like.

Google Ads · Plumbers · architecture

How Google Ads and plumbing businesses actually connect

  1. 1

    The conversion in plumbing businesses

    Call started, call qualified, job attended, invoice raised. The first is trivially available and the rest are what actually matter.

  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 job management system's completed jobs and invoices.

  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 · Plumbers · events

The conversion map for plumbing businesses

Four stages, almost all of them on the phone. This is the most phone-dominated vertical we work in.

Click-to-call tapBrowser-side event on the tel: link. Cheap, immediate, and usually missing.
Call connectedFrom the call platform, with campaign attribution.
Call qualifiedDuration threshold or a disposition from the office.
Job attendedServer-side from the job system.
Invoice valueReal revenue, uploaded as the conversion value.

Google Ads · Plumbers · diagnose

Diagnostic order — Google Ads · Plumbers

  1. 01

    Count records carrying gclid, gbraid and wbraid

  2. 02

    tel: links with no event

    The customer converts and nothing records it. The most common single fault in this vertical.

  3. 03

    A sticky mobile call bar outside insertion's reach

    Hard-coded, so those calls arrive unattributed.

  4. 04

    Every call counted equally

    Wrong numbers and sales calls dilute the signal bidding learns from.

  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 · Plumbers · prove

How it gets proven — Google Ads · Plumbers

Source of truth

your job management system's completed jobs and invoices

  • Click-to-call events confirmed firing on a real mobile device.
  • Number insertion confirmed on every template including the sticky bar.
  • A live test call attributed to the correct campaign.
  • Completed jobs reconciled against the job system for a closed month.
  • The match rate on the upload, not the success message read directly, not inferred from an upload succeeding.

Google Ads · Plumbers · free audit

What we check in the free audit

  • Count records carrying gclid, gbraid and wbraid
  • tel: links with no event
  • A sticky mobile call bar outside insertion's reach
  • Every call counted equally
  • Read the match rate on the upload, not the success message

Checked against

your job management system's completed jobs and invoices

Get my free conversion tracking audit

Free30 minutesNo obligation

Google Ads · Plumbers · when not to buy

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

  • If Google Ads already reports conversions that reconcile against your job management system's completed jobs and invoices 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 · Plumbers · what we deliver

What gets built — Google Ads · Plumbers

  • Click-to-call events on every tel: link

    Verified on a real mobile device.

  • Dynamic number insertion across all templates

    Header, footer, sticky call bar.

  • Qualification threshold agreed

    Duration, or the job system's outcome.

  • Completed jobs uploaded as offline conversions

    With invoice value.

  • 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 job management system's completed jobs and invoices. Miss it and we keep working at no cost.

Get my free conversion tracking audit

From $400 · See packages

FAQ

Google Ads · Plumbers questions, answered

Use call assets with Google forwarding numbers and a call conversion with a minimum duration. To send the job outcome back, import call conversions using caller ID and call start time.

Free · 30 min

Get Google Ads reporting what plumbing businesses actually earn

Free30 minutesNo obligation