Google Ads · Ad disapprovals

    Google Ads 'Destination Not Working': How to Fix It

    Shown in Google Ads: Destination not working

    How do I fix "Destination not working" in Google Ads?

    "Destination not working" means Google's crawler (AdsBot) tried to load your ad's final URL and got an error, a timeout, or a page that didn't function. The fastest fix is to find the exact URL Google flagged, load it the way AdsBot does, fix whatever returns the error (usually a 404, a redirect loop, or a firewall blocking bots), then resubmit the ad for review.

    What this means

    "Destination not working" is a disapproval under Google's Destination requirements policy. Google requires that every ad lead to a page that works on common browsers and devices. If AdsBot receives an HTTP error (4xx or 5xx), can't finish loading the page, or hits a malfunctioning setup, the ad, asset, or product is disapproved and stops serving.

    This is not an account-level strike. Destination requirements violations don't trigger an immediate suspension; the ads simply won't run until the destination works and the ad is reviewed again.

    For e-commerce accounts, it usually shows up in bursts: a product sells out and its page is unpublished, a collection URL changes, or a security app starts blocking Google's crawlers across the whole store.

    Why it happens

    The most common causes we see on store accounts:

    • Deleted or unpublished product pages. A product is archived in Shopify or set to draft in WooCommerce, but the ad (or sitelink) still points to it, so the URL returns a 404.
    • Changed URL handles. Renaming a product or collection changes its URL. Shopify can create a redirect automatically, but only if that option is checked when you edit the handle.
    • Bot protection and firewalls. Cloudflare bot rules, WooCommerce security plugins (Wordfence and similar), or "country blocking" settings that challenge or block AdsBot. Users see the page; Google gets a 403 or a challenge screen.
    • Server errors and timeouts. Overloaded hosting, a broken plugin, or a theme update that causes 500 errors, sometimes only on mobile.
    • Broken tracking templates. A tracking template, final URL suffix, or third-party click tracker that malforms the URL or adds a redirect that fails.
    • Password protection or maintenance mode. A Shopify store still behind a password page, or a WooCommerce maintenance-mode plugin left on after a redesign.
    • Geo-redirects. Apps that redirect visitors by country can send AdsBot (which crawls from various locations) into a loop or to a page that errors.

    How to fix it

    1. Find the flagged URLs. In Google Ads, go to the Policy manager (under Tools) or filter the Ads view by "Policy details" and look for "Destination not working". Hover the status to see which ad, sitelink or asset is affected. Note the exact final URL, including any parameters.
    2. Test the URL with tracking applied. Paste the full final URL plus your final URL suffix into a browser in a private window, on desktop and on a phone. Use the ad preview or the "Test" option on your tracking template if you use one. If the page only breaks with parameters added, the template is the problem.
    3. Check the HTTP status code. Use a header checker or your browser's developer tools (Network tab) and confirm the page returns 200. A 301 or 302 should end at a 200 in one or two hops, not loop.
    4. Load it as AdsBot. In Chrome DevTools, open Network conditions and override the user agent with Google's AdsBot user agent. If you get a challenge page, 403, or a blank page, your firewall or security plugin is blocking Google.
    5. Allow Google's crawlers. In Cloudflare, make sure verified bots aren't challenged by your custom rules or "Bot Fight Mode". In WooCommerce security plugins, allowlist verified Google crawlers. Also check robots.txt isn't disallowing AdsBot-Google specifically (AdsBot ignores the generic * rule, so this only matters if it is named).
    6. Fix dead product URLs at the source.
      • Shopify: Re-publish the product, or create a URL redirect (Online Store > Navigation > URL Redirects) from the old path to the closest live product or collection. If a product is permanently gone, pause or update the ad rather than relying on a redirect to the homepage.
      • WooCommerce: Restore the product from trash, or add a 301 redirect with a redirection plugin. Check that permalink settings didn't change during a plugin update.
    7. Remove the password page or maintenance mode if the store is newly launched. Ads cannot be approved while the storefront is locked.
    8. Update the ad if the page is gone for good. Edit the final URL to a working page. Editing an ad automatically sends it for review.

    How to request a review

    If you edited the final URL, the ad goes back into review on its own. If you fixed the problem on the website without changing the ad, go to the disapproved ad, hover the status, and choose to appeal or request a review, selecting that you made changes to comply. You can appeal multiple ads at once from the Policy manager.

    Most reviews finish within a business day, though some take longer. Don't keep resubmitting the same ad while the site is still broken; repeated failed reviews just delay things.

    How to prevent it

    • Never delete a product that has active ads. Pause the ad first, or redirect the URL to a relevant replacement.
    • Turn on automatic redirects whenever you change a Shopify handle.
    • Allowlist Google crawlers before you enable any new bot protection, firewall rule or country blocking.
    • Use a scheduled URL checker. A Google Ads script or third-party monitor that checks your final URLs daily will catch 404s before AdsBot does.
    • Test tracking templates every time you change them. Build consistent UTMs with our UTM builder so parameters don't break URLs.
    • Keep Shopping feeds in sync. If you also run Shopping or Performance Max, product URLs in Merchant Center must match live pages, or the same error appears at the product level.

    If dozens of ads and products are disapproved and you can't find the cause, Mercantads can audit your destinations, firewall settings and feed in one pass. Talk to our team or see how we manage Google Shopping campaigns for online stores.

    Fix it yourself or have us fix it

    Do it yourselfMercantads does it for you
    Find the causeFollow the steps on this pageWe review your ads, account and tracking
    Make the fixEdit ads, landing pages or settings yourselfWe fix it and check related issues
    AppealsSubmit the appeal and waitWe prepare and submit appeals for you
    After it's fixedGet back to managing campaignsCampaigns managed for profit every week
    Talk to us
    FAQ

    Frequently Asked Questions

    Google crawls with its own user agent, from its own servers and locations. Firewalls, bot protection, geo-redirects and mobile-only errors can block AdsBot while the page loads fine in your browser, so test with the AdsBot user agent and on mobile.

    Not directly. It's a Destination requirements disapproval, and Google states these violations don't cause immediate suspension. Your affected ads just won't serve until the destination is fixed and re-reviewed.

    Most ads are reviewed within one business day after you edit them or file an appeal. Complex reviews can take longer, so confirm the page returns a 200 status before resubmitting.

    You can, but it's a poor experience and can lead to other relevance problems. Redirect to the closest equivalent product or collection, or pause the ad if the product is discontinued.

    Google Ads 'Destination Not Working': How to Fix It

    Tell us what Google Ads is showing. We'll find the cause and fix it, so your products and ads get back to selling.