Capturing GCLID and Tracking Offline Conversions with Gravity Forms

To connect a Gravity Forms enquiry with a later sale in Google Ads, you need attribution data that stays attached to the lead. Capturing the GCLID, when it is available, is one part of that setup. You also need to store it, record the later outcome, and check the upload.

I have set up GCLID capture on several form platforms. On one Gravity Forms setup, changing the selector in a capture script was not enough to get the value into the saved lead. I later used FormTrackr successfully on that client's Gravity Forms installation. The checks below help separate a field-population problem from a storage or upload problem.

Start with a hidden field

Gravity Forms supports dynamic field population from a query-string parameter. For a basic test:

  1. Add a Hidden field to the form.
  2. In its advanced settings, enable Allow field to be populated dynamically.
  3. Set the parameter name to gclid and save the form.
  4. Open the published form page with a test parameter, such as ?gclid=TestCapture123. If the URL already has a question mark, append &gclid=TestCapture123 instead.
  5. Submit a test entry and inspect the saved field value in Gravity Forms.

The population parameter is not the same thing as the HTML input's ID. If you use a script that selects an element by ID, inspect the generated input and configure that selector correctly.

Gravity Forms documents a limitation with cached pages because its dynamic population runs through PHP. Test with your actual caching configuration. A value appearing in an uncached preview does not establish that visitors to the public page will have the same experience.

Preserve the value when the visitor leaves the landing page

Query-string population helps when the form page still has the parameter. It does not, by itself, carry that value from a landing page to a contact page the visitor opens later.

That needs a capture-and-storage method which can populate the eventual form, subject to the site's consent settings. Test a visit that starts on the landing page and navigates to the form. Then inspect the saved entry again.

If the form is loaded or rerendered dynamically, check whether the capture code runs at the right time. Test validation errors and the form's AJAX behavior. A value visible before submission can still be missing from the final entry.

Check the CRM record and the later outcome

If Gravity Forms sends leads to a CRM, map the captured field to a dedicated CRM field. Compare the value in the form entry with the value stored in the CRM. Check that the integration has not truncated it, changed its case, or overwritten it with an empty value.

Decide which later event you will report: a qualified lead, an appointment, or a sale. Record its actual time and the value you intend to upload, where applicable. Use a separate, consistently defined conversion action for that outcome.

After an upload, inspect its status and any errors. Then verify reporting in Google Ads, allowing for processing and attribution delays. A synthetic value such as TestCapture123 can prove that your form passes data; it cannot match an actual ad click or validate an offline conversion import.

Test the cases that usually expose gaps

  • A successful form submission on the original landing page.
  • A visitor who opens another page before submitting.
  • A failed validation attempt followed by a successful submission.
  • An AJAX or multi-page form, if that is how your site works.
  • A visit without an ad click ID, which should not acquire a made-up value.
  • The CRM mapping and an upload associated with a genuine eligible ad interaction.

Not every visitor will have a GCLID. Enhanced conversions for leads can use eligible first-party data to improve matching, but they do not guarantee attribution for every lead. Follow Google's offline conversion guidance for the chosen import method.

If you are building the capture and upload process yourself, the free OCT Setup Checklist covers the stages to verify. If you want to manage form attribution and later outcomes in one app, see the FormTrackr setup below.

FormTrackr

Keep attribution attached to your Gravity Forms leads

I used FormTrackr successfully on a client’s Gravity Forms setup. See how it captures form attribution and supports later Google Ads offline uploads.

See the FormTrackr setup →