How to Capture GCLIDs from Google Ads Call Extensions?

Question from Reddit user:

Hi everyone,

I want to build my own offline conversion automation, but for it to be accurate, I need to know the GCLIDs that are coming from the “Calls from ads” calls. Where can I find those?

Thanks

Answer from Nabil:

The short answer is:

How to capture GCLIDs from Google Ads Call Extensions?

You cannot directly grab the Google Click ID (gclid) from the phone call itself when a user clicks the “Call” button on a call extension or call ad because this action bypasses your website and, therefore, your Google Tag Manager (GTM) setup.

However, the gclid is recorded by Google Ads on the server side when the click occurs.

The only accurate way to retrieve the gclid for a specific call and match it to an offline conversion is to use the Google Ads API to fetch the necessary call details from Google’s servers, or, if you are using a third-party service, you can leverage their respective API, such as the CallRail API, if that service is capturing the gclid during the call event.

The long answer is:

Your goal of building an accurate offline conversion automation for calls from ads is excellent and necessary for proper optimization, but you’ve hit a key technical hurdle.

When a user clicks a call extension, the browser never loads your destination URL, so your client-side tools like GTM and its associated cookies never execute the code needed to capture and store the gclid.

This means you can’t rely on your website’s tracking.

The solution lies entirely in server-side data extraction and matching.

The most direct and robust method is to use the Google Ads API.

When a user clicks your call extension, Google’s system internally records the gclid, the timestamp, and the incoming phone number.

To build your automation, you would regularly query the Google Ads API to retrieve the click details for all recent call events.

This provides you with the crucial gclid.

Once you have this list of gclids and their corresponding click times and campaign data, you can match it against your own offline conversion data – the actual conversion time, the final lead/customer information, and potentially the originating phone number if you have a way to track that.

If you are using a dedicated call tracking platform, such as CallRail, it is likely already integrated with Google Ads and capturing the gclid.

In this scenario, the CallRail API becomes a powerful intermediary.

You would query the CallRail API for completed calls and it would provide the gclid (often stored in a custom field or within the webhook payload) along with the call details.

You then send this gclid and the conversion value to the Google Ads API’s Offline Conversion Upload Service.

Regardless of the API used to source the gclid, integrating this entire data flow through a centralized server-side environment like Stape or Google Cloud Platform allows you to build a resilient, scalable, and highly secure automation that ensures your call conversions are accurately attributed and fed back to Google Ads for bidding optimization.

About The Author