Skip to content
  • FG-126
  • 13 min read
  • Last checked November 8, 2026

New Website Not Showing on Google? How to Get It Indexed

Your new site launched but Google shows nothing. Check you are not blocking it, verify Search Console, submit a sitemap, inspect the home page and give Google time.

Run the health check

You launched a new website. You type its name into Google and nothing comes up, or only your old Facebook page and a directory listing appear. You may have searched for site:example.com and got “did not match any documents”. It is easy to assume something is badly broken.

Usually nothing is broken. Google has to find a new site, crawl it, decide whether to index it, and only then can it show it. Sometimes, though, the site really is telling Google to stay away: a box left checked in WordPress, a coming soon plugin, or a staging password that was never removed. This guide is for owners and designers of a site that has never been in Google, or was launched in the last few weeks. If your site used to be in Google and has dropped out, read Website disappeared from Google instead.

What is happening

Google Search works in three stages, and a new site can be stuck at any of them.

Stage What Google does What stops a new site here
Discovery Finds the URL, through a link from another page or a sitemap you submit. Nobody links to the site yet and no sitemap has been submitted.
Crawling Googlebot requests the page and renders it. robots.txt blocks it, the server returns an error, a firewall blocks Googlebot, or the site is behind a password.
Indexing Google decides whether to store the page and show it in results. A noindex instruction, a canonical pointing elsewhere, or Google judging the page not worth indexing yet.

Google is open about the timing. Its documentation on asking for a recrawl says crawling can take anywhere from a few days to a few weeks, and that requesting a crawl does not guarantee a page will be included quickly, or at all. There is no paid fast lane and no number of resubmissions that speeds it up. What you control is removing blocks and making the site easy to discover.

Before you start

  • Access: a WordPress administrator login, and access to your domain’s DNS (at your registrar, host or Cloudflare) for Search Console verification.
  • A Google account for Search Console. Use a business account you will keep, not a freelancer’s personal one, so ownership does not walk out the door later.
  • Running commands on your computer: curl is built into macOS, Linux and current Windows (type curl.exe in PowerShell). Nothing in this guide needs SSH.
  • Nothing here is risky. The checks only read. The fixes are settings you can change back.

Step 1: Check what Google actually has

Search Google for:

site:example.com

Replace example.com with your domain, without https:// or www. If you see some of your pages, the site is indexed and the problem is ranking, not indexing: new sites rarely rank for competitive phrases straight away, and your business name is the first thing to test. If you see nothing at all, carry on.

The site: search is a rough check. Google does not promise it lists everything it has, so treat Search Console (Steps 3 to 6) as the real answer.

Step 2: Make sure the site is not telling Google to stay away

The WordPress “Discourage search engines” box

This is the most common cause on a new WordPress site. Designers check it while building, and it gets forgotten at launch. Go to Settings > Reading and find Search engine visibility. If Discourage search engines from indexing this site is checked, uncheck it and click Save Changes. WordPress also warns you on the dashboard’s At a Glance box (“Search engines discouraged”) when it is on.

When the box is checked, WordPress adds a robots meta tag with noindex to every page. Google can crawl the pages but is told not to index them.

Check the live page from outside

Settings can be overridden by an SEO plugin, a theme or the server, so check what Google actually receives. On your computer:

curl -sL https://example.com/ | grep -io '<meta[^>]*robots[^>]*>'
curl -sIL https://example.com/ | grep -iE '^(HTTP|x-robots-tag|location)'

What the flags do: -s hides the progress bar, -L follows redirects to the final page, and -I fetches only the headers. grep -io prints just the matching tag, ignoring case. grep -iE keeps the status lines, any X-Robots-Tag header and any redirect targets.

Good output: no robots meta tag at all, or one that says index, follow or max-image-preview:large; a final HTTP/2 200; no x-robots-tag line. Bad output: noindex anywhere, a final status of 401, 403, 404, 503 or 5xx, or a redirect to a different domain. The full troubleshooting for each of these is in robots.txt or noindex blocking your whole site.

Coming soon, maintenance mode and staging passwords

Coming soon and maintenance plugins usually show visitors who are not logged in a holding page, often with a 503 status or a noindex tag. You are logged in, so you see the real site. Open the site in a private window: if you see the holding page, switch the plugin off. The same goes for a password set in the hosting panel or a staging tool; if a private window asks for a username and password, Google cannot get in either.

robots.txt

Open https://example.com/robots.txt in your browser. A line reading Disallow: / under User-agent: * blocks the whole site from crawling. A normal WordPress robots.txt disallows only /wp-admin/ and allows /wp-admin/admin-ajax.php, and may list a sitemap. If you see a blanket disallow, look for a physical robots.txt file left from staging, or the robots.txt editor in your SEO plugin.

