Many people who click a Google ad do not tap the phone button. They read the number on your page, pick up another phone and dial it, or they copy it down and call later. A click-to-call tag never sees those calls, so Google Ads gets no credit and Smart Bidding learns nothing from them.
Website call conversions solve that by showing ad visitors a Google forwarding number. This post goes deeper into that one method: how the number swap works, how I set it up in Google Tag Manager (GTM) or with gtag.js, how to test it and when it beats click tracking. For a summary of all call tracking options, see my Google Ads call tracking overview. I walk through this in my video above.
How do website call conversions work?
Website call conversions work by swapping the phone number on your site for a Google forwarding number, but only for visitors who arrived from a Google ad. When that visitor calls the forwarding number, Google connects them to your real line, records the call and its duration, and links it back to the ad click.
Here is the sequence in plain terms:
- A person clicks your ad. Google adds a click identifier, the GCLID (Google Click Identifier), to the landing page URL.
- The Google tag stores that identifier in a first-party cookie.
- A number swap script looks for your phone number on the page, written in the exact format you configured.
- If the visitor came from an ad, the script replaces your number with a forwarding number from Google's pool. Other visitors keep seeing your normal number.
- The visitor calls. Google forwards the call to your business number and logs start time and duration.
- If the call lasts at least your minimum call length, it counts as a conversion for that ad click.
This is often called dynamic number insertion. Organic visitors and Google Business Profile callers are not affected.
What do you need before you set it up?
You need a country where Google forwarding numbers are supported, call reporting turned on in Google Ads, the Google tag on every page and a phone number written as plain text on your site. Check the country question first: availability varies and changes, so read Google's current help article on call reporting for your country before planning around it.
Then confirm:
- Call reporting is enabled at account or campaign level (the setting has moved before, so search the Google Ads help if you cannot find it).
- Your phone number appears as text, not inside an image or a graphic.
- The number uses one consistent format across the site.
- Your consent banner sends Consent Mode signals, because the swap depends on the stored ad click.
If forwarding numbers are not available where you advertise, use click-to-call tracking in GTM or a call-tracking platform instead.
How do you create the website call conversion action?
You create it in the Goals area of Google Ads as a phone call conversion for calls to a phone number on your website. Menu names change often, so here are the decisions in the order you will meet them:
- Start a new conversion action and choose Phone calls.
- Pick the option for calls to a phone number on your website.
- Choose a goal category such as Phone call lead.
- Set a value, either a fixed estimate per call or none.
- Set Count to One for most lead businesses.
- Set the call length: the minimum duration a call must last to count. Google pre-fills a default (60 seconds when I last set one up), but choose your own.
- Save and copy the Conversion ID and Conversion Label.
How long should the minimum call length be?
The right length is the shortest call that is usually a genuine enquiry for your business. Pull a few weeks of call logs from your phone system, note how long misdials, spam and "are you open?" calls last compared with real quote requests, and set the threshold between them. Revisit it after a month of data.
How do you add the number swap snippet?
You add the number swap by telling the Google tag which phone number to replace, using the same formatting that appears on your page. You can do it with gtag.js or with a built-in GTM tag.
Option 1: gtag.js
If your Google tag is hard-coded, add a config line with your conversion ID, label and phone number after the main Google tag:
gtag('config', 'AW-123456789/AbCdEfGhIjk', {
'phone_conversion_number': '(555) 123-4567'
});
The values are placeholders; type the number exactly as visitors see it.
Option 2: Google Tag Manager
- Make sure a Google tag with your
AW-ID and a Conversion Linker tag fire on all pages. - Create a new tag of type Google Ads Calls from Website Conversion.
- Enter the Conversion ID, Conversion Label and phone number, formatted as on the page.
- Fire it on all pages where the number appears, usually All Pages.
- Preview, test and publish.
Why does phone number formatting matter?
Formatting matters because the script looks for the number as written. If you configured (555) 123-4567 but your footer shows 555.123.4567, that footer number may not swap. These are the issues I see most often:
| Problem | What happens | Fix |
|---|---|---|
| Different formats in header and footer | Only some numbers swap | Use one format site-wide |
| Number split across HTML elements | Script cannot find the full number | Keep the number in one text node |
| Number in an image or SVG | Nothing to replace | Use live text |
tel: link not updated |
Taps dial your real line | Check the link target after the swap |
| Number injected late by JavaScript | Swap runs before the number exists | Test with your page builder's output |
If your site lists several numbers, for example one per branch, each needs its own configuration.
How do you test website call conversions?
You test them with Google's documented debug mode, which forces the swap so you can see it without clicking your own ads. At the time of writing, you add #google-wcc-debug to the end of a page URL, load it and check that a debug overlay appears and that your number is replaced. Follow Google's current help article if the method has changed.
My test routine:
- Open each key page with the debug parameter.
- Check the header, footer, contact page and any sticky mobile bar.
- Tap or inspect the phone link and confirm the
tel:target changed too. - Visit without the parameter and confirm your normal number shows.
- After launch, check the conversion action status and the call details in Google Ads over the next few days.
When should you use website call conversions instead of click tracking?
Use website call conversions as your primary call measurement whenever forwarding numbers are available and phone calls matter to the business. They confirm that a call happened and lasted long enough, which a click on a tel: link cannot.
| Question | Website call conversions | Click-to-call tracking |
|---|---|---|
| Confirms a call connected? | Yes | No |
| Records call length? | Yes | No |
| Counts calls dialled from another phone? | Yes | No |
| Works in every country? | No | Yes |
| Works for organic visitors? | No, ad visitors only | Yes, as a GA4 event |
My usual setup is website call conversions as primary, click-to-call as secondary for observation, and a GA4 phone click event for page-level analysis. That way one call does not count twice in bidding. If you later want to know which calls became paying jobs, the next step is importing qualified calls from a call-tracking tool or CRM.
What are the limitations?
Website call conversions only cover visitors who clicked an ad, so organic and direct callers are not measured. Consent choices, ad blockers and cookie restrictions can stop the swap for some visitors. And a long call is still not a booked job, because duration says nothing about whether the caller hired you.
Final thoughts
Website call conversions are the closest thing to real call measurement Google Ads offers natively. Format your number consistently, set a sensible call length and test with debug mode before relying on the data. If you want a second pair of eyes on your setup, my advanced conversion tracking service covers it, or you can book a free tracking audit.


