Guides

By Jared DeValk · Last reviewed 2026-09-07

Tracking & Attribution for Paid Media

On this page
  1. Why does this matter more than the campaigns?
  2. The four layers
  3. Call tracking is not optional
  4. Offline conversion import — the one nobody sets up
  5. What to actually set up, in order
  6. What about UTM parameters?
  7. The attribution problem nobody solves
  8. Frequently asked questions

Without tracking, you're not running campaigns — you're making donations and hoping. This is the least interesting page in the paid media guide and the one that determines whether everything else works. Get it right and every subsequent decision is evidence-based. Skip it and you'll spend two years optimising toward the wrong thing.

Set this up before you spend a dollar. Not after.

Why does this matter more than the campaigns?

Because ad platforms optimise toward whatever you tell them to count.

If you count form fills, Google will find you the cheapest form fills — which is usually the least qualified traffic in your market. If you count booked jobs, it finds you booked jobs. Same budget, same campaigns, completely different outcome.

This is the single biggest lever in paid media and most service businesses never pull it.

The four layers

Layer What it captures Without it
Conversion tracking Form submissions, calls, bookings You're optimising blind
Call tracking Which channel produced which phone call Phone-driven businesses can't attribute anything
CRM integration Which leads became customers You optimise for leads instead of revenue
Offline conversion import Feeds closed jobs back to the ad platform Platforms find cheap leads, not good ones

Most businesses have the first. Some have the second. Very few have the fourth, and it's where the biggest gains sit.

Call tracking is not optional

For a service business, most conversions are phone calls. A tracking setup that only counts form submissions is measuring the minority of your leads and drawing conclusions from it.

What you need:

  • Dynamic number insertion — the number on your site changes based on how the visitor arrived, so a call from a Google Ad is distinguishable from one from your map pack listing
  • A dedicated number on your Google Business Profile, separate from paid channels
  • A dedicated number for Local Service Ads
  • Call recording where legally appropriate, because listening to twenty calls teaches you more about lead quality than any report

Cost is around $45 a month and up. It is the highest-return $45 in your marketing stack — without it, a phone-driven business genuinely cannot tell which channel works.

We use CallRail for most clients. Alternatives and comparisons in call tracking software.

Offline conversion import — the one nobody sets up

Here's the problem it solves.

Your Google Ads account knows a form was submitted. It does not know that lead was a wrong number, or an out-of-area enquiry, or someone who booked a $12,000 job. So it optimises toward more form submissions, treating all of them as equal.

Offline conversion import sends the outcome back. When a lead becomes a booked job in your CRM, that result flows to Google and Meta, and their bidding starts finding people like the ones who actually bought.

The effect is usually significant: cost per lead often rises while cost per booked job falls, which is the trade you want and the one that looks wrong on a shallow report.

What it requires: a CRM that tracks lead source and outcome, a connection to the ad platform (native, Zapier, or direct API), and enough conversion volume for the platform to learn from — roughly 30 closed jobs a month is where it starts working well.

If you're running CRM and automation, this is part of it.

What to actually set up, in order

  1. Google Analytics 4 with conversion events defined for form submissions and calls
  2. Call tracking with dynamic number insertion and separate numbers per channel
  3. Google Ads conversion tracking, importing from GA4 or set directly
  4. Meta Conversions API — server-side. Browser-only pixel tracking has been unreliable for years
  5. CRM lead source capture — every lead tagged with where it came from, automatically
  6. Offline conversion import once you have volume
  7. One dashboard showing leads, cost per lead and cost per booked job by channel

Steps 1 to 3 are the minimum before spending anything. Steps 4 to 7 follow within the first quarter.

What the stack costs:

Component Cost When
Google Analytics 4 Free Before first spend
Google Ads conversion tracking Free Before first spend
Call tracking with dynamic numbers $45+/mo Before first spend
Meta Conversions API Free — developer time only First month
CRM lead source capture Usually included in your CRM First month
Offline conversion import Free — setup time only Once at ~30 closed jobs/mo
Reporting dashboard Free to $50/mo First quarter

Under $100 a month for the whole stack, and most of it is one-time setup rather than ongoing work. Compare that against the spend it makes decisions about.

What about UTM parameters?

Use them on everything you control — email links, social posts, directory listings, QR codes.

Keep the convention boring and consistent: utm_source is the platform, utm_medium is the type, utm_campaign is the specific effort. Write it down somewhere so you use the same spelling twice. Half the attribution problems we find are facebook versus Facebook versus fb in the same account.

Capture UTMs as hidden fields on every form so they land in your CRM alongside the lead.

The attribution problem nobody solves

Multi-touch attribution is genuinely hard and most reporting lies about it.

A homeowner sees your Meta ad, forgets about it, searches your name three weeks later, clicks your Google Ad, and calls. Last-click gives Google Ads the credit. First-click gives Meta the credit. Neither is right.

For a service business with a short cycle, last-click is usually good enough. For anything with a long consideration window — remodeling, B2B, estate planning — it will systematically undervalue your demand-creation channels and lead you to cut the thing that was working.

Two practical defences:

  • Ask people. A "how did you hear about us" field on your intake form is imperfect but it's real data, and it frequently contradicts your dashboards in useful ways
  • Watch blended numbers. Total spend divided by total new customers, tracked over time. It's crude and it can't be gamed by attribution settings

Frequently asked questions

Do I really need call tracking?

For a service business, yes. Most of your conversions are phone calls, and without call tracking you can't tell which channel produced them. It's around $45 a month and it's the highest-return line item in the stack.

What is offline conversion import?

Sending the outcome of a lead — booked, not booked, job value — back to the ad platform so bidding optimises toward customers rather than form submissions. It typically raises cost per lead and lowers cost per booked job.

Why did my cost per lead go up after setting this up?

Because the platform is now finding better leads rather than cheaper ones. Check cost per booked job — it should be falling. That's the number that pays you.

Is Google Analytics enough on its own?

No. GA4 tells you about website behaviour but can't connect a phone call to a booked job. You need call tracking and CRM integration alongside it.

Should I use last-click attribution?

It's usually adequate for short-cycle service businesses. For long consideration cycles it will undervalue demand-creation channels like Meta and YouTube — supplement it with a "how did you hear about us" field and blended cost per customer.

How much does all this cost?

Call tracking from about $45 a month, GA4 and platform conversion tracking are free, and CRM integration is usually included in whatever CRM you're running. Under $100 a month for the whole stack in most cases.

What if my CRM doesn't support this?

Most modern CRMs do natively, and Zapier bridges most gaps. If yours genuinely can't capture lead source and outcome, that's a strong argument for changing it — see CRM software.

Can I do this myself?

Yes. It's fiddly rather than difficult, and it's a weekend of work. The parts people get wrong are duplicate conversion counting and inconsistent UTM naming, both of which are avoidable with care.


Written by Jared DeValk, founder of Nashville Digital. Last reviewed September 2026. Updated quarterly.