A dropdown menu kept 248 pages out of Google

Five languages, a dropdown menu in the top right corner. It worked perfectly — for people. For Google, two hundred and forty-eight pages did not exist.

Why a dropdown menu is not navigation

The language switcher was a <select>: pick a language, the page changes. But an <option value="/de/..."> is not a link. It has no href, no anchor text, and the crawler does not simulate a change of selection to find out where it leads. Google's documentation on crawlable links is explicit: only an <a> with an href is followed.

The result: no translated version of the site received a single followable internal link. 248 orphan pages — every English, German, French and Spanish section.

"But the pages were in the sitemap"

They were in the sitemap, yes. It is not enough. A URL declared in the sitemap with no link pointing to it is last in line: the engine sees it and decides it is not worth the crawl. The sitemap tells Google a page exists; internal links tell it the page matters. Those are two different pieces of information, and the second weighs more.

The fix

Trivial: real links, one <a href> for each language version. If you want the look of a dropdown, build it on top of the links — not instead of them.

What changed: from 1 to 4

At the start of August a single page was indexed. Four days after the fix there were four, and among them were exactly the German, Spanish and French home pages: the three paths that previously did not receive even one link.

I don't call it proof. The site is new and was climbing anyway. But the first three to get in were the three that had been orphans.

What did not change: three weeks later there are still four

This is where the article should end, with the chart going up. What followed is less comfortable: as of August 20 the indexed pages are still four, out of 330 declared in the sitemap. Everything else is stuck on "Crawled - currently not indexed".

330 URLs declared in the sitemap, 4 indexed A grid of 330 dots: 326 off, 4 lit in green. Each dot is a site URL declared in the sitemap; the four lit ones are the only pages in Google's index as of August 20, 2026.
One dot per URL in the sitemap. The four green ones are everything Google has indexed.

Before drawing a conclusion I wanted to see the numbers: I crawled all three hundred and thirty URLs declared in the sitemap, extracted the text of every page net of the boilerplate computed language by language, counted inbound internal links excluding those in the header and footer, and compared every page with all the others in its language to look for duplicates.

The audit says nothing else is broken

CheckResult on 330 URLs
Orphan pages0
Unique content, net of the language boilerplateminimum 300 words, median ~700
Maximum internal similarity between pages32% — no duplicates
Self-referencing and reciprocal hreflang330 of 330
hreflang targets missing from the sitemap0
noindex / X-Robots-Tag0 / absent
Response time~80 ms
120 requests at concurrency 10all 200, no dropped connections

There is no bug to find. The switcher fix was necessary and not sufficient, and the two things do not contradict each other: it removed an obstacle that would have blocked everything else anyway.

What is missing is not technical

The other three numbers, measured on the same day:

  • 0 backlinks, 0 referring domains. No site in the world links to this domain.
  • 84 impressions and 6 clicks in 28 days, and only on the four indexed pages.
  • Domain opened to indexing on July 27, with 330 URLs published all at once in five languages.

With a clean setup, "crawled - currently not indexed" is not an error to fix. It is a sentence that means: I have seen it, and I don't yet have a reason to give it a slot. Indexing beyond the entry pages is not unlocked by a tag: it is unlocked when something outside the site confirms the site is worth it. On a domain with zero links that moment comes in months, not weeks.

I am writing this because the comfortable version of this article stops at the previous paragraph, and the comfortable version would have made someone believe that fixing the switcher is enough.

The check you can do in ten seconds

If you run a multilingual site: open the source code and look at the switcher. If what you see is <option value> and not <a href>, your translations are disconnected from the site.

Because this is the point: a site can have versions in five languages, declare them all in the sitemap, serve them with correct and reciprocal hreflang, respond 200 and load in eighty milliseconds, and still stay invisible, if no page on the site tells the engine those versions deserve to be reached.

The same goes for any navigation built with a <select>: filters, categories, locations, archives by year. If the link is not a link, for Google it does not exist.