コンテンツにスキップ

🌐 hreflang タグジェネレーター

ベース URL と対応言語を選択するだけで <link rel="alternate" hreflang="..."> タグを一括生成。x-default 自動付与、ISO 639 + 国コードチェック、CSV 入力で多パス一括処理。

完全無料 登録不要 ブラウザ完結 5 言語対応 ダークモード

🔒 プライバシーについて

カンマ区切り。形式: ISO 639-1 (例 en) または ISO 639-1 + ISO 3166-1 (例 en-US, zh-CN)。

📄 生成タグ


📖 つまずきやすいポイント

ベース URL と対応ロケールから <link rel="alternate" hreflang="…"> を生成します。パス先頭・サブドメイン・クエリの 3 通りの URL パターンと x-default の自動付与、CSV による一括生成に対応し、処理はブラウザ内で完結します。hreflang は検索順位を上げるための要素ではありません「同じ内容の別言語版がここにある」と申告し、検索エンジンにどの版を出させるかを助けるだけのものです。

ケース 何が起きるか どうする
相互参照になっていなくて無視される hreflang はグループ全体が互いを指していないと成立しません — 日本語版が英語版を指していても、英語版が日本語版を指していなければ、Google はそのセットごと無視します。さらに見落とされやすいのが自分自身への hreflang も必要だという点で、日本語版のページには hreflang="ja" で自分を指すタグも入れます。実際にいちばん多い失敗は「1 ページだけ更新して他の言語版を忘れる」ことです — 新しい言語を追加したときに既存の全ページのタグを更新しなければならないという運用負荷が、この仕組みの本質的な難しさです。 生成したタグのセットを、全言語版の <head> にそっくり同じ内容で入れてください — 各ページで内容を変える必要はありません。実装としては、ページのテンプレートで言語一覧をループして出力するのが唯一まともな方法です — 手で書くと必ずどこかがずれます。大規模サイトでは、HTML ではなく sitemap.xml に書く方式を検討してください<xhtml:link> で同じ情報を表現でき、1 つのファイルで全ページ分を管理できるので、更新漏れが構造的に起きません確認は Search Console の「国際ターゲティング」レポートで、実際に認識されているかを見てください — 「リターンタグがありません」と出ていれば、それが相互参照の欠落です。
言語コードの書式が間違っている hreflang の値は「言語」または「言語 + 地域」で、地域だけを書くことはできませんhreflang="US" は無効です。よくある誤りとしては、en-UK (正しくは en-GB)zh だけで簡体字と繁体字を区別しようとするアンダースコア区切りの ja_JP (ハイフンが正しい) などがあります。中国語はとくに注意が必要で、簡体字と繁体字は zh-Hans / zh-Hant という文字体系のコードで書き分けますzh-CN / zh-TW も使えますが、これは地域なのでシンガポールやマレーシアの簡体字利用者には一致しません 言語コードは ISO 639-1、地域コードは ISO 3166-1 alpha-2、区切りはハイフンです。そして重要なのは、地域を付ける必要があるかを考えることです — hreflang="en"英語話者すべてに一致しますが、hreflang="en-US"米国にいる英語話者だけに一致します。国ごとに内容や価格が違わないなら、地域は付けないほうが到達範囲が広くなります。地域を付けるのは、通貨・送料・法規制が国ごとに違うページに限ってください。検証は無料の hreflang チェッカーを使うのが確実ですが、まずは自分で 2 言語分の HTML を並べて、互いを指しているかを目で確認してください — ほとんどの誤りはこの段階で見つかります。
canonical と矛盾して英語版がインデックスされない hreflang と canonical は役割が違うのに、混同されがちです。各言語版の canonical自分自身を指す必要があります/en/about/ の canonical を /ja/about/ にすると、「英語版は日本語版の複製だから日本語版だけをインデックスしろ」と宣言したことになり、英語版は検索結果から消えます。そのうえで hreflang も無視されます (canonical が別ページを指しているセットは信頼されないため)。「多言語だから正規化が必要だろう」という善意の設定が、正反対の結果を生む典型例です。 各言語版の canonical は必ず自分自身にしてください。hreflang が「別の言語版の存在」を伝え、canonical が「このページ自身が正規版である」と伝える — この 2 つは併存して初めて正しく機能します。canonical を使うべきなのは、同じ言語の中で URL が重複している場合 (末尾スラッシュの有無、トラッキングパラメータ付き URL、印刷用ページなど) だけです。実装したら、Search Console の URL 検査で「Google が選択した正規 URL」を確認してください — ここが自分の意図と違っていれば、設定が伝わっていないという明確な証拠です。

hreflang を入れれば全言語版がインデックスされる、というわけではありません。翻訳が薄い、あるいは機械翻訳をそのまま出しているページは、hreflang があっても品質評価で落ちます — このサイト自身、2026 年 7 月にポルトガル語とドイツ語版を廃止しました。実態は英語ページの複製で、独自の価値が無かったためで、576 URL を 301 リダイレクトで整理しています。言語版を増やす前に、「その言語で読む価値のある内容になっているか」を確認してください — 薄い翻訳を大量に足すことは、サイト全体の評価にとってはむしろ負債です。実装場所は HTML の <link>、HTTP レスポンスヘッダ、sitemap.xml の 3 通りがあり、どれか 1 つでよく、併用しても構いませんが、内容が食い違うと無視されます。PDF のように <head> を持たないファイルには、HTTP ヘッダの Link: を使ってください

📖 使い方

  1. 1
    ベース URL を入力
    多言語化したいページの URL を入力。
  2. 2
    ロケールを指定
    対応する言語コードをカンマ区切りで入力 (en, ja, ko 等)。
  3. 3
    タグを取得
    生成された <link> タグを各ページの <head> に貼り付け。

❓ よくある質問

x-default は必須ですか?
必須ではありませんが、Google 公式に推奨されています。地域・言語が一致しないユーザーにフォールバックとして表示されます。
hreflang はどこに記述すべき?
HTML 、HTTP ヘッダー、XML サイトマップの 3 箇所いずれか。大規模サイトはサイトマップ管理が楽です。
双方向リンクは必要ですか?
はい。A→B と B→A の両方に hreflang を記述する必要があります。片方だけだと Google は無視します。本ツールは全 URL に全ロケールを出力します。
🐛 このツールで問題が発生しましたか?

完全無料・登録不要。再現手順だけでも結構です。届いたご報告は運営者に直接届き、修正の参考にします。

※ 不具合再現のため、ブラウザ情報 (UA / 画面サイズ / 言語 / URL) を自動で送信します