Resource

Google Ads conversion tracking: a complete guide

Conversion tracking is the mechanism that connects a click on a Google ad to a business result — a form submission, a purchase, a phone call. Without it, Google's bidding algorithm is flying blind: it cannot optimise towards outcomes it cannot see. This guide explains how conversion tracking works, how to set it up correctly, and the most common mistakes that waste ad budget.

  • GA4, GTM and enhanced conversions — how the pieces fit together and where they break.
  • Common problems and how to fix them — duplicate conversions, missing actions, attribution mismatches.
  • Privacy and PII — what you must never send to GA4, and why consent mode matters.
Free · 2-day turnaround

Get your Google Ads audit

We'll review your conversion tracking, account structure and wasted spend — then send you a prioritised fix list.

We only use your details to prepare and send the audit. No sequences, no reselling.

What is a conversion in Google Ads?

A conversion in Google Ads is any user action that you define as valuable to your business and track for campaign optimisation. When a user clicks your ad and then submits a form, makes a purchase, or calls your business, Google Ads can record that action as a conversion. This data feeds into smart bidding, allowing the algorithm to learn which clicks lead to real outcomes — not just traffic.

There are two tiers of conversion. Primary conversions are the actions you optimise bidding for — the outcomes that directly drive revenue or qualified pipeline, such as a completed lead form or a purchase. Secondary conversions are actions you track for reporting insight but do not bid on — a newsletter signup, a PDF download, or a page view that signals mid-funnel interest. The distinction matters because every secondary conversion you mistakenly mark as primary dilutes the bidding algorithm's focus.

It is also important to understand the difference between a Google Ads conversion and a GA4 key event (the term GA4 uses for what used to be called "conversions"). GA4 tracks events across your entire website regardless of traffic source. Google Ads conversions are specific to Google Ads traffic. You can import GA4 key events into Google Ads, which is often the cleanest way to keep both platforms aligned — but the two should not be confused.

Why does the distinction matter? Because Google's smart bidding algorithms learn from conversion data. If you optimise towards a secondary action like "page view" instead of a primary action like "lead form submission," the algorithm will chase volume over value. Getting this wrong is one of the most common and costly conversion tracking errors AppLabx sees in audits.

How it works

How conversion tracking works

The mechanics of conversion tracking involve a tag firing on your website, a data layer passing event information, and Google Ads recording the result. Here is the full data flow.

The conversion tag

Google Ads provides a conversion tracking tag — a small snippet of JavaScript that fires when a user completes a specific action. This tag sends a request to Google's servers containing a conversion ID, a conversion label, and a transaction value. You can fire this tag directly from your website code, or (more commonly) fire it through Google Tag Manager.

Alternatively, GA4 events can be imported into Google Ads as conversions. In this pattern, GA4 fires the event, and Google Ads reads it via a linked GA4 property. This avoids duplicate tags and keeps a single source of truth for event configuration.

GTM as the orchestration layer

Google Tag Manager sits between your website and Google Ads. Instead of hard-coding conversion tags into every page, you configure them once in GTM and define rules (triggers) for when each tag should fire. This centralises tag management, reduces developer dependency, and makes it possible to test, debug and modify tracking without deploying code changes.

GTM reads from a dataLayer — a JavaScript array that holds structured event data. When a user completes an action, the website pushes an event to the dataLayer. GTM sees that event, evaluates its triggers, and fires the appropriate tags.

The data flow

The complete flow works like this: a user clicks a Google ad and lands on your site. They fill out a form. Your server processes the submission and responds with success. Your front-end code pushes an event to the dataLayer (for example, generate_lead). GTM detects this event, evaluates which triggers are configured for it, and fires the corresponding Google Ads conversion tag and/or GA4 event tag. Google Ads records the conversion and attributes it to the click.

Clean data flow matters because the bidding algorithm learns from these signals. If the data flow is broken, delayed, or noisy, the algorithm learns from bad data — and optimises for the wrong outcomes.

Conversion windows

