
Most law firm websites have GA4 installed. Almost none of them are measuring the right things.
Installing GA4 and measuring your firm's marketing performance are two different things. The default setup tracks sessions, pageviews, and scroll depth. Those numbers tell you how many people visited the site. They tell you almost nothing about how many of them became clients.
Here is what a complete GA4 configuration looks like for a law firm — and the gaps that make most setups useless for anything beyond vanity metrics.
Why Default GA4 Fails Law Firms
GA4's automatic event tracking captures clicks, scrolls, file downloads, and video plays out of the box. What it does not capture automatically:
- Form submissions and which form a user completed
- Phone number clicks on mobile
- Chat widget initiations and completions
- Intake page views vs. general page views
- Thank-you page confirmations that verify a form actually submitted
- Returning visitors who previously contacted the firm
For a law firm, every one of those events is more valuable than a pageview. A prospect who clicked your phone number on mobile and called is worth tracking. A user who loaded your contact page but bounced without submitting is worth distinguishing from one who converted. Default GA4 cannot tell those stories.
The Events Every Law Firm GA4 Property Needs
These are the custom events that transform GA4 from a traffic counter into an actual lead measurement system:
- generate_lead — fires on confirmed form submission, not on thank-you page load. Includes form_type parameter to distinguish contact vs. intake vs. chat.
- phone_click — fires when a user clicks a tel: link. Parameterized by page location so you know which page drove the call.
- chat_start and chat_complete — tracks when a visitor opens a chat widget vs. actually completes an interaction.
- intake_page_view — a named event for any visit to your intake or consultation request page, separate from general pageviews.
- outbound_click — tracks when a user clicks to an external directory, review site, or referral link.
- scroll_depth_qualified — fires at 75% scroll on your practice area pages, identifying visitors who read enough to be considered engaged.
Marking the Right Events as Conversions
In GA4, you can mark any event as a key event (formerly called a conversion). Most firms mark generate_lead and phone_click as key events. This is correct — but incomplete.
The missing piece is weighting. A 90-second phone call from someone on your personal injury intake page is not the same conversion signal as a 12-second click from someone who was on your blog. Both show as conversions in the default view. Without segmenting by call duration, page context, and session source, your conversion data will overstate performance across the board.
The solution is custom dimensions. Add call_duration, form_type, and source_page as event-level dimensions so every conversion carries context you can filter on in reports.
Connecting GA4 to Your Other Tools
A GA4 property that lives in isolation is only half useful. The configuration that gives law firms real decision-making power connects GA4 to:
- Google Ads — so campaign performance is measured against actual lead events, not just clicks
- Google Search Console — so you can see which organic queries are driving your highest-converting sessions
- Your CRM or case management system — via offline conversion import, so signed retainers can be attributed back to the original traffic source
- Call tracking (CallRail or WhatConverts) — so call events feed into GA4 with source and keyword data attached
When these connections exist, you can answer the question that matters: which channel, campaign, and keyword is generating the cases worth taking — not just the most form fills.
The GTM Container That Makes This Work
None of the custom events above are configured directly in GA4. They are deployed through Google Tag Manager. This distinction matters because it determines how maintainable your tracking setup is over time.
A properly structured GTM container for a law firm organizes tags by event type, uses consistent naming conventions that match GA4 parameter names, includes trigger conditions that prevent events from firing on page load or on admin users, and is documented so that anyone who touches the site after the initial setup knows exactly what is there and why.
Most setups we audit were built with good intentions and are impossible to maintain. Tags fire on the wrong elements, variable names do not match GA4 parameters, and there is no documentation of what any tag does. The result is a GA4 property full of events that look real but cannot be trusted.
How to Know If Your Current Setup Is Reliable
A quick way to pressure-test your GA4 data: submit a test form on your own website, then check GA4 real-time reports to confirm the generate_lead event fired exactly once with the correct parameters. Then call your own phone number from mobile and check that phone_click fired with the right page context.
If either test fails, or if the events fire but the parameters are missing, your conversion data is not reliable — and any budget decisions made from it are based on incomplete information.
VerdictIQ builds and validates GA4 and GTM configurations for law firms from scratch. If you want to know that your data is accurate before your next campaign review, see how we set up law firm revenue infrastructure.
