Garage Door Repair · Call Tracking

Stop Guessing Which Marketing Works

Finally knowing which ads make the phone ring

A garage door repair company was spending across Google, print, and vehicle wraps, but every lead came in as a phone call with no source attached. We put call tracking on every channel, and for the first time the owner could see exactly what made the phone ring.

Results at a glance:

  • Source coverage added across web and named offline channels
  • Blended cost per call down 33%
  • Wasted offline spend cut on channels that did not perform
  • Live in 1 to 2 weeks
Garage door repair call tracking connecting phone calls back to website, print, and vehicle wrap sources
Before and after garage door repair call tracking showing untracked calls versus per-channel attribution

The Challenge

The owner was spending real money across several channels at once, but every lead showed up the same way: a phone call with no clue where it came from. Google, print, and the vehicle wraps all looked identical in the pipeline. Every budget decision was a guess, and the guesses were expensive.

With no way to trace a call back to its source, a few problems were quietly draining the budget:

  • No call tracking meant no attribution on any channel
  • Good and bad channels looked exactly the same
  • The client kept funding things that did not actually drive calls
  • There was no cost-per-call number to compare sources against
  • Ad and print spend was allocated on gut feel, not data

The Solution

We set up call tracking across every channel so each call carried its source with it. Dynamic number insertion handled the website, unique numbers covered the offline channels, and everything tied back to GA4 and Google Ads so the owner could finally see cost per call by source. Here is what went into it.

  • A unique tracking number for each offline channel
  • Dynamic number insertion on the website
  • Call recording so lead quality could be judged, not just counted
  • Every number tied back to GA4 and Google Ads
Dynamic number insertion swapping phone numbers by source on a garage door repair website

Dynamic number insertion that ties each web call to its source

For website visitors, a single static phone number tells you nothing about who called or why. Dynamic number insertion swaps the number shown based on how the visitor arrived, so every web call is traced back to the campaign, keyword, or referral that sent it.

  • Source on covered calls: dynamic numbers preserve session-level source data when the pool, attribution window, cookies, and campaign tagging operate as configured.
  • Keyword-level detail: for Google Ads traffic, calls can be tied all the way down to the search that triggered them, which is where the real budget decisions live.
  • No visitor friction: the swap is invisible to the caller, who just dials the number on the page and reaches the same business as always.
  • Clean data into GA4: each tracked call flows into GA4 and Google Ads as a real conversion, so bidding and reporting run on actual phone leads.

Unique numbers for print, wraps, and signs

Offline channels are where most companies fly blind. We gave each one its own dedicated trackable number so print, vehicle wraps, and signage each reported their own calls, side by side with the digital channels.

  • One number per channel: the flyer, the wraps, and the yard signs each got a distinct number, so a call could only have come from one place.
  • Offline meets digital: with unique numbers, offline channels finally sat in the same report as Google Ads and could be compared apples to apples.
  • Cost per call by source: spend divided by tracked calls gave a clear cost per call for every channel, cheap or expensive.
  • Cut what does not work: channels that produced almost no calls were easy to spot and easy to defund, which is how the wasted offline spend got cut.
Unique tracking numbers for offline garage door repair channels feeding one report

How We Did It

01. Number setup per channel

A unique CallRail tracking number provisioned for each offline channel and a dynamic pool for the website.

02. Dynamic insertion

Dynamic number insertion added to the site so each visitor’s number matched their source.

03. Recording and tagging

Call recording and source tagging were enabled so covered calls could be reviewed for quality and connected to the available channel data.

04. Connect the stack

CallRail wired into GA4 and Google Ads so calls counted as real conversions.

05. Reporting dashboard

A simple cost-per-call-by-source dashboard built so the owner could act on it weekly.

Garage door repair call tracking dashboard showing 100 percent attribution and cost per call down 33 percent

The Results

Within a couple of weeks, the new tracking covered the measured web and named offline channels. Two sources produced most qualified calls, so the owner reallocated budget; blended cost per tracked call fell by a third during the reporting period.

Call attribution 0% to 100%
Blended cost per call -33%
Wasted offline spend Cut on dead channels
Build time 1 to 2 Weeks

Services & tools used: CallRail, dynamic number insertion, GA4, and Google Ads.

call tracking

Attribution became useful when it changed a budget decision

Tracking did not make every call perfectly attributable. It created a much stronger source-level view, with enough coverage to identify channels that deserved more or less spend.

  • Use a number pool large enough for the site's concurrent visitors.
  • Separate first-time callers, repeat callers, spam, and qualified jobs.
  • Treat offline numbers consistently or the comparison will be distorted.
Soft light grey background

Frequently Asked Questions

It should cover expected concurrent tracked visitors with a margin for traffic spikes and the attribution window. If the pool is too small, numbers are reused before sessions expire and sources can be assigned incorrectly. Monitor pool saturation after campaigns launch or budgets increase.
Repeat callers may use a saved number, customers switch devices, offline numbers get reused, cookies expire, and staff may transfer calls outside the tracked path. Call tracking materially improves evidence, but reporting should acknowledge unassigned and multi-touch calls instead of forcing every record into one source.
Identify repeat callers where the privacy policy and system allow, then report them separately from new-customer acquisition. Crediting a branded search campaign for a customer who saved the number after a prior job inflates marketing performance. Keep service and acquisition reporting connected but distinct.
No. Apply call dispositions or qualified-duration rules, then audit samples because duration alone can be misleading. A long vendor call is not a lead, while a short emergency booking may be valuable. Feed qualified outcomes into the dashboard and advertising platforms where possible.
Use a stable number for each channel, forward it consistently, keep it active for the life of the material, and document where it appears. Retiring a number while a vehicle wrap or sign is still visible creates lost calls and broken attribution. The customer experience takes priority over a tidy report.
Show spend, total tracked calls, new qualified calls, booked jobs, completed revenue where available, spam, and unassigned calls by source. Add enough volume context to avoid overreacting to small samples. The report should make the next budget decision obvious without pretending attribution is perfect.

How we built the call-attribution baseline

Tracking sources brought together

The attribution view combines dynamic number insertion for website visitors with dedicated numbers for print, vehicle wraps, and signs. Call logs and channel spending were then compared so the owner could see source-level call volume and blended cost per call.

Where call attribution can still be imperfect

Attribution depends on number-pool coverage, correct campaign tagging, consistent use of offline phone numbers, and staff handling of repeat callers. The 33% lower blended cost per call reflects decisions made from this setup; it does not mean every future call will have a single uncontested source.

Editorial review: Gilmedia strategy team. First published July 15, 2026.

Primary references

Related Gilmedia services

Free call tracking review

Spending on ads but flying blind?

We will show you exactly which channels drive your calls and which are wasting budget. Stop guessing and start funding what actually works.

Get your free audit

No obligation. A 15-minute call and a clear action plan.

Services in this project: AI Phone Receptionist · Google Ads Management