Google Ads defines two conversion windows. The click-through window is how long after clicking an ad a conversion can be attributed to that click (default: 30 days). The view-through window is how long after simply viewing an ad (without clicking) a conversion can be attributed (default: 1 day). These windows matter because a short window may undercount conversions in long sales cycles, while an over-long window may over-attribute organic results to ads.

The window you choose should match your typical sales cycle. A B2B SaaS company with a 60-day sales cycle needs a longer click-through window than an e-commerce store with a 2-day purchase cycle.

Conversion types

Common conversion types

Not all conversions look the same. The type you track depends on your business model and what you consider a successful outcome.

Form submissions

The most common lead generation conversion. A user fills out a contact form, demo request, or quote form and the submission is recorded as a lead. This typically fires a generate_lead event on the server side after the submission is confirmed.

Phone calls

Call extensions and call tracking solutions record phone calls as conversions. Google Ads can track calls from ads directly, or you can use third-party call tracking to attribute calls to specific campaigns. Calls are particularly important for service businesses where the phone is the primary conversion path.

Purchases

E-commerce transactions tracked with a transaction ID, value and items purchased. The transaction ID prevents duplicate counting. For Google Ads, purchase conversions are the highest-signal primary conversion because they carry direct revenue data.

App installs

For mobile apps, app installs and in-app actions (purchases, sign-ups) can be tracked as Google Ads conversions. This requires Firebase SDK integration and linking your Firebase project to Google Ads.

Store visits

Google Ads can estimate store visit conversions for businesses with physical locations. This uses aggregated and anonymised location data to attribute ad clicks to in-store visits. It requires significant click volume and is not available for all businesses.

Import from GA4

You can import GA4 key events directly into Google Ads. This is often the cleanest approach because it avoids duplicate tags and keeps a single source of truth. GA4 events cover all traffic sources, so imported conversions include organic, direct and paid traffic — but Google Ads only attributes the portion that came from an ad click.

GA4

GA4 events and key events

Google Analytics 4 replaced Universal Analytics with an event-based data model. Understanding how GA4 events work is essential because they are increasingly the source of truth for Google Ads conversions.

What GA4 events are

Everything in GA4 is an event. A page view is an event. A button click is an event. A form submission is an event. GA4 tracks four categories: automatically collected events (page_view, session_start), enhanced measurement events (scroll, file_download, video_start), recommended events (generate_lead, purchase, sign_up), and custom events you define yourself.

The event-based model replaced the session-based model in Universal Analytics, giving you more flexibility in what you track and how you structure your data.

Key events (formerly conversions)

In GA4, what used to be called a "conversion" is now called a "key event." You designate specific events as key events in the GA4 admin interface. Key events are the events you care about most — the actions that represent real business outcomes. When you import GA4 events into Google Ads, you choose which key events to import as conversions.

Event parameters and custom dimensions

GA4 events can carry parameters — additional data attached to the event. A generate_lead event might carry a form_id parameter. A purchase event carries value, currency and transaction_id. Custom dimensions are created from event parameters so you can segment and filter reports by that data. Parameters are also what get sent to Google Ads when you import events.

How GA4 events connect to Google Ads

When you link your GA4 property to Google Ads, you can import key events as Google Ads conversions. This creates a bridge: GA4 records the event across all traffic sources, and Google Ads attributes the portion that came from ad clicks. The advantage is single-source event configuration — you set up the event once in GA4 and it works for both analytics and ads.

GTM

Google Tag Manager (GTM) setup

Google Tag Manager is the layer between your website and your tracking tags. It centralises tag management, reduces developer dependency and makes your tracking auditable and testable.

What GTM does

GTM is a tag management system that lets you deploy and manage marketing and analytics tags without editing website code. You install one GTM container snippet on your site, then configure tags, triggers and variables through the GTM interface. Changes deploy instantly without developer involvement.

Container structure

