Ad platforms love reporting clicks and "results". You need one answer: which spend brought in customers who paid? This lesson covers the least tracking a local business can get away with, plus a weekly routine for deciding what to keep. It won't make a bad campaign profitable, but it will stop you guessing.
Step 1: decide what counts as a lead
Before you track anything, agree on what you're counting. For most local businesses that's:
- Calls lasting long enough to be a real enquiry (for example, 60 seconds or more);
- Forms submitted (website or Instant Form);
- Messages started (WhatsApp, Messenger, text);
- Bookings made online.
Then add the step no ad platform can see: which leads became paying customers. That usually lives in your booking system, your CRM or a spreadsheet on the office computer.
Step 2: the Meta pixel and Conversions API
The pixel
The Meta pixel is a snippet of code on your website that tells Meta when someone who saw or clicked your ad does something on your site. Meta defines standard events for this. Three matter for local businesses:
| Event | Meta's description |
|---|---|
| Lead | "When a sign up is completed." |
| Contact | "When a person initiates contact with your business via telephone, SMS, email, chat, etc." |
| Schedule | "When a person books an appointment to visit one of your locations." |
Fire Lead when a form is submitted (on the thank-you page), Contact when someone taps your phone number or chat button, and Schedule when a booking goes through.
The Conversions API
The pixel runs in the visitor's browser, so it only reports what that browser sends. The Conversions API (often "CAPI") sends events from your server or booking system instead. Meta's documentation says: "For optimal ad performance, we recommend that advertisers implement the Conversions API alongside their Meta Pixel."
Send the same event both ways and Meta deduplicates it, as long as the pixel's event ID and name match the server event's event_id and event_name, within 48 hours of the first one arriving. Some website builders and booking tools have a Conversions API connection you can switch on without code. Ask yours.
Health and wellness businesses: Meta restricts what some advertisers in this area can share and optimize for (covered in Meta ads for local services). Check Events Manager for restriction notices before relying on website events.
Step 3: call tracking
For a lot of local businesses, most leads are phone calls. Calls are also the hardest thing to trace back to an ad.
Google Ads call tracking
Google Ads offers several types of phone call conversion tracking:
- Calls from ads: calls made from call assets, location assets or call-only ads, using a Google forwarding number.
- Calls to a number on your website: after someone clicks your ad, your website shows a Google forwarding number in place of your normal number, so the call can be tied to the ad.
- Clicks on your number on your mobile site: counts taps, not completed calls.
- Imported calls: calls tracked in another system and imported.
You set a minimum call length to count as a conversion. That filters out wrong numbers and quick hang-ups.
Third-party call tracking
Call tracking services give you separate phone numbers for different sources (Google Ads, Meta, a newspaper ad, your van wrap) that forward to your main line and log every call.
Be careful with your Google Business Profile number. Google's guidelines say the number must be "under the direct control of the business" and that you shouldn't use numbers that redirect or refer users elsewhere. Those guidelines don't mention call tracking numbers directly, so we can't tell you exactly where Google draws the line. The cautious approach: keep your main local number as the primary number on your profile, and if you use a tracking number anywhere on Google, make sure it's one you control that rings your business directly.
Low-tech option
Ask every caller "How did you hear about us?" and write it down. It's imperfect, but it catches word of mouth, which no tool can.
Step 4: UTM tags on every link you control
UTM parameters are tags added to the end of a link so Google Analytics knows where a visitor came from. Google Analytics Help lists five:
| Parameter | Purpose | Example |
|---|---|---|
utm_source | The referrer | facebook, google, newsletter |
utm_medium | The marketing medium | cpc, paid_social, email |
utm_campaign | The product, promo or campaign | spring_ac_tuneup |
utm_content | To tell ads or links apart | video_a, photo_b |
utm_term | The paid keyword | ac+repair |
A tagged link looks like this:
https://example.com/ac-tune-up?utm_source=facebook&utm_medium=paid_social&utm_campaign=spring_ac_tuneup&utm_content=video_a
Google notes that values are case-sensitive (Google and google show as different sources), so use lowercase everywhere and keep a shared list of the names you use.
Put them on Meta ad links, your Google Business Profile website link, email newsletters, QR codes on flyers, and links in social posts. (Google Ads auto-tagging, which Google says is on by default for new accounts, adds a click ID called GCLID to ad links, and GA4 prioritizes it over manual tags. Check your account settings before adding UTMs to Google Ads links.)
Step 5: a simple weekly report
Once a week, fill in one table. It takes ten minutes. Do it the same day every week.
| Channel / campaign | Spend | Leads | Cost per lead | Booked jobs | Cost per booked job | Revenue (if known) |
|---|---|---|---|---|---|---|
| Google LSAs | ||||||
| Google Search: heat pumps | ||||||
| Meta: Instant Form | ||||||
| Organic / referral (no spend) | n/a | n/a | n/a |
Spend and platform-reported leads come from the ad platforms. Booked jobs come from your own records, matched by phone number, name or the "how did you hear about us" answer. That's the column that matters: platforms count leads, and customers are the ones who pay you.
What to stop, what to scale
Pull up the targets from Ads 101: your break-even and target cost per lead or per customer. Then:
- Stop or rework anything that has spent at least your planned test budget and is above break-even cost per booked job. Change the offer, ad or landing page before giving it more money.
- Keep testing anything between target and break-even. Change one thing at a time.
- Scale gradually anything below target for several weeks. Raise budgets in steps and keep watching cost per booked job, because costs can rise as you spend more.
- Don't judge on one week. Small numbers jump around. Look at the last four weeks together.
- Watch quality, not just volume. If cost per lead falls but booked jobs fall too, you're buying worse leads.
No tracking setup can promise that twice the spend brings twice the customers. It can tell you, fairly quickly, when it doesn't.
A local example: a law firm's month of tracking
A small family law firm spends on Google Search, Meta and LSAs. Before tracking, the partners believed Meta was their best channel. Meta's dashboard showed the most "results", after all.
After a month with call tracking numbers, UTM tags, a Meta Lead event on the consultation form and a weekly table:
- Meta produced the most form leads but few booked consultations. Many were people hoping for free advice.
- LSAs produced fewer leads, nearly all phone calls, and the most booked consultations.
- Search sat in between, with one keyword driving most of the booked consultations.
The firm cut Meta spend, switched to a Higher intent form with qualifying questions, kept LSAs steady and moved Search budget to the strong keyword. Next month's table will show whether it worked.
Do this now
What's the difference between the Meta pixel and the Conversions API?
The pixel sends events from the visitor's browser; the Conversions API sends them from your server or booking system. Meta recommends using both, and deduplicates matching events.
Can I use a call tracking number on my Google Business Profile?
Google's guidelines don't mention call tracking numbers specifically, but say the number must be under your direct control and not redirect people elsewhere. The cautious approach is to keep your main local number as the primary number.
What are UTM parameters?
Tags added to a link (like utm_source and utm_campaign) that tell Google Analytics where a visitor came from. Values are case-sensitive, so use lowercase consistently.
Sources
- Meta pixel reference: standard events, Meta for Developers (checked Oct 2026)
- Conversions API, Meta for Developers (checked Oct 2026)
- Handling duplicate pixel and Conversions API events, Meta for Developers (checked Oct 2026)
- About phone call conversion tracking, Google Ads Help (checked Oct 2026)
- Guidelines for representing your business on Google, Google Business Profile Help (checked Oct 2026)
- About auto-tagging, Google Ads Help (checked Oct 2026)
- URL builders: collect campaign data with custom URLs, Google Analytics Help (checked Oct 2026)
Want this done for you? Start free