Question from Reddit user:
I create landing pages for my clients in GHL and track lead form submissions and calls only.
Before the UI change, I created a conversion action in Google Ads and tracked conversions from click and then just created an automation in GHL to push actions into their specific conversions. This is what all tutorials show.
However, with the new UI, Google Ads is asking me to connect a Data Source. If I don’t do this, the status of the conversion is “Inactive” and will not connect.
How are you guys going around this? Do we have to use Zapier now to do this process?
All the YouTube videos show the previous UI so I am pretty lost here.
Answer from Nabil:
The short answer is:
The new Google Ads UI is guiding you to use a Data Source because it’s promoting a more robust, privacy-resilient method for conversion tracking, primarily through the Enhanced Conversions feature, which replaces the older, simple from click
setup.
You absolutely do not need to rely on Zapier for this.
The best solution is to use the HighLevel API to extract conversion data and send it directly to Google Ads via the Google Ads API (also known as the Conversion Upload Service or Google Measurement Protocol).
This is best orchestrated through a server-side tagging environment like Stape or Google Cloud Platform, which ensures the necessary user data, like the GCLID and email, is correctly matched for the highest quality conversion reporting.
The long answer is:
The change you’ve observed in the Google Ads UI, where you’re now prompted to connect a Data Source, reflects Google’s shift toward stronger, first-party data tracking.
The simple client-side tracking method of just counting a conversion from click
is less reliable today due to ad blockers and browser privacy restrictions.
The Inactive status you’re seeing means Google Ads is waiting for the conversion data to be uploaded from a verifiable source, which is typically a server-side process.
While you could set up a client-side conversion tag using a GTM container on your HighLevel landing page, this would still be vulnerable to data loss and is not the method Google is encouraging.
The most modern, reliable, and scalable approach is server-side tracking using the HighLevel API and the Google Ads API.
Here is the solution in detail: First, you use Google Tag Manager on your HighLevel landing pages to capture the Google Click ID (gclid
) from the URL and, crucially, a unique identifier like the user’s email address or phone number when they submit the form.
This data must be stored in your HighLevel system via a hidden form field or similar method.
Second, you use a server-side tagging environment, such as a GTM container hosted on Stape or Google Cloud Platform, as a middleware.
Third, when a conversion occurs in HighLevel – a form submission, a lead status change, or a call event – you set up a Webhook or an internal automation that uses the HighLevel API to instantly send the conversion data (including the stored gclid
and the hashed email/phone number) to your server-side environment.
Finally, your server-side environment uses the Google Ads API to send this clean, server-to-server conversion event back to Google Ads.
This process is known as Enhanced Conversions.
By using the HighLevel API to send the conversion data and the Google Ads API to upload it, you bypass all client-side tracking issues, ensure your conversions are accurate, and provide the necessary first-party data (hashed email/phone) that Google Ads now requires to match the conversion back to the original ad click with high confidence.
This method directly addresses the “Data Source” requirement and is far more robust than any client-side GTM or Zapier-based solution.