WordPress has one checkbox that takes a whole site out of Google: Settings > Reading > Search engine visibility > Discourage search engines from indexing this site. When it is ticked, current WordPress versions print this tag in the head of every page: <meta name='robots' content='noindex, nofollow' />.
Google drops each page the next time it crawls it, and Search Console lists them under Excluded by 'noindex' tag. The box is meant for sites under construction. It usually stays on by accident: ticked during a build and never unticked at launch, or copied from a staging site to production along with the database.
On a WordPress page with exactly noindex, nofollow, the checker says this setting is the likely cause. Free, no signup.
Step 1: confirm the setting is the cause
| Where | What you see when it is on |
|---|---|
| Page source | noindex, nofollow in a robots meta tag on every page, including the home page. |
| Dashboard | The At a Glance box says "Search engines discouraged". |
| WP-CLI | wp option get blog_public returns 0. A public site returns 1. |
If only some pages carry noindex, or the value is something else such as noindex, follow, the checkbox is not the cause. Look at the page's own setting in Yoast, Rank Math or another SEO plugin, and at the plugin's settings for whole post types and archives. A noindex can also come from an X-Robots-Tag header that never shows in the HTML; the X-Robots-Tag checker lists every header the URL sends.
Step 2: turn it off
Untick the box under Settings > Reading and click Save Changes, or run wp option update blog_public 1. Then:
- Purge every cache in front of the site: the page cache plugin, the host's cache and any CDN. Until you do, visitors and Googlebot can still get the old HTML with the tag.
- Check the built-in robots.txt. Since WordPress 5.3 the checkbox no longer adds
Disallow: /, but a physical robots.txt file or a plugin can. Googlebot has to crawl the pages to see the tag is gone. Test it with the robots.txt tester. - If the site has a staging copy, find out whether a push from staging copies the database. If it does, the next push turns the box back on.
Step 3: ask Google to recrawl
Run the home page and a few key URLs through URL Inspection in Search Console, click Test live URL to see what Googlebot gets now, then Request indexing. Resubmit the XML sitemap so Google picks up the rest; the sitemap checker confirms it loads. In the Page indexing report, open Excluded by 'noindex' tag and click Validate fix. Pages come back as Google recrawls them, which takes days for busy pages and longer for the rest.
Know the same day if it comes back
This setting tends to come back on with a restore, a migration or a staging push. NoindexWatch checks your home page and key URLs every day for a noindex in meta tags or headers, and on WordPress the alert names this setting as the likely cause. The free plan covers 1 site with up to 20 URLs, no card.
Sources: WordPress documentation for Settings > Reading and the blog_public option, the WordPress 5.3 and 5.7 developer notes on search engine visibility and wp_robots, and Google Search Central documentation on robots meta tags. Related: Excluded by 'noindex' tag ยท What Search Console alerts on.