A GTM container holds all your tags for a given website. Inside the container, you define tags (the tracking code to fire, like a Google Ads conversion tag or GA4 config tag), triggers (the conditions that tell a tag when to fire, like "form submitted on the thank-you page"), and variables (the data values that tags and triggers use, like a conversion ID or a page path).

Tags, triggers, variables

Tags are the "what" — the tracking code. Triggers are the "when" — the firing conditions. Variables are the "which" — the dynamic values. A typical setup: a Google Ads Conversion tag fires on a "Form Submitted" trigger, which listens for a dataLayer event named generate_lead, and uses a variable to pull the conversion value from the dataLayer.

The dataLayer

The dataLayer is a JavaScript array that your website code pushes events into. When a form is submitted successfully, your code might push dataLayer.push({ event: 'generate_lead', value: 0 }). GTM listens for these pushes and evaluates triggers accordingly. The dataLayer is the communication channel between your website and GTM.

Why this matters for bidding: Google's smart bidding algorithms need clean, reliable conversion data. If your dataLayer pushes events incorrectly — or doesn't push them at all — the algorithm learns from bad signals. This leads to under-bidding on high-value clicks and over-bidding on low-value traffic. Clean dataLayer events are the foundation of effective smart bidding.

Enhanced conversions

Enhanced conversions

Enhanced conversions improve conversion matching accuracy by sending hashed first-party data from your website to Google Ads. They are increasingly important as browser privacy restrictions tighten.

What enhanced conversions are

Enhanced conversions are a Google Ads feature that supplements your existing conversion tags with hashed first-party customer data. When a user converts on your website, the enhanced conversions mechanism captures data like email address, phone number, or name — hashes it using SHA-256 on the client side — and sends it to Google. Google uses this data to match the conversion to a Google Ads click more accurately.

Why they matter

As third-party cookies phase out and ad blockers become more prevalent, traditional cookie-based conversion matching becomes less reliable. Enhanced conversions provide a privacy-preserving fallback: the hashed data helps Google attribute conversions even when cookies are blocked or stripped. They also improve accuracy in cross-device scenarios where a user clicks an ad on one device and converts on another.

How they work

When a conversion event fires, the enhanced conversions tag reads form field values (email, phone, name, street address, city, postcode, country) from the page. These values are hashed client-side using SHA-256 before leaving the browser. Google receives the hashed values and matches them against Google account data to attribute the conversion. The raw PII never reaches Google's servers in plain text.

Implementation overview

Enhanced conversions can be enabled through Google Tag Manager or through the Google Ads tag directly. In GTM, you configure an "Enhanced Conversions" setting on your conversion tag and map form field values to the standard enhanced conversion properties. The tag handles the hashing automatically. You must also enable enhanced conversions in the Google Ads interface under Conversions > Settings.

Problems

Common conversion tracking problems

These are the errors AppLabx most frequently identifies during Google Ads audits. Each one distorts the data the bidding algorithm relies on.

Duplicate conversions

A form submission is counted twice — once by a Google Ads tag and once by a GA4 import, or once by a page-load trigger and once by a form-submit trigger. Duplicate counting inflates conversion numbers and makes the algorithm think campaigns are performing better than they are. This leads to over-investment in underperforming keywords.

Counting non-conversions as conversions

Page views, button clicks and scroll depth events are sometimes marked as conversions. These are engagement signals, not business outcomes. When the algorithm optimises towards page views instead of lead form submissions, it chases volume over value and spends budget on traffic that will never convert.

Missing conversion actions

The conversion action exists in Google Ads but no tag is actually firing for it. This can happen after a website redesign, a GTM container change, or when a new conversion action is created but the corresponding tag is never implemented. The result is campaigns with "0 conversions" in reporting — even though conversions are happening.

Wrong conversion action being optimised for

The primary conversion action set for smart bidding is a secondary action (like "page view" or "scroll") instead of the real business outcome. This is one of the most damaging errors because the algorithm actively optimises towards the wrong behaviour, wasting budget systematically.

Attribution model mismatch

