· 4 min read
Key takeaways
- GA4's default setup tracks pageviews, not leads, unless you configure form, call, and chat events manually.
- Google Tag Manager should sit between your website and GA4 so you can add tracking without touching site code.
- Call tracking numbers typically account for 20-40% of leads in home services and legal, and most sites don't measure them.
- Conversion data is only useful if it's segmented by channel, landing page, and campaign, not just totaled.
- A working lead-tracking setup takes 3-6 hours to build correctly and pays for itself the first time you cut a wasted ad channel.
Ask most business owners how many leads their website generated last month and they'll point to a traffic number in GA4. Traffic isn't leads. A site can pull 5,000 visits and produce twelve actual inquiries, and without proper tracking you have no way to know which of those visits mattered, let alone which channel or ad paid for them.
The fix isn't a new platform, it's configuring the one most businesses already have installed. Google Analytics 4 and Google Tag Manager, set up correctly, will tell you exactly which pages, campaigns, and keywords produced a form fill, a phone call, or a chat conversation. Here's how to build that setup and what to check once it's live.
Understand what GA4 tracks by default (and what it doesn't)
Out of the box, GA4 automatically tracks pageviews, scrolls, outbound clicks, and site search if enabled. It does not know that a submitted contact form, a clicked phone number, or a completed chat is a business outcome. Those are custom events you have to define, and if they're missing, your conversion reports will show zeros or wildly undercount real activity.
Set up Google Tag Manager as the control layer
GTM sits between your site and every tracking tool you use, GA4, Google Ads, Meta Pixel, LinkedIn Insight Tag. Instead of asking a developer to hard-code each tracker, you manage tags, triggers, and variables in one dashboard. This matters because lead tracking setups change constantly as you add landing pages or swap form vendors.
- Install the GTM container snippet once in your site header and footer
- Set up a trigger for form submission success (not just button click)
- Add a trigger for tel: link clicks to capture phone intent
- Configure a trigger for chat widget conversion events if you run live chat
- Push each trigger to GA4 as a named event, for example generate_lead
Build call tracking into the same system
For home services, legal, and healthcare, a large share of leads never touch a form, they call. Tools like CallRail or WhatConverts swap in a trackable number per session and report call outcomes through GTM into GA4, tied to the source and campaign that drove the visit. Call volume often represents 20-40% of total leads on service-business sites, invisible until this is wired in.
Define what actually counts as a lead
Not every form submission is a lead. Newsletter signups, job applications, and support tickets shouldn't be lumped in with sales inquiries when you're calculating cost per lead. Set up separate GA4 events for each form type based on its destination page or hidden form-name field, so reporting stays clean.
- 1.Map every conversion point on the site: contact form, quote request, phone click, chat, booking widget
- 2.Assign each a distinct GA4 event name
- 3.Mark true sales-relevant events as conversions in GA4 admin
- 4.Exclude internal traffic and known spam sources from reporting
Connect GA4 conversions to Google Ads for smarter bidding
Once real leads flow into GA4 as events, import those conversions into Google Ads as the optimization target instead of letting Smart Bidding chase clicks or pageview goals. Import generate_lead and phone_call separately, mark the rest non-primary, and give the algorithm roughly 30 conversions per campaign in a 30-day window before expecting stable performance. Campaigns bidding toward a real lead event routinely see a 15-30% improvement in cost per lead.
Audit the setup quarterly, not once
Tracking setups break silently. A form vendor update or a page builder change can strip out a GTM trigger without anyone noticing until lead volume drops. Build a 20-minute quarterly check: submit a test form and confirm the event fires in GA4's DebugView, click a tel: link on mobile and confirm it registers, and review realtime reporting after any site update. Catching a broken trigger within a week costs nothing; three months later means three months of spend with no attribution.
Segment the data by channel, not just total volume
Once events are flowing, the real value comes from GA4's exploration reports, breaking lead volume down by source/medium, landing page, and device. This is where you find that organic search converts at twice the rate of paid social, or that one landing page quietly outperforms the rest of the site. Without segmentation, you're just staring at a bigger, equally useless traffic number.
If your current reporting can't answer which specific campaign or page produced last month's leads, that's a setup problem, not a marketing problem, and it's usually fixable in a single working session. Happy to walk through your current tracking on a strategy call and tell you exactly what's missing.
Frequently asked questions
- Do I need Google Tag Manager if I already have GA4 installed?
- Yes, in almost every case. GA4 alone tracks pageviews and a handful of automatic events, but it doesn't know a form submission, phone click, or chat widget conversion is a lead unless you tell it. GTM is the tool that catches those actions and passes them to GA4 as events without requiring a developer to edit code every time.
- How long does it take to set up proper lead tracking?
- For a typical small business site with a contact form, a phone number, and maybe a chat widget, a clean build takes 3-6 hours including QA. Sites with multiple form types, gated content, or e-commerce checkouts take longer, usually 8-15 hours.
- Can I track phone calls that come from my website?
- Yes. Dynamic number insertion services like CallRail or WhatConverts swap in a tracking number for each visitor and report the call back to GA4 through GTM, tied to the session and source that generated it. Without this, calls show up as anonymous traffic with no attribution.
- What's the most common mistake businesses make with GA4 tracking?
- Counting every form submission as a lead, including spam and job applicants, then making budget decisions off inflated numbers. A clean setup filters submissions by form type and destination, and separates real sales inquiries from newsletter signups or careers page fills.
