Most contractor websites have no idea if anyone visits them.
The site is up. The phone number's there. Maybe there's a contact form. But whether it's getting 50 visitors a month or 500 — zero visibility. Google Analytics fixes that. Here's how to set it up and, more importantly, which four reports to actually look at once you do.
Why analytics matters more than you think
There's a specific problem contractors run into: spending money on local SEO or Google Ads without any way to verify it's working.
You can run call tracking to know which channel drives calls. But call tracking doesn't tell you whether your website is even attracting the right traffic. It doesn't show you that 70% of your visitors leave after viewing only the homepage. It doesn't show you that your HVAC repair page gets 12 organic visitors a month while your competitor is getting 400.
GA4 fills that gap. It tells you where traffic comes from, which pages people actually visit, and whether the visitors who find you are doing anything useful — like clicking your phone number.
Setting up GA4: the 15-minute version
Step 1: Create a GA4 property
Go to analytics.google.com. Sign in with the Google account that owns your business. Click the gear icon (Admin) in the bottom left.
Under "Property," click "Create Property." Enter your business name, select your time zone and currency, then choose "Web" when asked about your platform. Enter your website URL and give the stream a name.
Google will create a Measurement ID for you — it looks like G-XXXXXXXXXX. Save that.
Step 2: Install the tracking code
You have three options:
Option A — Google Site Kit (WordPress): Install the Site Kit plugin, connect your Google account, and it installs GA4 automatically. No code required.
Option B — Google Tag Manager: If your site already uses GTM, add a new Google Analytics 4 Configuration tag, paste your Measurement ID, and set it to fire on all pages.
Option C — Direct code install: Paste this into the <head> section of every page, replacing G-XXXXXXXXXX with your Measurement ID:
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>
Step 3: Verify it's working
Go back to GA4. Click "Reports" → "Realtime." Open your website in a new tab. You should see yourself appear as an active user within 30-60 seconds. If you see a user, the tracking is live.
Step 4: Connect Google Search Console
This is worth doing immediately. In GA4, go to Admin → Property Settings → Product Links → Search Console Links. Connect your Search Console property. This adds organic keyword data to your GA4 reports — you'll be able to see which Google searches are sending traffic to which pages.
If you haven't set up Search Console yet, that's a prerequisite. Go to search.google.com/search-console and verify your site.
The four reports that actually matter for contractors
GA4 has dozens of reports. Most of them are irrelevant for a contractor site. Here are the four that give you real information.
Report 1: Acquisition → Traffic acquisition
What it shows: Where your visitors come from — Organic Search (Google unpaid), Direct (typed URL or bookmarks), Paid Search (Google Ads), Referral (other websites linking to you), Social (Facebook, LinkedIn, etc.)
What you're looking for: Organic search should be growing. If you've been doing local SEO for 6+ months and organic is flat, something isn't working. The split between organic and direct tells you if you're building brand awareness or purely depending on search visibility.
How often to check: Monthly. Compare month-over-month and year-over-year.
Report 2: Engagement → Pages and screens
What it shows: Which pages get the most traffic and how long people stay.
What you're looking for: Your service pages should be getting organic traffic. If your homepage gets 200 visits and your HVAC repair page gets 4, you don't have service page SEO working. High "average engagement time" (60+ seconds) on service pages means people are reading. Under 15 seconds means they bounced immediately — the page either loaded too slowly or didn't match what they searched for.
How often to check: Monthly.
Report 3: Engagement → Events
What it shows: Every action visitors take — page views, clicks, scrolls, form interactions, outbound link clicks.
What you're looking for: After you configure phone click tracking (see FAQ below), you want to see that call events are happening and correlate with your busiest times. If traffic goes up but call events don't, either the traffic quality dropped or something on the page is breaking before people decide to call.
How often to check: Weekly once conversion tracking is set up.
Report 4: Explore → Funnel exploration (or the simple Conversions report)
What it shows: How many visitors convert versus how many don't.
What you're looking for: A contractor site with decent traffic and zero tracked conversions usually means the tracking isn't set up right, not that nobody is calling. Once conversion tracking is working, a 2-5% conversion rate (visitors who click to call or fill out a form) is healthy for a service area business. Under 1% usually means a page quality or trust signal problem.
Setting up conversion tracking
GA4 tracks page views automatically. Phone calls and form submissions need a little extra setup.
Phone number clicks: In GA4, go to Configure → Events → Create Event. Name it phone_click. Set the condition to: event name equals click AND page_location contains tel:. This captures every tap on a phone number link (assuming your phone number is a clickable tel: link — it should be, especially for mobile visitors).
Once the event exists, go to Configure → Conversions → click the toggle next to phone_click to mark it as a conversion.
Form submissions: If your contact form sends visitors to a thank-you page after submitting, create an event that fires when the page URL contains your thank-you page path. If it doesn't redirect, you'll need Google Tag Manager to detect the form submission event.
Why this matters: Once conversions are set up, you can connect your Google Ads campaigns to GA4 and see cost-per-conversion by campaign — which is a completely different level of data than just knowing which keywords got clicks.
What the data should look like after 30 days
For a typical contractor site with local SEO in progress:
- Sessions: 200-800/month for a single metro area, depending on competition and how long SEO has been running
- Organic search %: Should be 40-60% of total traffic within 6-12 months of solid SEO work
- Direct %: 15-25% is healthy — reflects word of mouth and repeat visitors
- Engagement rate: 50%+ means more than half of visitors are actually engaging (scrolling, clicking) rather than bouncing immediately
- Conversion rate: 2-5% if tracking is set up correctly
If your numbers are way below these, you have a diagnosable problem: either not enough traffic (SEO issue), wrong traffic (keyword targeting issue), or traffic that doesn't convert (page quality or trust issue). Each is fixable, but you need the data to know which one it is.
GA4 is the baseline that makes everything else measurable. It's also what the site health audit module uses to benchmark your current performance against where you should be. Run the audit and you'll see exactly where your traffic and engagement stands against the median in your trade.
Connecting GA4 to the rest of your marketing stack
Once GA4 is running, two connections are worth making immediately:
Google Ads: Link your Google Ads account to GA4 (Admin → Product Links → Google Ads Links). This lets you see which campaigns, ad groups, and keywords generate actual sessions and conversions — not just clicks. Combined with call tracking, you'll have the full picture of what your ad spend is buying.
Search Console: Already mentioned above, but worth re-emphasizing. Search Console shows you which queries your pages rank for and how many impressions you're getting. GA4 alone shows you which sessions came from organic search. Together, they show you: "We rank for [HVAC repair near me], we got 800 impressions, 40 clicks, and 2 of those clicked to call." That's actionable data.
The measurement stack for a contractor doesn't need to be complicated. GA4 + Search Console + call tracking covers 95% of what you need to know.
Ready to see how your site is performing right now? Run the free brand audit — it checks your site health, GBP strength, keyword coverage, and AI visibility in one pass.
Want to understand your local SEO results before diving into GA4? Start there — the two systems work best in combination.
