Domain 27 / 225

多言語サイトは hreflang で言語と地域を Google に伝える

国際 SEO の要点

多言語・多地域サイトは hreflang タグで「どの言語・地域版があるか」を Google に伝える。URL 構造は ccTLD(.de)/ サブドメイン / サブディレクトリの 3 形式。hreflang は相互参照(A → B / B → A)が必須で、片方向だけだと無視される。x-default で「該当言語版がない時のデフォルト」を指定する

なぜこれを学ぶか

国際 SEO は 多言語サイトで誤設定するとすべての言語版がカニバライズして全滅するハイリスクな領域。 hreflang を正しく実装すれば、各言語・地域のユーザーに最適な版を出せて流入が大幅に増える。

グローバル EC・SaaS・観光・教育サービスで海外展開する際に必須。

学ばないと起きること

よくある事故被害
hreflang を片方向だけ設定(A → B はあるが B → A がない)Google が無効と判定、設定全体が機能しない
翻訳の質が低い / 機械翻訳のまま放置スパム判定または低品質コンテンツとして低評価
同じ内容を複数言語版に hreflang なしで公開カニバライズで全言語版の順位が下がる
URL 構造が一貫していない(example.com/de/de.example.com が混在)Google が同一サイトと認識しにくい
x-default を設定しない該当言語版がないユーザーへの表示が不安定
hreflang のロケールコード誤り(en-UK / 正しくは en-GB設定が全部無視される
canonical を別言語版に向ける言語版が統合されて単一版だけ検索結果に

学ぶメリット

  • 多言語サイトを誤設定なしで構築できる
  • 海外進出時に URL 構造を論理的に決められる
  • hreflang の相互参照ルールを商談で即答できる
  • ccTLD / サブドメイン / サブディレクトリのトレードオフを説明できる

仕組み

多言語・多地域サイトの URL 構造

公式に推奨される 3 形式:

形式強み弱み
ccTLD(国別ドメイン)example.de example.fr地域シグナル最強管理コスト高 / SEO 評価が分散
サブドメインde.example.comドメイン統一 / 別サイト扱い可能地域シグナル中
サブディレクトリexample.com/de/管理シンプル / 親ドメイン評価を継承地域シグナルやや弱め

中規模までの多言語展開ならサブディレクトリ + gTLD(example.com/de/ example.com/fr/)が運用コストとのバランスで推奨されることが多い。

hreflang の基本実装

3 つの方法のいずれかで指定:

<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="ja" href="https://example.com/ja/page" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />

2. HTTP ヘッダ(非 HTML ファイル用)

Link: <https://example.com/page>; rel="alternate"; hreflang="en",
      <https://example.com/ja/page>; rel="alternate"; hreflang="ja"

3. サイトマップ

<url>
  <loc>https://example.com/page</loc>
  <xhtml:link rel="alternate" hreflang="en" href="https://example.com/page"/>
  <xhtml:link rel="alternate" hreflang="ja" href="https://example.com/ja/page"/>
</url>

大規模サイトはサイトマップ方式が運用しやすい。

hreflang の値の形式

形式
言語のみen ja fr de
言語 + 地域en-US en-GB pt-BR pt-PT
デフォルト(マッチしない時)x-default

ISO 639-1 言語コード + ISO 3166-1 国コード。en-UK(誤)でなく en-GB(正)。

キー概念

相互参照のルール

公式に明記された最重要ルール: すべての言語版が互いに hreflang で参照し合う必要がある

<!-- 英語版に書く -->
<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="ja" href="https://example.com/ja/page" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page" />

<!-- 日本語版にも同じセットを書く -->
<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="ja" href="https://example.com/ja/page" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page" />

<!-- ドイツ語版にも同じセットを書く -->
(同上)

A → B しか書いていない場合、Google は無効と判定する。

x-default の役割

「リストにない言語のユーザーに表示するデフォルト」を指定する。 通常は英語版または言語選択ページを指定。

<link rel="alternate" hreflang="x-default" href="https://example.com/" />

x-default を指定しないと、該当言語版がないユーザーに対して Google の判定が不安定になる。

canonical との関係

各言語版は 自身を canonical にする。 別言語版を canonical にすると、Google が言語版を統合して単一版だけ検索結果に出すリスクがある。

<!-- 日本語版の canonical -->
<link rel="canonical" href="https://example.com/ja/page" />
<!-- 英語版を canonical にしない -->

翻訳の質と SEO

公式: 機械翻訳をそのまま公開するのはスパム ポリシー違反

OK:

  • 人間による翻訳
  • 機械翻訳 + 人間レビュー
  • ネイティブによる校正

NG:

  • Google 翻訳の出力をそのまま掲載
  • 主要コンテンツが機械翻訳のまま、ヘッダーフッターだけローカライズ

低品質と判定されると検索結果から外れる。

ヘッダー / フッターのみ翻訳

主要コンテンツ(本文)が同じで、ヘッダー / フッター / ナビだけ翻訳した場合、Google は 「重複コンテンツ」と判定することがある。本文も含めて完全翻訳が必要。

よくある誤解

よくある誤解実際のところ出典
hreflang は片方向だけで OKNG。すべての言語版が互いに参照し合う必要があるhreflang の使い方
ロケールコードは大文字小文字を区別する区別しない(en-US / EN-US は同じ)が、慣例として 言語小文字-国大文字同上
en-UK でイギリス英語を表せるNG。en-GB(ISO 3166-1)が正しい同上
canonical を英語版に向ければ評価が集約言語版が統合されて単一版だけ検索結果に出るリスク、各言語版は自身を canonical に同上
ccTLD(.de)が SEO 上絶対的に有利地域シグナルは強いが管理コスト + 評価分散で必ずしも有利ではない同上
機械翻訳をそのまま公開しても問題ないスパム判定 / 低品質判定で検索結果から外れるスパム ポリシー
ヘッダー / フッターだけ翻訳すれば多言語サイト扱い重複コンテンツ判定のリスク、本文も完全翻訳が必要hreflang の使い方
x-default を設定しなくても影響はない該当言語版がないユーザーへの表示が不安定になる同上

実務での適用

多言語サイト立ち上げ時のチェックリスト

  1. URL 構造を決定(ccTLD / サブドメイン / サブディレクトリ)
  2. 各言語版を完全翻訳(本文含む、機械翻訳のままは NG)
  3. hreflang を 3 方法のいずれかで実装
  4. すべての言語版で相互参照(A ↔ B ↔ C)
  5. x-default を必ず指定
  6. 各言語版の canonical は自身に向ける
  7. Search Console に各言語版(ccTLD なら別ドメインとして)を verify

サブディレクトリ方式での hreflang サンプル

<!-- /page(英語、デフォルト)-->
<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="ja" href="https://example.com/ja/page" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />
<link rel="canonical" href="https://example.com/page" />

<!-- /ja/page(日本語)-->
<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="ja" href="https://example.com/ja/page" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />
<link rel="canonical" href="https://example.com/ja/page" />

Search Console での hreflang 確認

「設定 > インターナショナル ターゲティング」レポートで:

  • hreflang のエラー(リンクが 404 / 相互参照漏れ)
  • 検出された言語の一覧

エラーがあると hreflang 全体が無効化される可能性があるので、定期確認が必要。

地域別ターゲティングと SEO

ニーズ推奨手段
言語別ページを各言語ユーザーにhreflang で言語指定(en ja
国別ページ(同じ言語で違う内容)hreflang で言語 + 国指定(en-US en-GB
通貨 / 価格が国別hreflang + 国別 IP リダイレクト(ただし IP リダイレクトは慎重に)

トラブル別の対処

症状確認すべきこと
Search Console「インターナショナル ターゲティング」エラー多発hreflang の相互参照漏れ / リンク 404 / ロケールコード誤り
多言語サイトで全言語版の順位が下がるhreflang 設定漏れでカニバライズ、各言語版の canonical を自身に
ユーザーの国に合わない言語版が表示されるx-default の設定 / hreflang の地域指定見直し
ccTLD 移行後に評価が分散サイト移転手順に従い 301 + URL マッピング、各 ccTLD で hreflang 設定

公式ソース

自己テスト

Q1. hreflang は片方向だけ設定すれば OK か?

NG。すべての言語版が互いに参照し合う必要がある。 A → B しか書いていない場合、Google は設定全体を無効と判定する

Q2. ロケールコード `en-UK` は正しいか?

正しくない。en-GB(ISO 3166-1)が正しい。 UK は ISO 3166-1 で定義されていない

Q3. 各言語版の canonical はどこを指すべきか?

自身を指す。別言語版を canonical にすると Google が言語版を統合して単一版だけ検索結果に出すリスクがある

Q4. x-default の役割は?

リストにない言語のユーザーに表示するデフォルト版を指定する。 通常は英語版または言語選択ページを指定する

Q5. 多言語サイトの URL 構造で地域シグナルが最も強いのは?

ccTLD(example.de example.fr など国別ドメイン)。 ただし管理コストが高く、SEO 評価が分散するデメリットもある

Q6. 機械翻訳をそのまま公開するのは OK か?

NG。スパム ポリシー違反 / 低品質判定で検索結果から外れる。 人間による翻訳または機械翻訳 + 人間レビューが必要

Q7. ヘッダー / フッターだけ翻訳すれば多言語サイト扱いになるか?

ならない。本文も完全翻訳が必要。 ヘッダー / フッターだけ翻訳した場合、Google は「重複コンテンツ」と判定するリスクがある

Q8. hreflang を実装する 3 つの方法は?
  1. HTML head の <link rel="alternate" hreflang="...">
  2. HTTP ヘッダ(非 HTML ファイル用)
  3. サイトマップ(大規模サイトで運用しやすい)

これらの内容を採点付きで挑戦したい場合は、本ドメインのプロ試験で 5 問形式で確認できる。