Website Not Showing Up on Google? A Diagnostic
Website not showing up on Google? Separate discovery, crawling, indexing, and ranking, then use Search Console URL Inspection to find which stage is failing.
TL;DR A website not showing up on Google is four different problems wearing one symptom: Google hasn't discovered the URL, hasn't crawled it, crawled it but chose not to index it, or indexed it and ranks it where nobody looks. Run the page through Search Console's URL Inspection tool first; its verdict tells you which stage failed, and each stage has a different fix. Don't touch content or links until you know the page is actually eligible to appear.
A founder ships a comparison page on Tuesday. On Friday they type the exact title into Google and get nothing. So they rewrite the intro, add 600 words, and buy a directory link. Two weeks later, still nothing.
The page was never indexed. Every hour spent on "ranking" work was spent on a URL that wasn't in the race.
I see this pattern constantly with small SaaS sites, and I've done it myself. The symptom is the same whether the problem is a stray noindex tag or a page that simply sits on page four. The fixes are completely different. So before anything else, figure out which stage is broken.
Website not showing up on Google? Four stages, not one
Google describes Search as three stages: crawling, indexing, and serving search results. Before any of those, a URL has to be discovered. Google's own How Search Works documentation explains that new pages are found mostly by extracting links from pages it already knows, or from a sitemap you submit.
That gives you four places the chain can break:
| Stage | What has to happen | What failure looks like |
|---|---|---|
| Discovery | Google learns the URL exists | No internal links point to it, no sitemap lists it |
| Crawling | Googlebot fetches the page | Blocked by robots.txt, server errors, 4xx responses |
| Indexing | Google analyzes and stores the page | noindex, canonical pointed elsewhere, judged a duplicate or not worth storing |
| Serving and ranking | Google shows it for a query | Indexed, but outranked for everything you care about |
The same doc says something every founder should read twice: "Google doesn't guarantee that it will crawl, index, or serve your page, even if your page follows the Google Search Essentials." And: "not every page that Google processes will be indexed."
That's not a bug report you can file. It's the baseline. Your job is to remove every reason for Google to skip the page, then accept that the final call is theirs.
Stop using site: as your diagnostic
The first thing most people do when their website is not showing up on Google is search site:yourdomain.com. It's a reasonable instinct and a poor test.
Google's site: operator documentation states plainly that it "doesn't necessarily return all the URLs that are indexed under the prefix specified in the query." A missing result from site: is weak evidence. A present result tells you little about why a different page is missing.
Use it as a rough sanity check at most. For a real answer about a specific URL, Google points you to Search Console's URL Inspection tool.
The URL Inspection decision tree
If you haven't verified your domain in Search Console yet, that's step zero. It's also part of the technical foundation in my SaaS SEO checklist for the first six months, because nothing in this article works without it.
Paste the exact URL (with the right protocol, trailing slash, and www or non-www) into the inspection bar. The URL Inspection tool help page lists the verdicts you'll see. Here's how I branch on them.
Branch 1: "URL is on Google"
The page is indexed. Google's help page adds the important caveat: being indexed does not guarantee it appears for any given search.
So this isn't an indexing problem. It's a ranking problem, and you can stop reading the technical sections below. Two checks before you move on:
- Search the exact page title in quotes. If it shows up, the page is served; it just doesn't rank for the queries you want.
- Open the Performance report filtered to this URL. If it shows impressions at a deep average position, the page is being served, just not competitively.
From here, your problem is winnability, not eligibility. That's where improving rank on Google without backlinks picks up.
Branch 2: "URL is on Google, but has issues"
Still indexed. The issues relate to enhancements such as structured data or AMP, per the help page. Fix them if they matter to you, but they don't explain why the page is invisible. Treat this like Branch 1.
Branch 3: "URL is not on Google"
This is the real diagnostic. Expand the Page indexing section and read the fields in order. The help page documents each one:
- Discovery. Does the report list a Referring page or Sitemaps? If Google found the URL through neither, you have a discovery problem.
- Crawl allowed? If no, robots.txt is blocking Googlebot.
- Page fetch. If the fetch failed, Google couldn't retrieve the page from your server.
- Indexing allowed? If no, a noindex meta tag or HTTP header is telling Google not to index it.
- User-declared canonical versus Google-selected canonical. If Google picked a different URL as canonical, it considers your page a duplicate of that one and indexes the other instead.
The first "no" you hit is where to start. Fix it, then run Test live URL to confirm Google can now fetch and index the current version. The help page is explicit that the live test "does not test for all possible indexing issues," including duplicate detection and quality, so a passing live test means eligible, not guaranteed.
Then click Request indexing once. Google says indexing "typically takes only a day or so, but can take much longer," that a request "does not guarantee that the page will appear in the Google Index," and that there's a daily limit. Hammering the button doesn't help. Beyond Google's own hedged wording, I won't promise a timeline.
Reading the Page indexing report statuses
URL Inspection works one page at a time. The Page indexing report shows the same reasons across the whole site, grouped. On a small site, the statuses that matter most map neatly onto the stages above.
| Status in the report | Stage that failed | What it usually means |
|---|---|---|
| Discovered - currently not indexed | Crawling | Google knows the URL but hasn't crawled it yet |
| Crawled - currently not indexed | Indexing | Google fetched it and chose not to index it for now |
| URL blocked by robots.txt | Crawling | Your robots.txt disallows the path |
| URL marked 'noindex' | Indexing | A noindex tag or header is present |
| Duplicate, Google chose different canonical than user | Indexing | Google disagrees with your canonical and indexes another URL |
| Duplicate without user-selected canonical | Indexing | Near-duplicates with no canonical declared |
| Soft 404 | Indexing | Page returns 200 but looks empty or like an error page |
| Not found (404), Server error (5xx) | Crawling | The fetch itself failed |
The report's own descriptions are short: Discovered means "the page was found by Google, but not crawled yet," and Crawled means "the page was crawled by Google but not indexed." Google's help page adds that Discovered usually means the crawl was rescheduled because crawling then was expected to overload the site, and that for Crawled there is no need to resubmit the URL. On a small site, I read both as Google not yet seeing enough reason to prioritize the page. Each of these statuses deserves a deep dive of its own.
One trap I'll call out now because I've watched founders fall into it: blocking a page in robots.txt and adding noindex at the same time. Google's noindex documentation says that for noindex to work, the page "must not be blocked by a robots.txt file." If Googlebot can't crawl the page, it never sees the tag. And Google's robots.txt intro is blunt that robots.txt "is not a mechanism for keeping a web page out of Google." Two tools, two jobs. Mixing them up works against you either way.
Why a new website is not showing up on Google
If the whole domain is new, the problem usually sits upstream in discovery and crawling, not in some penalty.
A new site has no external links pointing in, so Google's main discovery path, following links from pages it already knows, has almost nothing to follow. That leaves two levers you control: a sitemap, and your own internal links.
On sitemaps, Google's sitemap overview says a site of "about 500 pages or fewer" that's comprehensively linked internally may not need one, where comprehensively linked means Googlebot "can find all the important pages on your site by following links starting from the home page." Most early SaaS sites fit that size. Submit one anyway; it's cheap. But note the same page says a sitemap "doesn't guarantee that all the items in your sitemap will be crawled and indexed."
Internal links are the lever people underuse. A blog post that nothing links to is an orphan: the only way Google finds it is your sitemap, which removes the link-based discovery path Google describes. If you're publishing and forgetting, read about finding orphan pages before you write anything new. Then build pages into clusters, so every new article gets links from related ones on the day it goes live. My internal linking strategy for topic clusters covers the mechanics.
For the broader sequencing on a fresh domain, what to publish when, and why patience is part of the plan, see the first-90-days SEO plan for new domains.
When my website is not showing up on Google, what I check in order
Here's the sequence I actually run. It's boring on purpose.
- Inspect the exact URL in Search Console. Read the verdict.
- If indexed, stop doing technical work. Check the Performance report for that URL and treat it as a ranking problem.
- If not indexed, walk the fields top to bottom: discovery, crawl allowed, page fetch, indexing allowed, canonical. Fix the first failure.
- Run Test live URL after the fix, then request indexing once.
- Check the Page indexing report for the same status across other URLs. One noindex bug in a template usually hits dozens of pages.
- Strengthen discovery. Link to the page from your homepage, a hub page, or related posts. Make sure it's in the sitemap.
- If it's "Crawled - currently not indexed" and nothing technical is wrong, ask the uncomfortable question: is this page meaningfully different from what's already indexed on your site and elsewhere?
That last one is where the technical diagnostic hands off to strategy.
The part no checklist fixes
Once a page is eligible, crawled, and indexed, "why is my website not showing up on Google search" becomes a different question: why isn't it ranking for the query I want?
For a small, low-authority site, the honest answer is often that the query was never winnable. The page is competing against domains with years of links for a head term, and Google is correctly serving the stronger result. No amount of Request indexing changes that.
This is the problem I'm building Boomranq around. The indexing checks above make sure your page is in the race. Picking queries where a low-authority site can realistically place, and publishing them in an order that builds internal links as you go, decides whether being in the race means anything. Fix eligibility first. Then spend your writing time on queries you can win.