Blog Post Not Indexed by Google? How to Check, Fix and Speed It Up

If your new blog post isn't showing up in Google, one of three things is usually going on. Google hasn't found it yet. Something technical is blocking it: a noindex tag, a robots.txt rule, a canonical tag pointing somewhere else, a login wall, a redirect or a 404. Or Google crawled it and decided to leave it out for now. The fastest way to tell which one you're dealing with is the URL Inspection tool in Google Search Console.

Before we start: Google doesn't guarantee it will crawl or index any page. You can't force it, so your job is to remove every blocker and make the post easy to find. This guide goes in that order: check the status, figure out what it means, fix the cause, ask for a recrawl, then wait with realistic expectations.

How to check if a blog post is indexed

There are three ways to check, listed from most to least reliable. Start with the first one if you have Search Console set up. If you don't, set it up now: verify your site in Google Search Console (a domain property verified through DNS covers every version of your site). You'll need it for every fix below.

  1. URL Inspection in Search Console. Open your property and paste the full post URL, including https://, into the inspection field at the top of the screen. After a few seconds you get a verdict. If you see a status like "Submitted and indexed", the post is in Google's index and any remaining problem is about ranking, not indexing. A new post might show "Crawled - currently not indexed" instead, or "URL is unknown to Google." Either way, the status tells you where to look next (see the table below).
  2. The Pages report. In Search Console, go to Indexing > Pages. The top of the report splits your URLs into indexed and not indexed. Below that, the "Why pages aren't indexed" table lists each reason with a count. Click a reason to see example URLs and look for your post. This report is better at spotting patterns than single posts: if every blog post sits under "Excluded by 'noindex' tag," the problem is a site setting, not the post. It also updates on a delay, so a post you published yesterday may not appear yet.
  3. The site: operator. Type site: followed by the post URL into Google, for example site:yourblog.com/your-post-slug. That's a quick check for one post. To get a rough view of the whole site, use site:yourblog.com, which is the suggested check for a whole website. Keep its limits in mind: site: results aren't complete, and Google doesn't present the operator as a diagnostic tool. If your post doesn't show up, open Search Console. It doesn't prove the post isn't indexed.

About the URL Inspection screen: the default view shows what Google stored from its last crawl. The Test live URL button fetches the page as it is right now. Use the live test after you fix something, to confirm Google can reach the page and sees no blocker. A passing live test means the page can be indexed. It doesn't mean it is indexed.

Google documents URL Inspection, the Page indexing report and the site: operator in its Search Console Help and on Google Search Central, which also has the official definition of every status below.

What each Search Console status means

Here's what the statuses you're most likely to see mean, and what to do about each one.

StatusWhat it meansWhat to do
Crawled - currently not indexedGoogle fetched the post and chose not to index it for now. This is common with new posts.Check that the post is original, substantial and linked from your blog. On a new post with no blockers, give it time.
Discovered - currently not indexedGoogle knows the URL exists but hasn't crawled it yet. This is usually about crawl scheduling, because Google allocates a crawl budget and crawl time to every site.Add internal links to the post, make sure it's in your submitted sitemap, and check that your server isn't slow or throwing errors.
Excluded by 'noindex' tagThe page told Google not to index it.Remove the noindex (see the technical blocks below).
Blocked by robots.txtYour robots.txt file doesn't let Google crawl the URL.Remove or narrow the Disallow rule.
Alternate page with proper canonical tagThe page names another URL as its canonical, and Google went along with it.That's fine for tracking-parameter or duplicate versions. If it's your post's main URL, fix the canonical tag.
Duplicate, Google chose different canonical than userGoogle decided another URL is the main version of this content.Make the content clearly distinct, and point the canonical, internal links and sitemap at one URL.
Page with redirectThe URL redirects somewhere else.That's normal for old URLs. Make sure the final URL is the one that's indexed and the one your links point to.
Not found (404)The URL returns a 404 error.Restore the post or 301-redirect the URL, and update the links that point to it.
Blocked due to unauthorized request (401) / access forbidden (403)Google hit a login, a password or a permission block.Make the post public and check that no security tool is blocking Googlebot.
URL is unknown to GoogleGoogle hasn't come across the URL at all.Link to it, add it to your sitemap, then request indexing.

Technical blocks that stop a post from being indexed

If the status points to a technical problem, here's how to find and fix each one.

A noindex meta tag or X-Robots-Tag header

How to spot it: URL Inspection says "Excluded by 'noindex' tag," or the live test shows indexing isn't allowed. Open the post, view the page source (Ctrl+U or Cmd+Option+U) and search for "noindex." You're looking for something like this:

