PPC PRITAM - Strategy, Tracking, Automation, Growth
GoHighLevel•8 min read•By PPC Pritam

GoHighLevel Google Ads Lead Tracking: How to Preserve Lead Source and Campaign Data

Losing Google Ads lead source data in GoHighLevel usually comes from missing GCLID capture, broken field mapping or no attribution fields on the contact. This guide covers how to keep campaign data intact from the ad click to the closed customer.

Table of Contents

  • 01.Why lead source data gets lost
  • 02.What to check first
  • 03.GCLID and UTM capture at the form
  • 04.Custom fields for campaign data
  • 05.Field mapping from form to contact
  • 06.Workflows that preserve or overwrite data
  • 07.Offline conversion tracking back to Google Ads
  • 08.How to test lead source tracking

Why lead source data gets lost

Lead source data is fragile. It has to be captured at the form, mapped to the contact, preserved through the workflow and kept intact as the lead moves through the pipeline. If any step drops the data, you lose the ability to tell which campaign produced the lead and which produced the customer. The lead still arrives, but its origin is gone.

What to check first

Start here
  • Confirm the form captures the GCLID and UTM parameters.
  • Check that the contact record has custom fields for campaign data.
  • Verify the form fields map to those custom fields.
  • Review whether any workflow overwrites the source data.
  • Confirm the source data survives as the lead moves through the pipeline.

GCLID and UTM capture at the form

The GCLID is the click identifier Google Ads uses to link a lead back to the ad click. UTMs add campaign, ad group and keyword detail. Both have to be captured at the form, usually as hidden fields populated from the URL. If the form does not capture them, the lead arrives with no connection to the ad that produced it, and you cannot send outcomes back to Google Ads later.

Confirm the form includes hidden fields for the GCLID and the UTM parameters, and that those fields are populated from the landing page URL. Test by visiting the landing page with test UTM values and submitting the form.

Custom fields for campaign data

GoHighLevel needs custom fields to store the campaign data. Create fields for the GCLID and the UTM parameters you care about, such as campaign, source, medium and term. Without dedicated fields, the data has nowhere to live on the contact and is lost when the form submission becomes a contact.

Keep the field set minimal. Create only the fields you will actually report on or use in workflows. Unused fields clutter the contact record and rarely get filled correctly.

Field mapping from form to contact

Each form field has to map to the correct contact field. If the GCLID hidden field does not map to the GCLID custom field, the data is captured but never stored on the contact. Confirm every campaign field on the form maps to the matching custom field on the contact record.

Workflows that preserve or overwrite data

A workflow that updates a contact can accidentally overwrite the source data. If a step sets the lead source to a fixed value, or clears a custom field, the original campaign data is gone. Review every workflow that touches the contact and confirm none of them overwrite the source fields. The source should be set once at capture and left alone after that.

Offline conversion tracking back to Google Ads

Once the GCLID is stored on the contact, you can send outcomes back to Google Ads using offline conversion tracking. When a lead becomes qualified or closes, that outcome is sent back with the GCLID, which lets Google Ads optimize for real business results instead of just form submissions. This depends entirely on the GCLID being captured and preserved, which is why losing it at the form breaks the whole loop.

Read the offline conversion tracking guide for the full setup. The point here is that the data has to survive from the form to the close, or the loop cannot close.

How to test lead source tracking

  1. 1.Visit the landing page with test UTM parameters and a test GCLID.
  2. 2.Submit the form and confirm the hidden fields captured the values.
  3. 3.Open the created contact and confirm the campaign custom fields are populated.
  4. 4.Move the lead through a pipeline stage and confirm the source data remains.
  5. 5.Verify no workflow overwrote the source fields during the move.
Lead source data is only useful if it survives the whole journey. Capture it at the form, map it to dedicated fields and protect it from being overwritten, or the connection between the ad and the customer is lost.

Frequently Asked Questions

How do I track Google Ads leads in GoHighLevel?

Capture the GCLID and UTM parameters as hidden fields on the form, map them to dedicated custom fields on the contact, and make sure no workflow overwrites them. Once the GCLID is stored, you can send outcomes back to Google Ads using offline conversion tracking.

Why is my GoHighLevel lead source data missing?

The form may not capture the GCLID or UTMs, the form fields may not map to custom fields on the contact, or a workflow may be overwriting the source data. Test by submitting a lead with test UTM values and checking whether the campaign fields are populated on the contact.

Related Service

Need help applying this to your business?

Explore Conversion Tracking
PPC Pritam
Written by PPC Pritam

PPC, Conversion Tracking, CRM and Automation Specialist. Helping businesses generate qualified leads with Google Ads, accurate tracking and automated follow-up.

Related Guides

CRM

How to Track Google Ads Leads From First Click to Closed Customer in a CRM

A Google Ads click is only the start of the story. This is how to follow a lead from the click to the close inside your CRM and where the attribution gets hard.

Read Article
Offline Conversion Tracking

Offline Conversion Tracking: What Happens After a Lead Submits a Form

A form submission is the middle of the journey, not the end. This guide explains how to connect the ad click to the closed customer using offline conversion tracking.

Read Article
GoHighLevel

GoHighLevel Forms Not Creating Contacts or Opportunities: What to Check

When a form submission does not create a contact or an opportunity, the gap is usually in the form settings, the workflow or the field mapping. This guide covers how to trace a form that silently fails.

Read Article