The Problem
You set up WhatConverts for call tracking. You copy the assigned tracking number into a Google Ads call asset. The asset goes under review. A few hours later — sometimes a day later — it comes back disapproved.
The disapproval reason reads something like “Phone number not verified” or “Unable to verify business information.”
You check the number. It looks correct. You resubmit. It gets disapproved again. You try a different WhatConverts number from the pool. Same result. You contact Google Ads support and they tell you to make sure the number matches what is on your website - which it does not, because WhatConverts is dynamically swapping it, which is the entire point.
This is a domain verification problem, not a number problem. And the fix is not inside WhatConverts or your Google Ads call asset settings. It is in Google Search Console.
Why the Disapproval Happens
To understand the fix, you need to understand exactly what Google is checking when it reviews a call asset.
When you submit a call asset, Google runs an automated verification process. It crawls your website and looks for the phone number you entered in the asset. If it finds that number on the page, it treats the number as verified - confirmed as belonging to the business at that domain. If it cannot find a match, the asset gets flagged for disapproval.
This works fine with a static phone number. If your number is +1 800-555-0100 and that exact number appears in your site’s HTML, Google’s crawler finds it, the check passes, and the asset is approved.
WhatConverts breaks this process.
WhatConverts uses Dynamic Number Insertion (DNI). A JavaScript snippet on your site replaces your real business number with a tracking number pulled from a pool. Each source - Google Ads, organic, direct - gets a different number. The swap happens in the browser after the page loads.
When Google’s crawler visits your site to verify your call asset:
- It loads the page
- It either does not execute JavaScript, or executes it in a way that does not trigger WhatConverts’ source detection logic
- It reads the phone number visible in the DOM - which is your original business number, not the WhatConverts tracking number
- It compares that number to the call asset number — WhatConverts tracking number
- They do not match
- The asset is disapproved
No configuration change inside WhatConverts prevents this. The mismatch is inherent to how crawlers interact with dynamic JavaScript phone swaps.
Why “Phone Number Not Verified” Is the Wrong Label
The disapproval message implies the issue is with the phone number itself - that it is fake, invalid, or unowned. That framing leads most people to troubleshoot the wrong thing.
The actual issue is domain ownership. Google cannot confirm that the tracking number you are advertising belongs to a legitimate business at your domain - because it cannot see the number on the page.
Google provides a mechanism specifically for proving domain ownership: Google Search Console. When you verify a property in Search Console, you are proving to Google that you control that domain. When you link that verified Search Console property to Google Ads, that ownership signal carries into the Google Ads review process.
With domain ownership established through Search Console, Google has sufficient confidence to approve call assets for your domain - even when the automated phone number crawl cannot find an exact match on the page.
The Fix: Link Google Search Console to Google Ads
Step 1 — Verify Your Domain in Search Console
If you already have Search Console set up and verified, skip to Step 2.
Go to search.google.com/search-console and click Add property.
You will be given two property types:
- Domain property: Covers all subdomains (
www,shop,blog, etc.) and both HTTP and HTTPS. Requires DNS verification. - URL prefix property: Covers a specific URL and protocol only. Supports multiple verification methods including HTML file upload, HTML meta tag, Google Analytics, or Google Tag Manager.
Use the Domain property type if possible. It is more comprehensive and a single verification covers your entire domain footprint. If you do not have access to your DNS settings, use URL prefix with the GTM or GA4 verification method instead.
For Domain property (DNS TXT record):
- Select Domain and enter your root domain (e.g.
example.com— nowww, nohttps://) - Google generates a TXT record: something like
google-site-verification=abc123xyz - Log in to your domain registrar (GoDaddy, Namecheap, Cloudflare, etc.)
- Add the TXT record to your DNS settings - at the root level (
@), not a subdomain - Return to Search Console and click Verify
DNS propagation typically takes a few minutes but can take up to a few hours. Search Console will keep checking and confirm verification once the record is live.
For URL prefix property (GTM verification - if you already use GTM):
- Select URL prefix and enter your full site URL including protocol (
https://example.com) - Choose Google Tag Manager as the verification method
- Search Console checks for the GTM container snippet on your page
- If GTM is installed correctly, verification completes immediately
This works because Search Console can detect your GTM container ID and confirm you control the container that is running on the domain.
Step 2 — Link Search Console to Google Ads
Once your Search Console property is verified, you link it to Google Ads.
In Google Ads:
- Click the Tools icon (wrench) in the top navigation bar
- Under Setup, click Linked accounts
- Find Google Search Console in the list
- Click Details
- Click the blue Link button
- Enter the URL of the Search Console property you just verified
- Click Send request
In Google Search Console:
The link request appears as a pending notification.
- Go to Settings (gear icon in the left sidebar)
- Click Associations
- Find the pending Google Ads link request
- Click Approve
The link is not active until it is approved from the Search Console side. If you manage both accounts, you can approve it immediately. If the Search Console property belongs to a client or a different team, they need to approve it before the verification signal is active in Google Ads.
Step 3 — Resubmit the Disapproved Call Asset
Once the Search Console link is active in Google Ads, resubmit the disapproved call asset for review.
In Google Ads:
- Go to Assets in the left navigation (in older accounts this is labelled Extensions)
- Find the disapproved call asset - it will have a red disapproval indicator
- Click into it to open the asset details
- Click Resubmit for review
Google re-evaluates the asset. With the Search Console domain ownership signal now present, the review typically approves the asset within a few hours. In some cases it takes up to 24 hours for the review queue to process.
If the asset is still disapproved after 24 hours, check that:
- The Search Console link is confirmed from both Google Ads and Search Console - it must show as active on both sides
- The URL in the linked Search Console property exactly matches the domain in your call asset
What If You Have Multiple WhatConverts Numbers Across Campaigns
WhatConverts typically provisions a pool of numbers - one per traffic source, or one per session depending on your plan configuration. If you are running multiple call assets across different campaigns, each using a different WhatConverts tracking number, the same fix covers all of them.
You link Search Console once per domain. That single verified link applies to all call assets associated with that domain, regardless of how many individual tracking numbers you are running through WhatConverts.
Resubmit each disapproved call asset individually after the Search Console link is active. You cannot batch-resubmit - each asset needs its own resubmission.
Multi-Domain Setups: Separate Verifications Required
If you are running WhatConverts across multiple domains - for example, a main site at example.com and a campaign landing page at example-deals.com - you need to verify and link each domain separately.
Each domain requires:
- Its own Search Console property verification
- Its own link to Google Ads
Both can be linked to the same Google Ads account. In Google Ads → Linked accounts → Google Search Console, you will see all linked Search Console properties listed. Add each domain’s property here.
If the landing page is a subdomain (deals.example.com) rather than a separate root domain, and you verified the root domain using the Domain property type in Search Console, the subdomain is already covered - no separate verification needed.
Preventing This in Future Account Setups
This disapproval cycle is predictable. Any Google Ads account using dynamic call tracking will likely run into it.
The fix is to link Search Console before submitting call assets - not after they get disapproved.
Add this to your standard account setup checklist:
- Verify the client’s domain in Google Search Console
- Link Search Console property to Google Ads
- Confirm the link shows as active on both sides
- Then add WhatConverts tracking numbers to call assets
When Search Console is linked before the call assets are submitted, Google’s review process has the domain ownership signal available from the start. The assets pass review on the first submission.
Why WhatConverts DNI Works Despite This
It is worth clarifying: none of this means WhatConverts is misconfigured or that DNI is unreliable. The tracking itself works correctly.
What DNI was never designed to do is present numbers in a way that passes Google’s static-crawl verification. The crawler does not behave like a real user. It does not get session-attributed to Google Ads traffic, so WhatConverts correctly does not swap the number for that crawl session.
The Search Console linking is the designed workaround. Google’s call asset review system has always had a domain ownership verification path for exactly this kind of situation - where the number on the ad is legitimately different from what the crawler sees on the page.
Diagnostic Checklist
If you are working through this on a live account, run through these checks in order:
- What is the exact disapproval reason? — Should read “Phone number not verified” or “Business information.” If it reads something else (e.g., “Misrepresentation”), the cause is different and this fix does not apply.
- Is Search Console already linked? — Google Ads → Tools → Linked accounts → Google Search Console. If it is already linked, the issue may be that the link was not confirmed from the Search Console side.
- Is the Search Console property verified for the correct domain? — The domain in the call asset must match the Search Console property URL.
www.example.comandexample.comare treated as different properties in URL prefix mode. - Has the link been approved from both sides? — In Search Console → Settings → Associations, confirm the Google Ads link shows as active, not pending.
- Was the asset resubmitted after the link became active? — Links established after the initial disapproval do not retroactively trigger re-review. You must manually resubmit.
All five of these need to be true for the fix to work.
Final Thoughts
The disapproval is frustrating because the error message sends you in the wrong direction. “Phone number not verified” reads like a problem with the number, but it is a problem with how Google can confirm your domain ownership during an automated crawl.
WhatConverts is working correctly. The call asset number is legitimate. The verification system just cannot see it through a standard page crawl because of how DNI works. Search Console gives Google the domain ownership signal it needs through a different mechanism.
One Search Console link. One resubmission. The asset approves and stays approved going forward.
In the next article of this series, we will cover:
Cross-domain tracking breaking at iframes and third-party checkouts - and how to fix it.
Related Posts
How to Set Up Call Tracking with Google Ads and Google Tag Manager
12 min read
WooCommerce Google Ads Conversion Tracking via GTM Using GTM4WP
14 min read
How to Track Email Link Clicks in Google Tag Manager
8 min read
Need Help With Your Google Ads?
I help e-commerce brands scale profitably with data-driven PPC strategies.
Get In Touch