Step 3: Add and verify the site in Google Search Console

Search Console is Google’s free dashboard for site owners. It is the only place Google tells you, for your own site, what it has crawled, what it has indexed and why it skipped anything.

  1. Go to Google Search Console and click Add property.
  2. Choose a property type. A Domain property covers every version of your site (http and https, with and without www, every subdomain) and is verified with a DNS TXT record. A URL prefix property covers only the exact address you type, such as https://www.example.com/, and can be verified several ways, including an HTML file upload, an HTML meta tag on the home page, or an existing Google Analytics or Google Tag Manager tag.
  3. For a Domain property, copy the TXT record Google shows (it starts google-site-verification=), add it at your DNS provider as a TXT record on the root of the domain (the name is often @ or left blank), save, and click Verify.

A Domain property is the better choice if you can edit DNS, because it catches every variant. If you cannot reach DNS, a URL prefix property with the HTML tag method works; most SEO plugins have a field for the verification code so you do not need to edit theme files.

If verification fails, check the TXT record has reached the internet. On your computer:

dig +short TXT example.com

dig asks DNS for records; +short prints only the answers and TXT asks for text records. On Windows use nslookup -type=TXT example.com. Good output: a line containing google-site-verification= and your code. Bad output: nothing, or only other records: the record was added in the wrong place (perhaps at the registrar while your nameservers point to Cloudflare or your host) or has not propagated yet. Our DNS lookup tool shows the same thing from outside your network, and the dig cheat sheet explains the output.

Verification proves you control the site. It does not make Google index anything faster on its own; it gives you the tools in the next two steps.

Step 4: Submit your sitemap

A sitemap is a list of the URLs you want indexed. WordPress has produced one by itself since version 5.5 at /wp-sitemap.xml. Most SEO plugins (Yoast SEO, Rank Math, All in One SEO, SEOPress and others) switch the core sitemap off and publish their own, often at /sitemap_index.xml or /sitemap.xml. Use whichever your site actually serves: open each address in your browser and pick the one that shows a list of links.

  1. In Search Console, open Indexing > Sitemaps.
  2. Type the sitemap path (for example sitemap_index.xml) in Add a new sitemap and click Submit.
  3. Come back later. The status should read Success with a count of discovered pages.
Sitemap status What it usually means Fix
Success Google read it. Discovery is done; indexing is up to Google now. Nothing. Wait and watch the Pages report.
Couldn’t fetch Often shown briefly for a brand new submission; if it persists, Google could not download the file. Open the sitemap URL in a private window. Check a firewall, security plugin or Cloudflare rule is not blocking it, and that it returns 200.
Sitemap could not be read The file downloaded but is not valid XML, often because a PHP warning or blank line is printed before it. View the source of the sitemap. Anything before <?xml is the culprit; check the PHP error log and recently changed plugins.
Has errors Some entries are wrong, such as URLs on another domain or the staging address. Click the sitemap to see the errors. Fix the site address in Settings > General or the plugin settings.

Check the URLs inside the sitemap use your real, final address: https, the same www or non-www as the site, and no staging domain. A sitemap full of redirecting URLs is a weak signal. The one-hop redirect guide explains how to make every variant lead straight to the final address.

Step 5: Inspect the home page and request indexing

  1. Paste your home page address into the search bar at the top of Search Console. This opens URL Inspection.
  2. If it says URL is not on Google, that is expected for a new site. Click Test live URL. This fetches the page now, as Googlebot.
  3. If the live test says the URL is available to Google, click Request indexing. If the live test reports a problem (blocked by robots.txt, noindex detected, a server error, a redirect), fix that first; requesting indexing for a blocked page achieves nothing.
  4. Click View tested page and look at the screenshot and the HTML. A blank screenshot or a holding page means Googlebot is not seeing your real content.

Request indexing for the home page and a handful of your most important pages, not every page. Google limits how many requests you can make, and its documentation says asking repeatedly for the same URL does not get it crawled any faster. The sitemap covers the rest.

Step 6: Read the Pages report once Google has had time

After a few days, open Indexing > Pages. It splits your known URLs into indexed and not indexed, with a reason for each. On a new site, these are the reasons you are most likely to see:

Reason On a new site this usually means
Discovered: currently not indexed Google knows the URL but has not crawled it yet. Normal at first. Patience and good internal links help.
Crawled: currently not indexed Google fetched it and chose not to index it for now. Common for thin pages (empty tag archives, near-identical service pages). Improve or consolidate the content.
Excluded by ‘noindex’ tag Something is still sending noindex. Go back to Step 2.
Blocked by robots.txt robots.txt disallows it. Go back to Step 2.
Page with redirect, Alternate page with proper canonical tag Usually fine. These are variants pointing at your real pages.

