Key Events, Double Submits, and Google Ads Conversion Counting
BrightPath Software sells demo bookings. Its GA4 property marks generate_lead as a key event, fired when the demo form's thank-you page loads. In April GA4 reports 1,460 generate_lead key events. The same event is imported into Google Ads as a conversion action set to 'Count: Every'. Google Ads reports 910 conversions for the same month, and the team's cost per conversion in Ads is 38% higher than the figure they calculate by dividing spend by GA4 key events. The demand-gen manager says the Ads tag is 'losing 38% of conversions' and wants to add a second conversion action that fires on the form button click as a backup. A developer notes that users sometimes double-submit because the thank-you page is slow, and that GA4 shows 1,180 sessions with a generate_lead event. Some leads arrive from organic and direct, not Ads.
1. Reconcile the 1,460 GA4 key events, 1,180 sessions with a lead, and 910 Google Ads conversions. Which gaps are expected, and which indicate a defect?
Read the worked answer
Start by defining the unit. GA4 key events are event counts: 1,460 events across 1,180 sessions means about 280 extra submissions, consistent with double-submits. That is a data-quality defect, not extra demand.
Google Ads counts only conversions it can attribute to Google Ads interactions within its attribution window and model. Organic, direct, referral, and email leads are in GA4 but not in Ads, so Ads will normally be lower. The 1,460 vs 910 gap is therefore a mix of (a) non-Ads channels, (b) double-submits, and (c) different attribution credit. It is not evidence that the Ads tag lost 38% of all leads.
A defect is confirmed if the same lead is counted twice in GA4 or if Ads records a conversion with no corresponding lead. Check transaction_id or a lead ID, thank-you page reloads, and whether the form can POST twice. Do not use a button-click backup action to 'fix' the gap; that creates a second, lower-quality conversion and double counts.
2. The demand-gen manager wants a backup conversion action on the form button click. Recommend for or against, with implementation guidance.
Read the worked answer
Against. A button click is intent, not a completed lead: validation can fail, the request can time out, and the thank-you page may never load. Importing it as a conversion would train Smart Bidding on a mix of real leads and failed submissions, and it would double count users who do complete the form. It also makes cost per conversion look better without adding pipeline.
Fix the actual defect instead: make the form submit idempotent (disable the button on submit, use a server-side lead ID, redirect to a thank-you URL that is safe to refresh), and deduplicate generate_lead by lead ID in BigQuery if needed. If the team wants an early-funnel signal, send the button click as a non-key event and use it only for audience analysis, not as a Google Ads conversion. Keep one conversion action per business outcome.
3. Should `generate_lead` be counted 'Every' or 'One' in Google Ads? Give a decision rule and the reporting consequence.
Read the worked answer
The decision follows the business value of repeat submissions. If one person can legitimately request multiple demos for different teams or products in a short period, 'Every' preserves that value. If a second submission is almost always a duplicate or an accidental retry, 'One' is the better bid signal and prevents one lead from being counted twice.
For this setup, 'One' is defensible for Smart Bidding because the lead is the same opportunity, but only after the double-submit defect is fixed; otherwise 'One' hides the defect rather than fixing it. The reporting consequence is that GA4 key events remain event-based (so they will still show 1,460) while Ads shows one conversion per click, so the two numbers will never match by design. Document the conversion action's counting setting and use Ads-attributed conversions for Ads optimization, GA4 events for site behavior, and CRM-qualified leads for true pipeline.