多言語サイトの翻訳ページがインデックスされない原因と対策

多言語サイトを制作・運用していると、よく出てくる悩みのひとつが「翻訳ページがなかなかGoogleにインデックスされない」という問題です。
日本語ページは検索結果に出ているのに、英語ページや中国語ページ、韓国語ページが検索しても出てこない。
URL検査をしてみると「インデックス未登録」になっている。多言語化したのに検索流入が増えない。
こうした状況は、多言語サイトではかなりよくあります。
ただし、ここで大事なのは、翻訳ページがインデックスされない理由は1つではないということです。
単純にGoogleが見つけていない場合もあれば、
- 技術設定に問題がある
- 品質が低いと判断されている
- noindexやcanonicalの設定が邪魔している
- 自動翻訳のままで評価されにくい
- JavaScriptで表示していて内容を認識しづらい
- 言語切り替えの作り方に問題がある
といった、いくつもの原因が考えられます。
この記事では、翻訳ページがインデックスされない主な原因と、それぞれの具体的な対策を、できるだけわかりやすく解説します。
多言語SEOに取り組んでいる方や、これから翻訳ページを増やしていきたい方にとって、基本の確認に使える内容です。
まず前提:インデックスされることと、上位表示されることは別
最初に整理しておきたいのは、
インデックスされることと、検索上位に出ることは別だという点です。
Googleの検索の流れは大きく、
- クロール
- インデックス
- 検索結果への表示
という段階に分かれます。
つまり、翻訳ページが検索結果に出ない場合でも、
- そもそもクロールされていない
- クロールはされたがインデックスされていない
- インデックスはされたが順位が低い
のどこで止まっているかを見極める必要があります。
この記事では、特に「翻訳ページがインデックスされない」という状態に絞って話を進めます。
原因1:翻訳ページが別URLになっていない
これはかなり多いです。
多言語サイトでよくあるのが、同じURLのまま、ブラウザの言語設定やボタン操作で表示言語だけを切り替える構成です。
たとえば、
- example.com/page
という同じURLで、日本語にも英語にも中国語にも切り替わるような仕組みです。
この構造だと、Googleが各言語ページを別ページとして認識しづらくなります。
その結果、翻訳ページが十分にインデックスされないことがあります。
対策
翻訳ページごとに、必ず別URLを持たせます。
たとえば、
- example.com/ja/
- example.com/en/
- example.com/zh/
のように、言語ごとにURLを分けるのが基本です。
原因2:noindex が入っている
翻訳ページがインデックスされないとき、かなり基本ですが見落としやすいのがnoindexです。
多言語サイトでは、次のような場面でうっかり入っていることがあります。
- テスト中の翻訳ページをそのまま公開した
- 翻訳プラグイン側の設定で noindex になっている
- ステージング用の設定が残っている
- CMSやSEOプラグインが自動で noindex を付けている
対策
各翻訳ページのソースコードやHTTPヘッダーを確認し、noindexが入っていないか確認します。
特にWordPressでは、
- SEOプラグインの設定
- 多言語プラグインの設定
- 固定ページ単位のインデックス設定
を確認した方がいいです。
原因3:canonical が元言語ページを向いている
これもかなり多いです。
たとえば英語ページなのに、canonical が日本語ページを指していると、Googleは「この英語ページではなく、日本語ページが正規URLです」と理解しやすくなります。
対策
各翻訳ページの canonical は、原則としてその翻訳ページ自身を指すようにします。
たとえば、
- 日本語ページ → 日本語URLをcanonical
- 英語ページ → 英語URLをcanonical
- 中国語ページ → 中国語URLをcanonical
にするのが基本です。
翻訳ページを日本語ページの重複コンテンツのように扱ってしまう設定は避けます。
原因4:hreflang の設定ミス
hreflang は、翻訳ページが必ずインデックスされる魔法ではありません。
ただし、多言語ページ同士の関係をGoogleに伝える重要なシグナルです。
設定ミスがあると、
- 対応ページの関係が伝わらない
- 言語切り替えの構造を誤解される
- 想定外のページが優先される
ことがあります。
よくあるミス
- 相互指定になっていない
- 自分自身を含めていない
- URLが間違っている
- 言語コード・地域コードが誤っている
- 存在しないURLを指定している
対策
- 各言語ページが互いを正しく指しているか確認する
- 自分自身も含める
- XMLサイトマップまたはHTML headで整合性を取る
- Search Console や検証ツールでミスを洗い出す
hreflang は「インデックスされない直接原因」というより、多言語ページの整理不足を招く原因として効いてきます。
原因5:自動翻訳の品質が低く、価値が弱い
ここはかなり重要です。
翻訳精度が低いページや、意味は通るが不自然なページは、Googleから見てもユーザー価値が弱いと判断されやすくなります。
翻訳ページが、
- 不自然な直訳
- 日本語の文章構造のまま
- 意味は通るが読みにくい
- 必要な情報が不足している
- 他言語ユーザーに向けた補足がない
という状態だと、インデックス優先度が低くなる可能性があります。
対策
自動翻訳を使う場合でも、最低限次の調整をした方がいいです。
- タイトルと見出しを自然にする
- 問い合わせや予約周りの文言を見直す
- 海外ユーザーが必要とする補足情報を加える
- 重要ページは人の目で確認する
要するに、翻訳しただけではなく、読まれるページにすることが必要です。
原因6:翻訳ページの内容が薄い
翻訳ページがインデックスされない原因は、技術だけではありません。
コンテンツ量や内容の薄さも影響します。
たとえば、
- ほとんど文章がない
- 画像だけで説明している
- 日本語ページの一部しか訳していない
- テンプレートだけあって中身がない
- 言語切り替えはあるが本文が極端に少ない
といったページです。
対策
翻訳ページでも、最低限以下を揃えます。
- そのページが何のページか分かるタイトル
- 本文の説明
- 見出し構造
- 問い合わせや予約など次の行動導線
- その言語ユーザー向けに必要な補足情報
特にトップページ、サービスページ、アクセス、FAQ、問い合わせページは薄くしない方がいいです。
原因7:robots.txt やリソース制限で正しく読み取れない
翻訳ページ自体は公開されていても、Googlebot が必要なリソースを読み込めないと、内容を十分に理解できないことがあります。
特に多言語切り替えがJavaScript依存の場合、ここが詰まりやすいです。
対策
- robots.txt で CSS や JavaScript をブロックしていないか確認する
- 翻訳本文がレンダリング後にしか出ない構造になっていないか確認する
- URL検査ツールでGoogleがどう見ているか確認する
原因8:JavaScript依存で、翻訳本文が取得されにくい
最近のサイトでは、翻訳ページをJavaScriptで描画していることがあります。
GoogleはJavaScriptを処理できますが、構造によっては翻訳本文の認識が不安定になることがあります。
対策
- 可能ならサーバーサイドレンダリングや静的出力を使う
- 初期HTMLに主要コンテンツを含める
- JavaScriptなしでも本文の骨格が確認できる構造にする
多言語サイトは特に、
検索エンジンが確実に本文を取得できる形
が重要です。
原因9:内部リンクが弱く、翻訳ページが見つかりにくい
翻訳ページが存在していても、サイト内からほとんどリンクされていないと、Googleが見つけにくくなります。
多言語サイトでは、
- ヘッダーの言語切り替えだけ
- 特定ページからしか行けない
- サイトマップに載っていない
- 英語ページ群の内部リンクが薄い
という状態になりがちです。
対策
- 各ページから対応する翻訳ページへリンクする
- XMLサイトマップに翻訳ページを含める
- 英語ページ同士、中国語ページ同士でも内部リンクを張る
- ナビゲーションから辿りやすくする
インデックスの第一歩は、
Googleに見つけてもらうこと
です。
原因10:公開直後で、まだクロール・インデックス待ち
意外と多いのが、翻訳ページを公開してすぐに「検索しても出ない」と焦るケースです。
でも新しいURLは、クロール・インデックスに時間がかかることがあります。
特に、
- 新規ドメイン
- 新規言語ディレクトリ
- 内部リンクが弱い
- サイト更新頻度が低い
場合は時間がかかりやすいです。
対策
- Search Console でURL検査を行う
- サイトマップ送信を行う
- 内部リンクを増やす
- しばらく待って再確認する
ただし、数週間以上動きがない場合は、他の原因も疑うべきです。
翻訳ページがインデックスされないときの確認手順
実務では、次の順で確認すると整理しやすいです。
1. URLは言語ごとに分かれているか
同じURLで言語を出し分けていないかを確認します。
2. noindex や robots 制限がないか
meta robots、X-Robots-Tag、robots.txt を確認します。
3. canonical が自己参照か
翻訳ページが元言語ページをcanonicalにしていないか確認します。
4. hreflang が正しいか
相互指定、自分自身、コードミスを確認します。
5. 本文は十分に読めるか
薄すぎないか、不自然すぎないかを確認します。
6. JavaScript依存になっていないか
Googleがレンダリング前後で本文を見られるか確認します。
7. 内部リンク・サイトマップはあるか
翻訳ページへの導線があるか見直します。
多言語SEOの観点での考え方
翻訳ページがインデックスされない問題は、単なる技術トラブルではありません。
多言語SEO全体の設計不足として起きることが多いです。
大事なのは、
- 言語ごとに別URLを持つ
- Googleに関係性を伝える
- 各ページに独立した価値を持たせる
- 運用し続けられる構造にする
ことです。
翻訳ページは、
日本語ページのコピーではなく、その言語ユーザー向けの案内ページとして設計した方が、結果的にインデックスもされやすくなります。
まとめ
翻訳ページがインデックスされない原因は、1つではありません。よくある原因を整理すると、次のようになります。
- 言語ごとに別URLがない
- noindex が入っている
- canonical が元言語ページを向いている
- hreflang の設定ミス
- 自動翻訳の品質が低い
- コンテンツが薄い
- robots やリソース制限がある
- JavaScript依存が強い
- 内部リンクが弱い
- まだ公開直後で反映待ち
そして対策として大切なのは、
- 言語ごとに独立したURLを持たせる
- noindex / canonical / hreflang を正しく整える
- Googleが確実に本文を読めるようにする
- 薄い翻訳ページではなく、価値あるページにする
- 内部リンクとサイトマップで発見しやすくする
ことです。
翻訳ページがインデックスされないときは、「Googleが意地悪をしている」のではなく、検索エンジンにとって理解しにくいか、価値が弱いか、発見しにくいかのどれかであることがほとんどです。
焦ってページを量産するより、まずは技術設定とページ品質を見直す方が近道です。