Every status is explained in depth in Search Console page indexing statuses explained. If Google picked a different canonical from the one you set, read duplicate content and canonical problems.

Step 7: Help Google and Bing find you

Links from places you control

Google discovers most pages by following links. A brand new domain with no links pointing to it is easy to miss. Add your website address to your Google Business Profile if you have one, your social media profiles, industry directories you genuinely belong to, and your email signature. If the new site replaces an old one, set up redirects from every old URL as described in 301 redirects after a redesign or domain change, and use the Change of Address tool in Search Console if the domain changed.

Internal links

Every page you want indexed should be reachable by an ordinary link from another page on your site, ideally within a few clicks of the home page. Pages that only appear in a sitemap, or only behind a search box or a JavaScript filter, are weaker candidates.

Bing Webmaster Tools and IndexNow

Covering Bing as well takes about five minutes. Bing Webmaster Tools can import your sites directly from Google Search Console, which saves you verifying again. Submit the same sitemap there.

Bing also supports IndexNow, an open protocol that lets your site notify participating search engines whenever a URL is added, updated or deleted. It works with a key file you host on your site; several SEO plugins and some CDNs (including Cloudflare’s Crawler Hints) can send IndexNow pings for you. Google does not take part in IndexNow, so it does nothing for your Google indexing; Search Console and your sitemap remain the route there. Turn it on in one place only, so the same change is not submitted twice by a plugin and a CDN.

Step 8: Set realistic expectations

  • Days to weeks for crawling and indexing is what Google itself describes. A small new site with few links may sit in “Discovered: currently not indexed” for a while. That is not a penalty.
  • Indexed is not the same as ranking. Once you appear for your exact business name, the site is in Google. Ranking for “plumber in [CITY]” is a different, longer project about content, reviews, links and local signals.
  • Do not keep requesting indexing. One request per important page is enough. Repeated requests use up your quota without speeding anything up.
  • Avoid services that promise instant indexing. Google offers no paid route into its index. The Indexing API Google documents is meant only for pages with job posting or livestream structured data, not ordinary business pages.
  • Beware of unsolicited emails offering to “submit your site to 500 search engines”. They are a waste of money at best.

Advanced: confirm Googlebot can reach the site through your firewall

Security plugins, Cloudflare rules and server firewalls sometimes block crawlers. URL Inspection’s live test is the definitive check, because it comes from Google’s real infrastructure. A quick sanity check from your computer is to request the page with Googlebot’s user agent string:

curl -s -o /dev/null -w "%{http_code}\n" -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" https://example.com/

-o /dev/null discards the page (use NUL on Windows), -w "%{http_code}\n" prints only the status code, and -A sets the user agent. Good: 200. Bad: 403 or a challenge page, which means a rule keys on the word Googlebot. Note the limit of this test: your computer is not Google, and well-built firewalls verify real Googlebot by its IP address, so a 200 here does not prove the real crawler gets through, and a 403 can mean the firewall correctly spotted a fake. If the live test in Search Console also fails, check the firewall logs for blocked requests from Google and see 403 Forbidden on WordPress.

Our HTTP headers tool shows the status code, redirects and any X-Robots-Tag header from outside your network.

When to contact your host or developer

Contact your host if the URL Inspection live test reports a server error or a block you cannot find in WordPress, or if robots.txt or an X-Robots-Tag header is coming from somewhere outside your site files. Send them:

  • the exact URL you tested and the time, in UTC;
  • a screenshot of the URL Inspection live test result, including the reason it gives;
  • the output of the two curl commands in Step 2;
  • what you have already checked (Search engine visibility box, maintenance plugin, robots.txt).

If you are handing the site over after launch, include Search Console ownership in the handover. The pre-launch checklist covers the launch-day SEO steps, and the website handoff document lists the accounts a client should own.

Still stuck?

Print a free one-page checklist to keep, or open the Emergency Room if the symptom does not match.

Get the free checklists

Keep reading

All field guides
FG-140 SEO

How to Fix Page Titles, Meta Descriptions and Headings in WordPress

Missing, duplicate or cut-off titles and descriptions, no H1 or two of them, and headings that skip levels. What each one does for search engines and screen readers, and how to fix it in Rank Math, Yoast and your page builder.

Read the guide
17 min read

Search the field manual

What is going wrong?

Press / to search from any page, Esc to close