Click-to-call buttons are the most common way local customers reach a business from a phone, and they are also one of the easiest things to track badly. I regularly find accounts where the phone button fires a conversion on every page load, fires twice per tap, or is not tracked at all because the button is not a real link.
This guide covers one job in detail: tracking taps on tel: links with Google Tag Manager (GTM), sending them to Google Ads as a conversion and to Google Analytics 4 (GA4) as an event. If you want the bigger picture of every call tracking method, start with my overview of Google Ads call tracking for ads, website and imported calls. I walk through this in my video above if you prefer to follow along on screen.
What does click-to-call tracking actually measure?
Click-to-call tracking measures a tap or click on a phone link, not a completed phone call. When someone taps a link such as tel:+15551234567, the browser hands the number to the phone app. GTM sees the click; it never sees whether the call connected, how long it lasted or whether anyone answered.
A tap can be cancelled before dialling, reach voicemail, or be repeated three times by one undecided visitor. So treat a phone click as strong intent; whether it becomes a primary conversion depends on what else you can measure, which I cover near the end.
What do you need before you start?
You need a GTM web container on every page, edit access to Google Ads and GA4, and phone links that use a real tel: URL. Check the last point first, because it decides which trigger you build.
Open your site, right-click the phone button and inspect it. You are looking for something like this:
<a href="tel:+15551234567" class="header-phone">Call (555) 123-4567</a>
If the button is a <div> or <button> that dials through JavaScript, a link click trigger will not catch it. Ask your developer to change it to a proper link or push a dataLayer event on tap.
How do you create the Google Ads conversion action for phone clicks?
You create a conversion action in the Goals area of Google Ads and get a Conversion ID and Conversion Label to paste into GTM. Google has changed these menus several times, so I describe the steps in general terms.
- Go to Goals, then Conversions, and start a new conversion action.
- Choose a website conversion you set up manually. Google also lists a phone-call option for clicks on your number on a mobile website; either route produces an ID and label you can use in GTM.
- Choose a goal category such as Phone call lead or Contact, so the action sits in a sensible goal.
- Set a value. If you know roughly what a call is worth, use a fixed value; otherwise leave it without one for now.
- Set Count (see the next section).
- Leave data-driven attribution unless you have a reason to change it, and review the click-through window.
- Save and copy the Conversion ID (the number after
AW-) and the Conversion Label.
Should you count "One" or "Every"?
Choose One for phone clicks in almost every case. "One" records a single conversion per ad click, however many times that visitor taps the number. "Every" would count three taps from one visitor as three leads and teach Smart Bidding the wrong lesson.
| Setting | Phone click recommendation | Why |
|---|---|---|
| Count | One | Repeat taps by one person are still one enquiry |
| Category | Phone call lead or Contact | Keeps it in the right goal |
| Value | Fixed estimate or none | A tap has no transaction value |
| Primary or secondary | Depends on your other call tracking | Avoids double counting |
How do you set up the trigger, tags and conversion linker in GTM?
You need the Click URL variable, a link click trigger for tel: links, a Google Ads conversion tag, and site-wide linking so the ad click identifier is available. Here is the order I build them in.
Step 1: Enable the built-in click variables
In Variables, click Configure and enable Click URL and Click Text.
Step 2: Create the tel: trigger
- Create a new trigger of type Click – Just Links.
- Set it to fire on Some Link Clicks.
- Condition: Click URL starts with
tel:. - Leave "Wait for Tags" off unless you have tested it; a
tel:link does not navigate away, so it is rarely needed.
"Starts with" is safer than "contains", which can match unrelated URLs.
Step 3: Make sure linking is in place
The Google Ads tag needs the GCLID (Google Click Identifier) from the ad click, which is stored in first-party cookies. Fire a Google tag with your AW- ID on all pages, and add a Conversion Linker tag on all pages. Without this, many phone clicks will never be attributed to an ad. If you run a consent banner, check how these tags behave under Consent Mode v2.
Step 4: Create the Google Ads conversion tag
Create a Google Ads Conversion Tracking tag, paste the Conversion ID and Conversion Label, and attach the tel: trigger.
Step 5: Send a GA4 event at the same time
Create a Google Analytics: GA4 Event tag on the same trigger with a clear event name such as phone_click, and add parameters like link_url ({{Click URL}}) and link_text ({{Click Text}}) so you can see which button was tapped.
In GA4 you can mark phone_click as a key event (GA4's current name for what used to be called a conversion). Do not also import that GA4 key event into Google Ads as a primary action while the GTM conversion tag is primary, or each tap counts twice.
If your button needs a dataLayer event instead of a link click, the push looks like this, and you would trigger both tags on a Custom Event named phone_click:
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ event: 'phone_click', phone_location: 'header' });
This is the same pattern I used for Kazi Cleaning, where custom HTML listeners push phone_click and contact_form_submit events that trigger Google Ads conversion tags and GA4 event tags.
How do you test phone click tracking in Tag Assistant?
You test it by opening GTM Preview, which launches Tag Assistant, then tapping or clicking every phone link on the site and confirming the right tags fire once per click.
- Click Preview in GTM and enter your site URL.
- Click the phone link in the header, the footer, the contact page and any sticky mobile button.
- In Tag Assistant, select the Link Click event and confirm the Google Ads conversion tag and GA4 event tag fired.
- Check that neither tag fired on page load or on other link clicks.
- Open GA4 DebugView and confirm
phone_clickarrives with your parameters. - Publish the container, then check the conversion action's status in Google Ads over the next day or two.
Desktop testing is fine for checking the trigger; cancel the calling app if one opens, then repeat the check on a real phone. My post on Google Tag Manager mistakes lists the trigger errors I see most often.
Should you treat mobile and desktop clicks differently?
Usually yes, at least in reporting. On mobile, a tap opens the dialler directly, so it is a close proxy for a call attempt. On desktop, a click may open a softphone, FaceTime or nothing at all, and many desktop visitors simply read the number and dial from their mobile.
You do not need a separate conversion action per device. Segment the conversion by device in Google Ads and compare it with real call volume; if desktop clicks far exceed the desktop calls you receive, the action is overstating leads.
When is a phone click the wrong primary conversion?
A phone click is the wrong primary conversion when you can measure real calls instead. If Google forwarding numbers work in your country, website call conversions confirm a call happened and lasted a minimum length; I cover them in website call conversions with Google forwarding numbers. In that setup, I keep the phone click as a secondary action for observation.
Where forwarding numbers are not available, a phone click counted "One" can reasonably be primary, as long as you check it against real call logs regularly.
Final thoughts
Phone click tracking is quick to build and easy to get subtly wrong. Use a precise tel: trigger, count once per ad click, test every button, and remember that a tap is intent, not a booked job. If you want help with the wider setup, see my advanced conversion tracking service.


