On this page
- 01In this guide
- 02Define contact click, enquiry, qualified lead, quotation and won deal
- 03Give GSC, GA4 and CRM distinct reporting roles
- 04Create an event specification with exact success triggers
- 05Record attribution and consent-aware lead identifiers
- 06Send qualification outcomes using a supported implementation
- 07Build a weekly lead-quality report with clear denominators
- 08Test duplicates, spam, failed forms and returning users
- 09Explain attribution gaps and what the data cannot prove
- 10Frequently asked questions
- 11Next step
- 12Sources
Short answer: Qualified lead tracking works when each tool has one job. Use Google Search Console for organic search visibility, Google Analytics 4 (GA4) for website actions, and your CRM for sales qualification and outcomes. Record successful enquiries separately from contact clicks. Then connect lead records through a controlled identifier and consistent attribution rules. Search Console gives aggregated search data, so it cannot tell you the query behind each individual lead.
Most small businesses track “conversions” that are really button clicks, then wonder why the numbers never match sales. This guide sets up a measurement plan you can explain to your team: clear definitions, an event dictionary, a weekly report and the tests that keep the data honest. It covers measurement only. For which channels to use, see our lead generation guide for small businesses.
In this guide
Define contact click, enquiry, qualified lead, quotation and won deal
Write these definitions down before you build anything. Otherwise, every report will mean something different to sales and marketing.
- Contact click: someone taps a phone, email or WhatsApp link. It shows intent, not a lead.
- Enquiry: a form submits successfully, or a real conversation starts and is logged.
- Qualified lead: an enquiry that sales confirms meets your agreed criteria for fit and intent.
- Quotation: you sent a priced proposal.
- Won deal: the customer accepted and the work or order is confirmed.
Give GSC, GA4 and CRM distinct reporting roles
| Tool | Its job | What it cannot do |
|---|---|---|
| Google Search Console | Organic search impressions, clicks, CTR and position by query and page | Link a query to an individual visitor or lead |
| GA4 | Website sessions, traffic sources and on-site events such as enquiries | Know whether sales qualified or won a lead, unless you send that back |
| CRM | Each lead’s details, stage, owner, quotation and outcome | See search queries or on-site behaviour by itself |
Search Console’s Performance report aggregates data by property or by page, depending on the view (Search Console Help). Therefore, use it to find which pages and topics attract search traffic, and use GA4 and the CRM to judge which of that traffic produces leads.
Create an event specification with exact success triggers
GA4 has recommended events for lead generation. They include generate_lead, qualify_lead, disqualify_lead, working_lead, close_convert_lead and close_unconvert_lead (Google Analytics Help). Using these names also populates GA4’s lead acquisition report, which shows new, qualified and converted leads by channel (source).
Event dictionary
| Event | Fires when | Sent from | Key event? |
|---|---|---|---|
contact_click (custom) |
Phone, email or WhatsApp link is tapped | Website tag | No |
generate_lead |
Form submits successfully (thank-you state shown) | Website tag | Yes |
working_lead |
Sales first contacts the lead | CRM to GA4 | No |
qualify_lead |
Sales marks the lead qualified | CRM to GA4 | Yes |
disqualify_lead |
Sales marks the lead unsuitable, with a reason | CRM to GA4 | No |
close_convert_lead |
Deal is won | CRM to GA4 | Yes |
The trigger matters most. For example, generate_lead should fire on a confirmed successful submission, not on the button click. Check the current parameter list for each event in Google’s developer reference before you build, because recommended parameters can change.
Record attribution and consent-aware lead identifiers
To connect a CRM record back to a website visit, store a non-personal identifier with the lead. Commonly this is the GA4 client ID captured in a hidden form field, along with the landing page and UTM source. Follow your consent setup, so you only collect identifiers where the visitor’s choices allow it.
Never send personal information to GA4. Google’s policy prohibits passing data it could recognise as personally identifiable, including email addresses and phone numbers (Google Analytics Help). So names, emails, phone numbers and enquiry text belong in the CRM only, never in event parameters, page URLs or custom dimensions.
Send qualification outcomes using a supported implementation
CRM status changes happen offline, after the visit. To bring them into GA4, use a supported method. The GA4 Measurement Protocol sends server-side and offline events, and Google describes it as a way to augment normal tagging, not replace it (Google for Developers). Alternatively, some CRMs offer a ready integration. For Google Ads bidding on qualified leads, use Google Ads’ own offline conversion options rather than relying on GA4 alone.
If you cannot connect the systems yet, don’t worry. A simple monthly export from the CRM, joined to landing page and source, still gives you a useful quality view.
Build a weekly lead-quality report with clear denominators
A rate is only meaningful if the denominator is clear. In particular, keep contact clicks out of the enquiry count.
Worked example (illustrative numbers)
| Stage | Count | Rate | Denominator |
|---|---|---|---|
| Contact clicks | 95 | — | Tracked separately |
| Enquiries | 40 | — | — |
| Qualified leads | 12 | 30% | 12 ÷ 40 enquiries |
| Quotations sent | 6 | 50% | 6 ÷ 12 qualified |
| Won deals | 2 | 33% | 2 ÷ 6 quotations |
All numbers are hypothetical. Here, the qualified rate is 12 ÷ 40 = 30%. The 95 contact clicks are reported beside the funnel, not inside it. Break the same table down by source and landing page, and you can see which channels bring qualified leads, not just volume.
Test duplicates, spam, failed forms and returning users
- Failed submit: submit with a required field empty. No
generate_leadshould fire. - Double submit: tap submit twice quickly. Only one lead should be recorded.
- Spam: confirm your spam filter runs before the event fires, or mark spam as disqualified in the CRM.
- Returning user: submit a second enquiry from the same browser later. Decide whether it is a new lead or an update, and apply that rule consistently.
- Test data: exclude internal traffic and label test leads so they don’t inflate reports.
Use GA4’s DebugView while testing, and check each action once end to end.
Explain attribution gaps and what the data cannot prove
Even a good setup has blind spots. For instance, consent choices, ad blockers and cross-device journeys mean GA4 will not see every visit. Phone calls and WhatsApp chats may never connect to a session. In addition, Search Console cannot attribute a lead to a query. So treat source data as strong evidence, not perfect truth, and look at trends over months.
Frequently asked questions
Can Search Console tell me which keyword generated each lead?
No. Search Console reports aggregated queries and pages, not individual visitors. Use it to see which pages attract search traffic, then use GA4 and your CRM to see which pages produce qualified leads.
What is the difference between generate_lead and qualify_lead?
generate_lead records that someone submitted their details. qualify_lead records that the lead was later marked as meeting your qualification criteria, usually by sales in the CRM.
How should WhatsApp clicks be measured?
Track them as a separate contact-click event. Count a WhatsApp conversation as an enquiry only once it is logged in your CRM.
Why do GA4 and CRM totals differ?
GA4 misses some visits because of consent, blockers and devices, while the CRM includes leads from calls, referrals and walk-ins. The two will rarely match exactly, so reconcile trends rather than single totals.
Next step
Write your five stage definitions and the event dictionary above, then test each event once. If you would like help setting up measurement alongside your campaigns, see our Google Ads management service, our guide to Google Ads costs in India, or contact us to review your current setup.
Sources
- Google Analytics Help, Recommended events (checked 25 October 2026).
- Google Analytics Help, Lead acquisition report (checked 25 October 2026).
- Google Analytics Help, Best practices to avoid sending PII (checked 25 October 2026).
- Google for Developers, Measurement Protocol (GA4) (checked 25 October 2026).
- Search Console Help, Performance report (checked 25 October 2026).
Ready to grow your business online?
Websites, SEO, ads and complete digital setups, built by the team that wrote this. Tell us what you are trying to achieve.




