Lead Gen Conversion Tracking Audit Checklist
A step-by-step framework for closing the measurement gap between your Google Ads dashboard and your actual revenue.
If you optimize Google Ads for form fills and phone calls, you're telling the algorithm: "find me people who fill out forms." Google gets very good at that. It has no idea whether those people ever became paying customers.
In home services - and in most lead-gen verticals - close to half of what Google Ads counts as a "conversion" is noise. Empty calls. Existing customers. Services you don't offer. Your real cost per job can be 2-3x higher than your dashboard suggests.
This checklist walks through the five moves that close that gap, in the order we run them with real accounts.
Audit Your Conversion Actions
Before you change anything, look at what you're already telling Google. Pull up your Conversions screen in Google Ads and ask:
- Which actions are set to "Primary"? Those are what your bid strategy is optimizing toward - everything else is just observed.
- Does every primary represent a real business outcome? Raw form fills and raw phone calls usually don't. A booked appointment, a quote, or a closed job does.
- Are you double-counting? Multiple primaries firing off the same submission inflate volume and confuse the algorithm.
- What's the count/value setting? "Every" vs "One" matters - especially for calls where the same number can call twice in a day.
- Are any conversions firing from off-site interactions you don't want optimized to? Newsletter signups, chat opens, button clicks.
Map Your Pipeline Stages With Values
You don't have to wait until a job closes to feed data back to Google. Every stage in your pipeline has predictive value, and you should assign each a number you can defend.
- Lead (form fill / call): $0. Stop optimizing here alone - this is the input, not the outcome.
- Appointment Booked: ~$50 (or your historical "booked-to-job" close rate x average job value, then conservative).
- Appointment Completed (showed up): ~$100.
- Quote Given: ~$200.
- Job Sold: Actual revenue - $3,000 to $15,000+ in home services, whatever it is for you.
Implement GCLID Capture
You cannot send conversions back to Google without the Google Click ID. This is the bridge between the ad click and the closed job. Check that it's being captured on every entry point:
- Forms: Hidden GCLID field, populated from the URL parameter on landing, stored with the lead in your CRM.
- Phone calls: Your call tracking (CallRail, WhatConverts, etc.) almost certainly captures GCLID automatically - confirm it's appearing on call records.
- Chat / booking widgets: Often the weakest link. Test that GCLID survives the handoff from your site into the third-party tool.
- CRM field: Make sure there's a dedicated field for GCLID on the lead record. If your team manually creates leads from voicemails or texts, that field stays blank - and those leads can't be imported.
Run Your First Offline Conversion Import
You don't need an API integration on day one. A monthly CSV upload works and gives Google enough signal to start learning.
- Pull last month's closed jobs from your CRM with: GCLID, conversion name, conversion time (when the job closed, not when the lead came in), conversion value, currency.
- Create the matching conversion action in Google Ads first (e.g., "Closed Job - Manual Upload"), set source to "Import - Other data sources or CRMs."
- Download Google's CSV template from the Conversions > Uploads screen, paste your data in, and upload. Use "Click conversions" (not call conversions) for GCLID-based imports.
- Watch for errors in the upload report - the most common: time stamp format wrong, GCLID expired (90-day window), or the conversion name doesn't match exactly.
- Repeat monthly until you're ready to automate via Zapier, the API, or a native integration (ServiceTitan, HouseCall Pro, HubSpot, Salesforce all have options).
Test Value-Based Bidding
Once you have at least 30 imported conversions with values flowing in, you've earned the right to switch from volume-based to value-based bidding. The instruction to Google changes from "get me more leads" to "get me more revenue."
- Prerequisite check: 30+ conversions with values in the last 30 days, GCLID capture working end-to-end, at least one full cycle of OCI uploads.
- Switch the bid strategy: Maximize Conversions -> Maximize Conversion Value. If you've been on Target CPA, switch to Target ROAS using your historical revenue/spend ratio as the starting point.
- Demote raw lead conversions to secondary at the same time you switch. If raw leads are still primary, Google will keep optimizing for them.
- Expect a 2-3 week re-learning period. Volume usually dips first, then revenue and CPL recover.
- Watch in the first 30 days: Conversion value column, ROAS, cost per booked job (not just CPL), and search terms drift - the algorithm is now hunting different queries.
One More Thing
The biggest lift here isn't technical - it's the decision about what your conversion signal should be. Your primary conversion is your most important targeting decision in the account. Choose it deliberately, then build the pipeline back to it.
Questions? Found a gap I didn't cover?
I'm happy to talk through any of this. The fastest way to reach me is a DM on LinkedIn.
DM Me on LinkedIn