<meta name="robots" content="noindex, follow">

The same instruction can also come from an HTTP header that doesn't appear in the page source. To find it, open your browser's developer tools, go to the Network tab, reload the page, click the first request and look for X-Robots-Tag: noindex in the response headers.

How to fix it: SEO plugins such as Yoast SEO, Rank Math and All in One SEO can set noindex at three levels, so check all of them:

  • Per post: the advanced or robots section in the plugin's box under the editor.
  • Per post type: the plugin's global settings, where all "Posts" can be set to hidden from search results.
  • Site-wide: any "noindex the whole site" or maintenance mode option.

An X-Robots-Tag header usually comes from server configuration or a caching or security plugin. If you didn't add it, ask your host.

WordPress "Search engine visibility" is switched on

This setting catches a lot of people, especially on sites built on a staging copy. Go to Settings > Reading > Search engine visibility. If the box labeled "Discourage search engines from indexing this site" is checked, uncheck it and save. That one box noindexes your entire site.

robots.txt is blocking the post

How to spot it: the status says "Blocked by robots.txt," or the live test shows that crawling isn't allowed. Open yourdomain.com/robots.txt and look for rules like these:

User-agent: *
Disallow: /blog/
Disallow: /

Either rule stops Google from crawling your posts. The second one blocks the whole site.

robots.txt blocks crawling, not indexing. A blocked URL can still show up in results with no description if other pages link to it. And because Google can't fetch a blocked page, it never sees a noindex tag on it. So if you want a page kept out of Google, use noindex and leave it crawlable. Don't use both.

How to fix it: delete the Disallow line, or narrow it so it doesn't match your post URLs. Then test the post's URL against the file. Balzac's free robots.txt checker does this, and so does the robots.txt report in Search Console.

A canonical tag pointing to another URL

How to spot it: URL Inspection shows a "User-declared canonical" and a "Google-selected canonical." If either one isn't your post's URL, Google is treating another page as the main version. In the page source, find <link rel="canonical" href="...">. The usual culprits are a category or tag page, the post's old slug, an http version or a www/non-www variant.

How to fix it: each post should have a canonical tag that points to its own final URL. Pick one version of your domain (https, with or without www), redirect the other versions to it, and use that version in internal links and in your sitemap.

The post is behind a login, paywall or members-only setting

How to spot it: a 401 or 403 status, or a live-test screenshot that shows a login form instead of your article. Password-protected or private WordPress posts, membership plugins, a password-protected staging domain and overly strict firewall or bot-protection rules can all cause this.

How to fix it: make the post public, and check your security tool's logs for blocked Googlebot requests. If you run real paywalled content on purpose, Google documents structured data for paywalled content on Google Search Central.

Redirect chains and 404s

How to spot it: "Page with redirect" or "Not found (404)" on a URL you expected to work. This usually happens when someone edits the slug after publishing, trashes a draft that was already shared, or leaves the old URL in the sitemap.

How to fix it: 301-redirect the old URL straight to the final one, in a single hop (a redirect plugin like Redirection handles this in WordPress). Then update your internal links and your sitemap so they point at the final URL, not the redirect.

Why Google skips a post it can reach

Sometimes nothing technical is in the way and the post still isn't indexed. These are the usual reasons.

The post is an orphan

Google relies on internal links, related-post links, blog menu links and backlinks to crawl a page. A post that nothing links to is hard to find and looks unimportant. Link every new post from your blog index or homepage, from its related posts, and from older articles on the same topic. Use descriptive anchor text, not "click here."

Your sitemap is missing, stale or not submitted

If your sitemap isn't submitted in Search Console, indexing can suffer. Check two things. First, that the post appears in the sitemap: WordPress serves one at /wp-sitemap.xml, and SEO plugins usually replace it with their own, such as /sitemap_index.xml. Second, that the sitemap shows "Success" with a recent read date in Search Console's Sitemaps report. If your platform doesn't produce a sitemap, Balzac's free sitemap generator can build one for you to upload.

The site is new and Google crawls it rarely

Every site gets a limited crawl budget, and a new site with few links hasn't earned much attention yet. For new sites, indexing can take weeks or even months. Internal links and a clean sitemap help, and so do a few genuine links from other sites.

The content is thin or duplicated

Google is selective about what it keeps. Posts that are near-copies of other pages, short posts that add nothing new, and auto-generated tag or date archives that repeat the same excerpts are all easy to skip. Merge overlapping posts into one stronger article, expand thin ones with real detail (steps, examples, your own experience), and noindex low-value archive pages. Google's guidance on helpful, people-first content on Google Search Central is the reference to check your posts against.