Different conversion actions use different attribution models within the same account. This creates inconsistent reporting and makes it impossible to compare performance across campaigns accurately. All conversion actions should use the same attribution model — typically data-driven attribution.

Conversion window too long or too short

A click-through window of 90 days on a business with a 7-day sales cycle over-attributes old clicks to recent conversions. A 1-day window on a 60-day B2B sales cycle misses most conversions entirely. The window should reflect your actual sales cycle length.

Tracking methods

Server-confirmed vs client-side events

Where your conversion tracking code runs affects its reliability. Browser-based tracking is increasingly fragile. Server-side tracking is the direction the industry is moving.

Client-side tracking limitations

Client-side tracking runs in the user's browser. It is vulnerable to ad blockers (which strip out tracking scripts), browser privacy settings (which block third-party cookies and limit storage), and content security policies that restrict script execution. Safari's Intelligent Tracking Prevention and Firefox's Enhanced Tracking Protection actively limit client-side tracking. The result: a growing percentage of conversions are never recorded, creating gaps in your data.

Server-side GTM

Server-side GTM moves tag execution from the browser to a server you control (typically running on Google Cloud). The browser sends data to your server, and your server forwards it to Google Ads, GA4 and other platforms. This bypasses ad blockers, avoids browser cookie restrictions, and gives you full control over what data is sent and what is stripped. It is Google's recommended approach for reliable, future-proof conversion tracking.

Enhanced conversions as a middle ground

If server-side GTM is not yet feasible, enhanced conversions offer an intermediate solution. By sending hashed first-party data alongside your existing conversion tag, you improve matching accuracy without requiring server-side infrastructure. Enhanced conversions work with client-side tags and are a practical first step for accounts that are currently tracking conversions client-side only.

Privacy

Privacy and PII considerations

Conversion tracking operates at the intersection of marketing measurement and user privacy. Getting this wrong creates legal risk and violates platform policies.

What PII means in analytics

PII (Personally Identifiable Information) in the analytics context includes any data that can identify an individual: names, email addresses, phone numbers, physical addresses, and in some interpretations, IP addresses and device fingerprints. Google's policies prohibit sending PII to GA4. Violating this policy can result in data being stripped, property-level penalties, or account suspension.

Why form field values must NOT enter GA4

When a user fills out a form on your website, the field values (name, email, phone) must be processed server-side and never pushed to the dataLayer or GA4 as event parameters. GA4 is an analytics tool, not a CRM. Sending PII to GA4 violates Google's Terms of Service and exposes personal data in analytics reports that may be accessible to multiple team members or third-party tools.

Consent mode requirements

Consent mode is Google's framework for adjusting tag behaviour based on user consent. When a user declines analytics cookies, GA4 tags should not fire. When they decline advertising cookies, Google Ads conversion tags and remarketing tags should not fire. Consent mode v2 is required for Google Ads remarketing audiences in the EEA. Proper consent mode implementation ensures your tracking respects user choices while still providing usable (if modelled) data.

Data storage responsibilities

If you collect form submissions and store them in a database or CRM, you are responsible for that data's security, retention and access controls. The conversion tracking event itself should contain only what is needed for attribution (event name, value, transaction ID) — not the content of the form submission. Separate the tracking signal from the business data.

The AppLabx example: server-confirmed conversion tracking in practice

To make this concrete, here is how the AppLabx landing site itself handles conversion tracking — a real-world implementation of the server-confirmed event pattern described in this guide.

When a user fills out the audit request form on any AppLabx page, the form data is POSTed to a server-side endpoint (/api/lead). The server validates the submission, stores the lead in the database, and only then responds to the browser with a success status. On receiving the server confirmation, the front-end code pushes a generate_lead event to the dataLayer. GTM picks up this event and fires the GA4 generate_lead event — which may also be imported into Google Ads as a conversion.

