Approvalens

AdSense "Site Down or Unavailable": Causes and Fixes

Approvalens · Updated October 4, 2026 · 6 min read

"Site down or unavailable" means the AdSense crawler tried to load your site during review and did not get a usable page back. Your site may work perfectly in your browser; what matters is what Google's crawler received from its own network, with its own user agent, at the moment it checked. The cause is nearly always technical (DNS, SSL, a firewall, robots.txt, a wrong URL or downtime), so it is one of the more fixable rejections.

What the message actually means

The label appears in the AdSense Sites page, not in a dedicated help article. Google's documentation covers the same ground under "Your site is unreachable" in Site not ready to show ads, which asks a series of questions:

  • "Is your site up and running? Make sure your site is published and live on the web."
  • "Did you provide the correct URL?"
  • "Can AdSense access your site without a password?"
  • "Does your site have a valid SSL Certificate from a recognized certification authority (not a self-signed certificate) and does it also redirect HTTP to HTTPS?"

The Connect your site page adds one more: "Can the AdSense crawler access your site? Make sure you're not blocking our crawler in your robots.txt file."

So the rejection is not a judgement about your content. The reviewer may never have seen it.

The usual causes

Cause Typical symptom How common
Firewall or bot protection challenges Google Cloudflare "Just a moment..." page, 403 or 503 for bots Very common
robots.txt blocks Mediapartners-Google User-agent: Mediapartners-Google + Disallow: / Common on copied robots files
www and non-www mismatch example.com works, www.example.com does not resolve (or the reverse) Common
SSL problem Expired or self-signed certificate, certificate for the wrong host name Common
No HTTP→HTTPS redirect, or a redirect loop http:// serves a different site, or bounces forever Occasional
Downtime during review Shared hosting overloaded, server restarted, plan expired Occasional
Geo-blocking Hosting or plugin blocks traffic from the US Common on local hosting
Maintenance or "coming soon" mode Plugin shows a placeholder to logged-out visitors Common on new WordPress sites
Login wall Whole site behind a password or member area Occasional
Typo in the submitted URL exmaple.com or an old domain Rare but real

Geo-blocking deserves a note. Google's crawlers mostly come from US IP addresses. If your host or a security plugin blocks "foreign" traffic to cut spam, Google is foreign.

Test the site the way the crawler sees it

Your browser is the worst test because it carries cookies, a solved challenge and your local network. Use a terminal (or an online HTTP checker) and look at raw responses.

Check DNS for both host names:

dig +short example.com
dig +short www.example.com

Both should return an address (or a CNAME that resolves). If one is empty, add the missing record.

Check the HTTP to HTTPS redirect:

curl -sI http://example.com/ | head -n 3

You want HTTP/1.1 301 Moved Permanently (or 308) with Location: https://example.com/.

Check the page with the AdSense crawler's user agent:

curl -sI -A "Mediapartners-Google" https://example.com/
curl -s -A "Mediapartners-Google" https://example.com/ | head -c 600

A 200 with your real HTML is good. A 403, 429, 503, or HTML containing Just a moment... or /cdn-cgi/challenge-platform means something in front of your site is blocking bots. Keep in mind this test comes from your IP, not Google's, so a pass here is encouraging but not proof.

Check robots.txt:

curl -s https://example.com/robots.txt

Look for a group that names Mediapartners-Google with Disallow: /. The robots.txt guide explains how the groups are read.

Check the certificate:

curl -vI https://example.com/ 2>&1 | grep -E "expire|subject|issuer"

Fixes by cause

Firewall, CDN and security plugins

If you use Cloudflare, check Security Events for blocked requests from Google user agents and look at Bot Fight Mode, "I'm Under Attack" mode, country rules and custom WAF rules. The Cloudflare guide walks through each setting. On WordPress, security plugins (Wordfence, iThemes/Solid Security, All In One WP Security) and server firewalls (Imunify360, ModSecurity) can rate-limit or block crawlers. Look at their logs for blocked requests whose user agent contains Google, and allowlist verified Google crawlers rather than turning protection off entirely.

robots.txt

Remove any Disallow: / under a Mediapartners-Google group. A User-agent: * block does not stop Mediapartners-Google, because it ignores the * group, but it does stop Googlebot, which causes other problems. A safe minimum:

User-agent: Mediapartners-Google
Disallow:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

Sitemap: https://example.com/sitemap.xml

Domain, www and redirects

Pick one canonical host (for example https://example.com) and 301-redirect every other variant to it: http://example.com, http://www.example.com, https://www.example.com. Make sure both DNS names exist, otherwise one variant fails outright. If you submitted the wrong URL, Google's advice is to remove the site from your sites list and add it again with the correct one.

SSL

Use a certificate from a recognised authority (Let's Encrypt is fine) that covers both example.com and www.example.com. Set up automatic renewal and check the expiry date before you resubmit.

Hosting, uptime and geo-blocking

Set up a free uptime monitor that checks every five minutes from several regions, including the US. If you see repeated outages, the review may have landed on one. Remove country blocks, or at least exempt verified Google crawlers from them.

Maintenance mode and logins

Turn off "coming soon" and maintenance plugins before you apply, and make sure the home page and articles are visible to logged-out visitors. AdSense's own wording: "If your site's login protected, consider temporarily removing the login so that we can reach your site."

Resubmitting

Once every test above passes, go to Sites in AdSense, open the site, confirm that you have fixed the issues and request a review. Keep the AdSense code or meta tag in place. Do not switch DNS, hosting or CDN settings during the review, because a site that is reachable today and broken tomorrow is how many people get this rejection twice. Our approval checklist lists the other items worth checking at the same time, and the general pre-application checklist covers content and policy.

Check reachability for free

A free scan fetches your home page and internal pages, follows redirects, reads robots.txt and flags firewall challenges. Run a free scan to see what it finds.

FAQ

My site loads fine for me. Why does AdSense say it is down?

Your browser is not Google's crawler. Firewalls, geo-blocks and bot protection often treat the two differently. Test with the crawler's user agent and from outside your own network.

Does a User-agent: * disallow cause this rejection?

Not directly for AdSense, because Mediapartners-Google ignores the * group. It does block Googlebot, which can stop ads.txt from being read and makes content harder to evaluate, so remove it unless you have a reason.

How long after fixing should I resubmit?

As soon as the tests pass. Leave a day for DNS or certificate changes to settle if you made any.

Can I get this rejection if my site was down for only a few minutes?

It is possible if the check happened in that window. That is why uptime monitoring and a stable setup during review matter.

Check your own site

Free scan: readiness score and every issue, usually in a few minutes.

Free scan · score and top 3 issues · no sign-up

More guides