Skip to content

Call tracking

Check your Google Ads number swap without clicking your own ad

Two URL fragments open Google's own debug panel and force the phone number swap on demand. No ad click, no spend, and a checklist for when it does not swap.

Cost £0

The problem. You set up Google Ads call tracking. The number on the page looks completely normal, which is also exactly what a broken setup looks like.

The two URL fragments to append to a page: hash google-wcc-debug, which opens the debug panel and lets you trigger the swap yourself, and hash google-wcc-force, which forces the replacement immediately
Append either one, hard reload, and Google's own debug panel appears bottom-left. Use debug while you are building, force for a quick pass over pages you believe are already working.

Call tracking is the one conversion type where a silent failure looks identical to everything working. A broken form shows up as a gap in the data fairly quickly. A phone number that is not swapping just quietly attributes nothing — every call the campaign produced goes uncounted, and the account looks like it is underperforming when it is actually working fine.

The awkward part is that you cannot check it by looking. The swap only fires for someone who arrived by clicking a Google ad: that click sets a cookie called gwcc, and the tag uses it to decide whether to replace the number. Load your own site directly and the number stays put — which is correct behaviour, and tells you nothing.

Two fragments that skip all of that

Append either of these to the page and hard reload:

https://example.com/contact#google-wcc-debug
https://example.com/contact#google-wcc-force

A small panel appears in the bottom-left corner. Click Force and a working setup replaces every instance of the number with obvious test digits, usually 9999 999999.

Use #google-wcc-debug while you are building. You trigger the swap yourself, so you can have GTM Preview open beside it and watch the tag fire before anything changes on the page. That separation is what tells you which half is broken.

Use #google-wcc-force for a quick yes or no on a setup you already believe works — checking six landing pages in a row, or a last look before you tell a client it is live.

Two things that make people think the fragments are broken when they are not: hard reload (Cmd+Shift+R, or Ctrl+Shift+R on Windows), because a fragment does not always trigger a fresh load, and the panel is genuinely easy to miss.

What a pass actually proves, and what it does not

A pass means the tag fires on that page and the number it is looking for matches what is rendered. That is all. It does not prove a forwarding number has been provisioned, that calls route to the right phone, or that the conversion will record anything.

Google only assigns forwarding numbers in certain countries, and the conversion only counts when a call runs longer than the call length threshold on the conversion action. Google counts that on its own side, so there is no client-side event to watch.

So: the debug test proves the website plumbing. A live test call proves Google’s side. Do both before you sign anything off.

When it does not swap

In rough order of how often it is the answer:

The bit that catches everyone

The test call rings the wrong phone. That is not a swap problem. The conversion action holds two separate numbers: the display number, which is on the site and gets replaced, and the destination number, which is where Google routes the call. They are allowed to differ, and that is genuinely useful — you can send paid calls to a specific line, extension or receptionist without touching the website. Check the destination number in the conversion action, not Tag Manager.

One more trap worth knowing: Google Ads hands you a raw gtag snippet for this conversion type and offers no Tag Manager option in the interface, unlike every other conversion action. The GTM template exists — Google Ads Calls from Website Conversion, plus a Conversion Linker on all pages — Google just never mentions it from the Ads side. Plenty of people paste the snippet in because of that and end up with two competing implementations to untangle.

Worth doing if

You run Google Ads and take enquiries by phone. Ten minutes with a debug fragment at setup is worth a month of wondering why the conversions are flat.

If you would rather it was set up and verified properly, get in touch.

All solutions

Got something like this going on?

Tell me what you're running and what you want to fix. I'll tell you straight whether I can help.