Notice what does not happen: the form field values (name, email, website, spend) are never pushed to the dataLayer and never sent to GA4. GA4 receives the event name, non-attribution parameters and campaign attribution data (UTM parameters, gclid) — but no personally identifiable information. The PII stays on the server, in the CRM, where it belongs. This is the server-confirmed event pattern — the server acts as a gatekeeper, confirming that a real action occurred before any tracking event fires, and keeping personal data out of the analytics pipeline.

Checklist

Conversion tracking checklist

Use this table to audit your own conversion tracking setup. Each row represents a common failure point.

What to verify Why it matters Red flag
Correct conversion actions imported to Google Ads Smart bidding only optimises towards actions that exist in Google Ads. If your primary conversion action is not imported, the algorithm has nothing to optimise for. Conversion columns show "None" or "Unspecified" for most conversions
Only real business outcomes counted as conversions The algorithm optimises towards whatever you mark as primary. If page views or button clicks are primary conversions, the algorithm chases those instead of leads or purchases. High conversion volume but low lead quality or revenue
No duplicate counting Duplicate conversions inflate numbers and make campaigns appear more profitable than they are, leading to misallocated budget. Conversion count is roughly double the number of actual form submissions in your CRM
Enhanced conversions enabled Improves conversion matching in a cookie-restricted world. Without them, some conversions are missed or misattributed. High click-through rate but low recorded conversion rate compared to CRM data
Conversion windows appropriate for your sales cycle A window that is too short misses conversions in long sales cycles. A window that is too long over-attributes old clicks. Most conversions occur more than 30 days after the click, or nearly all occur within 1 day
GA4 key events aligned with Google Ads conversions Misalignment between GA4 and Google Ads creates conflicting reports and makes it impossible to reconcile data across platforms. GA4 shows significantly more (or fewer) conversions than Google Ads for the same time period
FAQ

Questions about conversion tracking

What is conversion tracking in Google Ads?

Conversion tracking in Google Ads is a system that records specific user actions — form submissions, purchases, phone calls — as measurable outcomes. It connects a click on an ad to a business result so Google's bidding algorithm can optimise towards the actions that matter. Without conversion tracking, smart bidding has no signal to learn from and cannot improve campaign performance.

What is the difference between a conversion and a key event?

In Google Ads, a conversion is any action you mark as valuable and optimise for. In GA4, the same concept is called a key event — the naming changed in 2024 but the function is the same. You can import GA4 key events into Google Ads as conversions, which keeps the two platforms aligned with a single source of event configuration.

What are enhanced conversions?

Enhanced conversions are a Google Ads feature that sends hashed first-party data (email, phone number) from your website to Google to improve conversion matching. The data is hashed client-side using SHA-256 before leaving the browser. This improves attribution accuracy, especially when cookies are blocked or stripped by browser privacy settings.

How do I know if my conversion tracking is working?

Google Ads has a conversion tracking status column and a Diagnostics tab that shows whether conversions are being recorded. In Google Tag Manager, use Preview mode to test tags in real time. In GA4, the DebugView and Realtime reports show events as they fire. Discrepancies between platforms — or between your analytics and your CRM — usually indicate a configuration problem.

Can conversion tracking send personal data to Google?

No — if implemented correctly. Form field values like names and phone numbers must never be sent to GA4 or Google Ads tags. Enhanced conversions do transmit hashed first-party data, but only after SHA-256 hashing on the client side. This is a privacy-preserving mechanism, not plain-text PII transmission. Proper implementation ensures no raw personal data enters the analytics pipeline.

What is the difference between client-side and server-side tracking?

Client-side tracking runs in the user's browser and can be blocked by ad blockers, cookie restrictions or browser privacy settings. Server-side tracking sends data from your server to Google's servers, bypassing browser limitations and giving you control over what data is forwarded. Server-side GTM is Google's recommended approach for reliable, privacy-compliant conversion tracking.

Next step

Is your conversion tracking actually working?

AppLabx audits conversion tracking accounts every week. Most have at least two of the problems listed above. The free audit tells you exactly what is broken and what to fix first.

Prefer email? hello@applabx.com

Get a free Google Ads audit