Irregular publishing

Posting in random bursts can play a small part, because Google has less reason to check your blog often. Treat it as a contributing factor, not a rule. A steady schedule won't fix a noindex tag or an orphan post.

How to ask Google to recrawl a post

  1. Fix the cause first. If you request indexing on a page that still has a noindex tag, you just get the same result again.
  2. Run the live test. In URL Inspection, click Test live URL and confirm the page is available to Google, with crawling and indexing allowed.
  3. Click Request Indexing, once. Using the URL Inspection tool is the best way to get indexed faster, but requesting indexing isn't guaranteed to speed up indexing or ranking. There's also a daily quota, and submitting the same URL again doesn't move it up the queue.
  4. After fixing many pages, use the bulk tools. Resubmit your sitemap in the Sitemaps report. In the Pages report, open the issue you fixed and click Validate Fix so Google rechecks the affected URLs.
  5. Add links from pages Google visits often. A link from your homepage or a popular post gives Google another path to the new post.

You may see IndexNow recommended for this. Bing and some other search engines use it, but Google doesn't, so it won't help with Google indexing.

How long does Google take to index a new blog post?

There's no fixed timing and no guarantee. Established sites that Google crawls regularly tend to see new posts picked up sooner. New sites can wait weeks or even months.

Waiting makes sense when the status is "Discovered - currently not indexed" or "Crawled - currently not indexed" on a new post, the live test passes, and the post is linked and in your sitemap. Act right away when you see noindex, robots.txt, a wrong canonical, a 401/403 or a 404. Those won't fix themselves, however long you wait.

Being indexed isn't the same as ranking. An indexed post can sit on page five for a competitive keyword. If URL Inspection says the post is indexed, search for its exact title in quotes. If it shows up, indexing is working and the next job is improving the content and earning links.

Blog post indexing checklist

Run through this list for every new post:

  • The post is published and returns a 200 status (not a redirect, 404 or 401/403).
  • There's no noindex in the meta tag, the HTTP header or your SEO plugin's post, post type or site settings.
  • The WordPress "Discourage search engines" box under Settings > Reading is unchecked.
  • robots.txt doesn't block the URL (test it with a robots.txt checker).
  • The canonical tag points to the post's own final URL.
  • The post isn't private, password-protected or behind a login.
  • The post is in your sitemap, and the sitemap is submitted in Search Console.
  • It's linked from the blog index and from at least one related post.
  • The content is original and substantial, not a near-copy of another page.
  • The URL Inspection live test passes, and you've requested indexing once.

If you publish often, Balzac tracks each article from live to indexed to ranking and shows the status per article. It starts with 3 free articles and no card.

FAQ

Why is my blog not showing in Google Search even though it is indexed?

Indexed means Google has stored the page. Ranking is a separate competition. Search the exact post title in quotes: if the post appears, it's indexed and simply not ranking for broader searches yet. Improve the content against what currently ranks, and link to the post from your stronger pages.

What does "Crawled - currently not indexed" mean, and should I rewrite the post?

It means Google fetched the post and chose not to add it to the index for now. It's common for new posts. Don't rewrite right away. First make sure the post is linked internally and is in your sitemap, then give it time. If it stays excluded and the post is thin or overlaps another one, expand it or merge the two.

Does Request Indexing guarantee my post gets indexed?

No. It puts the URL in Google's crawl queue, but Google still decides whether to index it, and requesting isn't guaranteed to speed up indexing or ranking. Request once, after fixing the cause.

How do I noindex a page in WordPress on purpose?

Use your SEO plugin's per-post setting (the advanced or robots section under the editor) and set that post to not appear in search results. Don't use the "Search engine visibility" box in Settings > Reading for this: it hides your entire site, not one page.

Are Blogger or Wix blogs indexed differently from WordPress?

No. Google crawls and indexes them the same way. The settings live in different menus (each platform has its own SEO and indexing options per post or page), but the same checks apply: no noindex, no robots.txt block, a correct canonical, a sitemap submitted in Search Console, and internal links to the post.

Does IndexNow work for Google?

No. Bing and some other search engines use IndexNow, but Google doesn't. For Google, rely on Search Console, your sitemap and internal links.

Sources

← All articles

Free AI visibility check

Is ChatGPT citing your site?

See if ChatGPT search and Google AI Overviews cite you for your top searches, and who they cite instead. About a minute, no account.

Want content like this on autopilot?

Balzac researches, writes and publishes articles like this one to your site. Every week.

3 free articles · No card needed