Why it happens
A firewall or bot protection blocks AdsBot
A firewall or bot protection blocks AdsBot
Cloudflare bot fight mode, Wordfence, a hosting WAF or a robots.txt rule that disallows AdsBot. Humans get the page, Google gets a 403 or a challenge page.
The page moved or was deleted
A sale page taken down, a slug renamed, a product out of stock that now 404s. Ads keep pointing at the old URL.
Redirects break on the way
A redirect chain that loops, runs too long, or a tracking template that rewrites the URL into something malformed.
The server is slow or flaky
Timeouts and intermittent 5xx errors during the crawl. One bad crawl is enough for a disapproval.
The page needs a login or a geo or device check
Pages behind authentication, or that redirect mobile visitors to a dead app link, fail for the crawler.
How to fix it, step by step
Find the failing URL
Go to Campaigns, then Ads. Hover over Disapproved in the Status column to see the policy, and check the final URL plus any tracking template on each affected ad.
Load it the way AdsBot does
Open the final URL with the tracking template applied, in a private window on desktop and on a phone. In Chrome DevTools, override the user agent to AdsBot-Google and reload.
Unblock the crawler
Allow the AdsBot-Google and AdsBot-Google-Mobile user agents in your firewall, CDN and security plugin, and make sure robots.txt does not disallow them.
Repair the page or the redirect
Restore the page, or point the ads at a live URL. Collapse redirect chains to one hop and test the tracking template output.
Appeal
Go to Tools, then Troubleshooting, then Policy manager. On the Policy issues tab, select Appeal, pick Made changes to comply with policy and submit. Most reviews finish within a day.
Steps checked against Google Ads Advertising Policies Help: Destination not working; Google Ads Advertising Policies Help: Destination requirements; Google Ads Advertising Policies Help: Fix a disapproved ad or appeal a policy decision.
Sprites diagnoses this
Sprites diagnoses it
Sprites finds every ad Google disapproved for this, and the exact URLs behind them, in one pass.
What Sprites does
- Reads the approval status and policy topics on every ad, so you see all the Destination not working ads at once, not one hover at a time.
- Lists every final URL clicks were sent to, so the one dead page stands out.
- Moves the affected ads to a working URL by cloning each ad with the new final URL and pausing the original, once you approve.
What it doesn't do
- It does not change your firewall, CDN, robots.txt or server, so unblocking AdsBot is on you or your developer.
- It does not file the appeal. You submit it in Policy manager.
Questions
Why does Google say destination not working when my site works?
Google checks with its own crawler, AdsBot, from its own servers. Bot protection, a geo redirect or a slow response can block AdsBot while every human visitor sees the page.
Is destination not working the same as destination not accessible?
No. Not working means the page returned an error. Not accessible means the page does not load in a location you target.
How long until the ad is approved again?
After you appeal, most reviews finish within a day. Editing the ad also triggers a new review, usually within one to two working days.
Can destination not working get my account suspended?
Not on its own. Google says it issues a warning at least 7 days before any suspension under this policy.
Should I whitelist AdsBot by IP or by user agent?
By user agent at minimum, AdsBot-Google and AdsBot-Google-Mobile. If your firewall blocks spoofed bots, verify Google crawlers by reverse DNS rather than a fixed IP list.
- Google Ads destination not accessible
- Google Ads disapproved: destination mismatch
- Google Ads disapproved: compromised site
- Google Ads disapproved: malicious software
- Google Ads misrepresentation
- Google Ads disapproved: unverified phone number
- Google Ads disapproved: destination experience
- Google Ads all ads limited by policy
- Google Ads all asset groups limited by policy
- Google Ads limited ad serving policy
- Google Ads under review taking too long
- Google Ads disapproved: punctuation and symbols
- Google Ads disapproved: capitalization
- Google Ads disapproved: unsupported language
- Google Ads disapproved: clickbait
- Google Ads disapproved: trademarks
- Google Ads disapproved: healthcare and medicines
- Google Ads disapproved: unapproved substances
- Google Ads disapproved: financial services
- Google Ads disapproved: gambling and games
- Google Ads disapproved: dangerous products or services
- Google Ads disapproved: sexual content
- Google Ads disapproved: personalized advertising
- Google Ads disapproved: image quality
- Fix Google Ads problems
- Google Ads conversion tracking not working
- Google Ads search terms and negative keywords
- Google Ads disapproved: find the policy and fix it
- Fix your ad account
- Fix your Meta ads
- Fix your LinkedIn ads
- Fix your Reddit ads
- Fix Microsoft Ads problems
- Why your tools disagree on conversions
See where it breaks
Connect your accounts. Sprites reads them side by side and shows you exactly where the numbers split.