
Ask most local business owners where their best jobs come from and you’ll get a guess: “Mostly Google, I think. Some referrals.” That guess decides where thousands of dollars go every month. GA4 (Google Analytics 4) can replace the guess with real numbers, if it’s set up to track what actually matters: calls, quote requests, and bookings.
This post is part of our Local Growth Engine guide. It’s a plain-English setup for service businesses, not a developer manual.
Start with definitions, then tools

Before touching GA4, write down four definitions:
| Stage | Example definition |
|---|---|
| Lead | A call over 60 seconds, a quote request, or an online booking from a real person |
| Qualified | In your service area, for a service you offer |
| Booked | A job or estimate on the calendar |
| Completed / sold | Job done and invoiced |
GA4 can track the first stage well. Booked and completed usually live in your CRM or field-service software, and you’ll connect them later.
A practical install order
- Install GA4 on every page (set up Analytics).
- Track form submissions as an event (ideally on a confirmed submit, not a button click).
- Track clicks on phone numbers (tap-to-call) as an event.
- Track online bookings if you use a scheduler.
- Mark the important ones as key events (create or modify key events).
- Link GA4 to Google Ads if you run ads, and decide which conversions Google Ads should optimize for.
Google’s list of recommended events includes lead-related events like generate_lead, which is a good naming starting point.
What not to mark as a key event
- Page views of the contact page.
- Scrolls, video plays, or time on site.
- Clicks on the “Services” menu.
- Every button click.
These are useful for diagnosing pages, but they’re not leads. Too many key events make reports meaningless. Google explains the difference between key events and conversions in conversions vs. key events.

Calls, forms, and bookings: the local business trio
- Calls: GA4 can count tap-to-call clicks, but not whether the call connected or how long it lasted. For that, use call tracking (a forwarding number) and, for ads, Google Ads call conversion tracking. More in call tracking & offline conversions.
- Forms: track confirmed submissions only, and filter obvious spam.
- Bookings: if your scheduling tool runs on another domain, make sure the booking confirmation is tracked (or passed back) so you don’t lose the source.
A monthly reporting rhythm owners will actually use
Once a month, look at one simple table:
| Source | Leads | Booked jobs | Notes |
|---|---|---|---|
| Google organic + Business Profile | |||
| Google Ads / Local Services Ads | |||
| Referrals / direct | |||
| Email / text follow-up | |||
| Other |
GA4 fills the “Leads” column. Your CRM fills “Booked jobs.” That’s enough to make good decisions. For how to credit leads that touch more than one channel, see multi-channel attribution and Google’s attribution basics.
Common failure modes
- Forms counted twice (thank-you page + form event).
- Phone clicks counted, but nobody tracks actual calls.
- GA4 installed, but key events never marked.
- Booking tool on a separate site with no tracking.
- Spam submissions counted as leads.
- Nobody looks at it.
Privacy and professionalism
Collect only what you need, keep a privacy policy that matches your tracking, and respect consent requirements where they apply. Don’t put customer names, phone numbers, or emails into GA4 events. Marketing claims built on your data should be truthful (FTC advertising guidance).
7-day DIY checklist
- Write down your lead definitions.
- Confirm GA4 is on every page.
- Set up form submit and phone click events.
- Mark 2–4 key events, no more.
- Submit a test form and tap your phone number on mobile; confirm both show up.
- Link GA4 to Google Ads (if running ads).
- Build the monthly table above.

Trade notes
- HVAC, plumbing, electrical: most leads are calls. Call tracking matters more than form tracking. See how we measure plumbing marketing, from the first call on.
- Roofing and contractors: estimate requests and booked inspections are the key events.
- Cleaning and landscaping: quote forms and online bookings dominate; track recurring sign-ups if you can.
- Auto repair: online appointment bookings plus calls.
- CPA firms and insurance agencies: booked appointments and quote requests.
How this unlocks the Growth Engine
Once leads are tracked by source, you can compare SEO, ads, and follow-up on the same scoreboard, send booked jobs back to Google Ads, and see whether faster follow-up (speed-to-lead) actually lifts booked jobs.
QA tests before you trust the data
- [ ] Submit a test form: does exactly one event fire?
- [ ] Tap the phone number on a phone: does the event fire?
- [ ] Book a test appointment: does the source carry through?
- [ ] Check real-time reports while testing.
- [ ] Compare a week of GA4 leads to what the office actually received.
Naming conventions that save future you
Use clear, consistent event names: generate_lead (form), phone_click, booking_complete. Add parameters for the form name or service when helpful. Document them in a shared note.
When to hire help vs. DIY
DIY is fine for a simple site with one form and a phone number. Get help if you have multiple forms, a booking tool on another domain, call tracking, or you’re spending real money on ads. That’s exactly the kind of tracking fix we handle as a one-time Growth Project.
Spam and junk on forms
Add basic spam protection, ignore submissions with obviously fake info, and review a sample each month. If spam is counted as leads, every channel looks better than it is.