free tool · no login
Indexability Checker
Paste a page and find out whether Google is allowed to index it. This is a noindex checker and a canonical checker in one: it fetches the page as Googlebot, follows every redirect, reads robots.txt, the robots meta tag and the X-Robots-Tag header, and checks where the canonical points and whether that page is healthy. You get one verdict, the main reason first, and a fix for everything it finds.
- One page, or up to 25 at once with a CSV download.
- Fetched as Googlebot and as a browser, so a site that answers Google differently shows up.
- Plain-English results with copy-paste fixes, and nothing stored.
Check a page
01 Paste the page
One full address, or up to 25, one per line.
https://is added if you leave it out.02 Run it
nothing checked yet
Can Google index it?
What the checker looks at
A page drops out of Google for a small number of reasons, and most of them are one line of code in the wrong place. These are the ones the checker tests, in the order Google meets them.
Status code and redirects
Every hop of the redirect chain with its status code, loops, long chains, and meta refresh redirects. Only a page that answers 200 can be indexed.
Page with redirect, explainedrobots.txt
Whether Googlebot may fetch the page, and the exact rule that decides, read with the same parser as the robots.txt tester.
Blocked by robots.txtnoindex, everywhere it hides
The robots meta tag, the googlebot meta tag, and the X-Robots-Tag header, including values scoped to one crawler. Plus nofollow, none, unavailable_after and the snippet limits.
Excluded by noindex tagThe blocked-and-noindex trap
A page blocked in robots.txt can never show Google its noindex. The report says so when both are present.
noindex or robots.txt: which to useCanonical
In the head, in the Link header and misplaced in the body. Self-referencing or pointing away, relative or absolute, http versus https, another host, and two canonicals that disagree.
Alternate page with proper canonical tagThe canonical target
When the canonical points elsewhere, that page is fetched too: does it answer 200, redirect, carry a noindex, or point somewhere else again?
Google chose a different canonicalhreflang
Whether the page lists itself among its language versions, and whether hreflang agrees with the canonical.
hreflang errors and fixesGooglebot versus a browser
The page is fetched twice, once as Googlebot Smartphone and once as an ordinary browser, and any difference in status, address, noindex, canonical or title is shown.
URL Inspection versus the indexing reportSoft 404 and thin pages
A page that answers 200 but reads like an error page, or has almost no text.
Soft 404, and how to fix itPages built by JavaScript
An empty app shell in the HTML means Google has to render the page to see anything, and a noindex in the raw HTML can never be removed by a script.
Who renders JavaScript and who does notSitemap
Give a sitemap and the report says whether the page is in it, in exactly this form, and warns when a page that cannot be indexed is listed.
Sitemap submitted, pages not indexed
How it works
It asks for the page twice
A small reader on this domain requests the page as Googlebot Smartphone and as a desktop browser, following redirects one hop at a time and reading the first 512 KB. Your browser cannot fetch another site's pages directly, which is the only reason the reader exists.
It reads what Google reads
The status code, the X-Robots-Tag and Link headers, the robots and googlebot meta tags, every canonical in the head and the body, hreflang, and the site's robots.txt. When the canonical points elsewhere, that page is fetched as well.
It gives one verdict
Anything that stops indexing outright, like a noindex, a robots.txt block or a canonical to another page, makes the page not indexable. Mixed signals make it at risk. The first reason found is the one to fix first.
Two things decide which fix you want. If the page should rank, it needs a 200, no noindex, no robots.txt block and a canonical that names itself. If it should stay out, use a noindex and leave it crawlable, or point a canonical at the page that should rank instead. Blocking it in robots.txt does neither, because Google then cannot read either tag. The robots.txt tester shows the rule for every crawler, and the sitemap checker runs a lighter version of these checks across a whole sitemap.
What this checker cannot see: whether Google has actually indexed the page, firewall rules that treat the real Googlebot differently from this one, and tags added by JavaScript after the page loads. It reads the HTML the server sends, which is what Google reads first. The reader keeps no copy and writes no log. Full detail on the privacy page.
Straight answers
What does indexable mean?
A page is indexable when nothing on your side stops Google from adding it to its index: it answers 200, robots.txt lets Googlebot fetch it, there is no noindex, and its canonical points to itself. That is the part you control. Google still decides whether the page is worth keeping, which is why an indexable page can sit in Crawled, currently not indexed.
How do I check if a page has a noindex tag?
Paste the address above. The noindex can live in three places: a robots meta tag in the page head, a googlebot meta tag, or an X-Robots-Tag header sent by the server. The last one is invisible in the page source, which is why people miss it. The report names the exact place it found one.
My canonical points to another page. Is that a problem?
Only if you did not mean it. A canonical to another page says "this is a copy, index that one instead", and Google usually does. That is right for filter pages and tracking-parameter copies. On a page you want to rank, the canonical should point to the page itself. Google treats the canonical as a strong hint, not a command, so it can still choose differently, and Search Console then shows Duplicate, Google chose different canonical than user.
Why does the checker say my server refused Googlebot?
The checker asks once with Googlebot's name and once as a browser. It runs on a cloud server, not on Google's addresses, and good firewalls refuse a fake Googlebot while letting the real one in after checking its IP. So a refusal is often harmless. The way to be sure is a live test in Search Console's URL Inspection tool, which fetches from Google itself.
Does this tell me whether the page is actually in Google?
No. It tells you whether Google is allowed to index the page and whether anything would stop it. Whether Google has done so is only known to Google. For that, use URL Inspection in Search Console, or the bulk index checker on this site, which asks the same API for hundreds of URLs at once.
Should I use noindex or robots.txt to keep a page out of Google?
noindex. robots.txt only stops crawling, and a blocked page can still be indexed from links, without a description. A noindex removes it, but only if Google can crawl the page to see the tag, so never block and noindex the same page. The full comparison is here.
Every check passes and the page is still not in Google? Send me the address and I will tell you why, free.Send it on WhatsApp.