インデックスプッシュ
ページを公開しても、すぐにクロールされるわけではありません。新しいドメインでは、Googleがサイトマップで見つけたURLを数週間放置することがあります。このスキルは、ページが公開された日からインデックスされるまでのルーティンワークです。4つのチャネルをすべて使用してください。それぞれ異なるエンジンに到達し、異なる制限があります。
| チャネル | 到達先 | 1日の制限 | 方法 |
|---|---|---|---|
IndexNow(scripts/indexnow.mjs) | Bing、Yandex、Naver、Seznam、Yep。Googleは含まない | リクエストあたり10,000 URL | 1コマンド |
| Search Console URL検査 → インデックス登録をリクエスト | プロパティあたり約10 URL。米国太平洋時間の深夜頃にリセット | ブラウザ、1回に1 URL | |
| Search Console サイトマップ → 再送信 | 実質的に制限なし | ブラウザ、1フィールド | |
| Bing Webmaster Tools → URL送信 | Bing | 100 URL | ブラウザ、リストを貼り付け |
インデックス登録リクエストは、私たちにとってGoogleを動かした方法です。「不明」または「検出済み」だった8つのURLが、リクエストから約1日後にはすべてインデックスされました。サイトマップとIndexNowだけではGoogleのページは待たされたままでした。
ブラウジングルール。 Search ConsoleとBing Webmasterはサインインが必要なサイトです。人間のペースで1ページずつ作業し、UIをスクリプト化しないでください。ソーシャルサイトについても同様です。サイトがレート制限やブロックをかけてきたら、停止してユーザーに伝えてください。
初回セットアップ
- Search Console: ドメインプロパティを追加(DNS TXTレコードで確認)。そのTXTレコードは絶対に削除しないでください。削除すると確認が失効します。
- Bing Webmaster Tools: 「Google Search Consoleからインポート」が最速です。GSCのドメインプロパティはインポートできません。代わりにBingはURLプレフィックスサイト(
https://example.com/)を作成しますが、これは機能します。そこにもサイトマップを送信してください。 - IndexNowキーファイル、最初の送信前にデプロイします:
キーは設計上公開されています(誰でもファイルを読める)、そのためKEY=$(openssl rand -hex 16) printf '%s' "$KEY" > public/$KEY.txt # サイトルートで提供される任意のフォルダ # コミット、デプロイ、その後キーだけが出力されることを確認: curl -s "https://example.com/$KEY.txt"package.jsonに含めることができます:"seo:indexnow": "INDEXNOW_KEY=<key> node scripts/indexnow.mjs --host example.com" - キューファイル
docs/seo/index-queue.md(以下のテンプレート)、リポジトリにコミットします。テンポラリフォルダやスクラッチフォルダには置かないでください。
ワークフロー:ページ公開当日
- ページがライブであることを確認。 自サイト、順次リクエスト:
すべてのURLが200を返し(リダイレクトではない)、自己参照カノニカルを持ち、サイトマップに含まれ、Googleがすでにクロールしている少なくとも1つのページ(ホーム、ブログインデックス、フッターの「最新投稿」ブロック、関連記事)からリンクされている必要があります。これらに失敗するものは送信しないでください。for p in /blog/new-post /zh/blog/new-post; do curl -s -o /dev/null -w "%{http_code} $p\n" "https://example.com$p" done curl -s https://example.com/blog/new-post | grep -o '<link rel="canonical"[^>]*>' - IndexNow。
200または202は受け入れられたことを意味します(202は新しいキーが検証中の間は正常です)。403:キーファイルがライブでないか、内容が異なります。422:URLが別のホストにある場合、通常はnpm run seo:indexnow -- /blog/new-post /zh/blog/new-post npm run seo:indexnow -- --sitemap # 大規模リリース後、または変更内容が不明な場合www.とベアドメインの違い。 - キューを更新。 前回の実行以降の新規URLを、ライブサイトマップとコミットされたスナップショットの差分で見つけます(初回実行時はスナップショットを保存するだけ。
--dry-runはキー不要):キューの順序:(1)本日公開されたページ、新しいものから順に。(2)一次言語を翻訳より先に(例:英語、中国語)。(3)時事情報(リリース、閉鎖など)をエバーグリーンより先に。(4)コンテンツが実質的に変更された既存ページ。他のロケールは最後。node scripts/indexnow.mjs --host example.com --sitemap --dry-run 2>/dev/null | sort > sitemap-now.txt comm -13 docs/seo/sitemap-snapshot.txt sitemap-now.txt # スナップショット以降に追加されたURL mv sitemap-now.txt docs/seo/sitemap-snapshot.txt - Search Consoleでサイトマップを再送信 多くのURLや新しいセクションを追加した後:サイトマップ →
https://example.com/sitemap.xmlを入力 → 送信。「検出済みページ」の数を自身のカウントと比較します。古くなることがあります:再送信するまで243と表示されていたのが、再送信後423になりました。 - Search Consoleでインデックス登録をリクエスト、キューの先頭から:
- Search Consoleを開き、URL内のアカウント(
/u/0/、/u/1/、/u/2/)がプロパティを表示していることを確認します。インデックスは日によって変わります。リストされている方を使用してください。 - 上部の検査バーにURLを貼り付け、結果を待ち、「インデックス登録をリクエスト」をクリックし、ライブテストが完了するのを待ちます(約1分)。
- 「インデックス登録がリクエストされました」ダイアログが表示された場合のみカウントします。ダイアログがなければ送信されていません。多くの場合、アカウントに権限がありません。
- 初回試行で「Something went wrong」が発生した場合:1回再試行してください。通常は成功します。
- 「Quota Exceeded」:その日は停止します。クォータは米国太平洋時間の深夜頃にリセットされます。1日約10件を見込んでください。
- キュー行に日付を記入します。
- Search Consoleを開き、URL内のアカウント(
- Bing Submit URLs: Bing Webmaster Tools → URL送信 → URLを送信 → キューから次のURLを1行に1つずつ、ページに表示されている残りのクォータ(1日100件)まで貼り付けます。キュー行に日付を記入します。
- 記録 各アクションにつき1行を
docs/seo/log.mdに、デプロイまたはコミット参照とともに記録します:- main=abc1234 live. IndexNow 18 URLs → 200. GSC requested 10 (Quota Exceeded on the 11th). Bing 100 submitted, 44 left in queue.
フォローアップ、1~3日後
URL検査で最新のページから最初に検査します(Bingにも同様のステータスを持つ独自のURL検査があります):
| ステータス | 意味 | 対応 |
|---|---|---|
| URL is on Google | インデックス済み | インデックス済みとマーク、キューから削除、ログに記録 |
| URL is unknown to Google | Googleが読んだサイトマップになく、リンクも見つからない | サイトマップを再送信、内部リンクを追加、インデックス登録をリクエスト |
| Discovered – currently not indexed、Referring page: None detected | GoogleはサイトマップからのみURLを知っており、クロールしていない | すでにクロール・訪問されているページからのリンクを追加。外部リンクを獲得。インデックス登録をリクエスト |
| Crawled – currently not indexed | フェッチされたが、まだインデックスする価値がないと判断された | 薄いコンテンツや重複コンテンツ(翻訳、テンプレート化されたページ)を確認。改善または統合。これ以上のリクエストは役に立たない |
| Duplicate、Google chose different canonical | カノニカルやhreflangの混乱 | カノニカルタグを修正。ロケールバージョンが同一でないことを確認 |
| Page with redirect / Not found (404) | サイトマップ内の誤ったURL | サイトマップを修正 |
「Referring page: None detected」が重要な手がかりです:修正方法はリンクであって、さらなる送信ではありません。私たちに効果があったのは:ホームページとトップガイドから最新の5つの投稿へのリンクを含むフッターブロック、関連記事間の相互リンク、そしてREADMEがページにリンクしている公開GitHubリポジトリです。
Search Consoleのパフォーマンスデータは2〜3日遅れます。昨日の数値でページを判断しないでください。
キューファイルテンプレート
# インデックスキュー
先頭 = 次に送信。順序:最新のものから順。英語と中国語を他のロケールより先に。
制限:Googleインデックス登録リクエスト 1日約10件/プロパティ(米国太平洋時間の深夜頃リセット)。Bing URL送信 1日100件。
| URL | 追加日 | Googleリクエスト | Bing送信 | インデックス済み |
|---|---|---|---|---|
| https://example.com/blog/new-post | 2026-11-07 | 11-08 | 11-07 | |
| https://example.com/zh/blog/new-post | 2026-11-07 | | 11-07 | |
チェックリスト
- 各URLがライブ:200、自己カノニカル、サイトマップ内、クロール済みページからのリンクあり
- IndexNowが新規・変更URLに対して200または202を返した
- キューが更新され、優先順位でソートされた
- 大規模追加後にサイトマップを再送信。検出済み数が一致
- Search Consoleインデックス登録リクエストをクォータまで実行。各リクエストがダイアログで確認済み
- Bing URL送信をクォータまで実行
- コミットまたはデプロイ参照を含むログ行が記録された。フォローアップ検査日が記載された
遭遇した落とし穴
- インデックス登録リクエストが3日間効果なし。 確認ダイアログが一度も表示されませんでした。ブラウザのデフォルトのGoogleアカウントにプロパティへのアクセス権がありませんでした。所有するアカウント(別の
/u/N/)でSearch Consoleを開くとすぐに修正されました。数日後、さらに別のインデックスでプロパティが開かれました。 - 「Invalid sitemap address」。 ドメインプロパティで
sitemap.xmlと入力すると失敗します。完全なhttps://example.com/sitemap.xmlが必要です。 - 古いサイトマップカウント。 サイトに100ページあるのに、Search Consoleは再送信するまで11件の検出済みページと表示し続けました。その後、243件対423件になりました。
- リンクのないページは見えないまま。 内部リンクなしで公開された2つのガイドが、数日後も「GoogleにURLが不明」のままでした。
- クォータの見積もり誤り。 最初は1日約4リクエストと思っていましたが、実際は約10件でした。11件目は「Quota Exceeded」を返します。
- その日の最初のリクエストが失敗 し、「Something went wrong」が表示されました。再試行で成功しました。
- キューを紛失。 テンポラリフォルダに保存していた115 URLのBingリストがセッション再起動で消え、サイトマップから再構築しました。キューはリポジトリに保存してください。
- キューがクォータより長い。 忙しい日の後、115 URLが100件のBingスロットを待っていました。優先順位で何を先に送るか決めました:英語と中国語の新規投稿を先に、翻訳は後。
- セッション内にブラウザがない。 Search ConsoleとBingにはブラウザが必要ですが、IndexNowは不要です。IndexNowを実行し、ギャップをログに記録し、次のセッションで追いつきます。
- 202、その後200。 IndexNowは新しいキーでの最初の送信には202、その後は200を返しました。どちらも成功です。
- 翻訳がクォータを圧迫。 441のサイトマップURLのうち約392が翻訳でした。それらを手動ですべて送信すると、新しいドメインがめったにインデックスしないページに数日分のクォータを費やすことになります。
関連スキル
- seo-page:このスキルでインデックス登録するページを構築します。
- programmatic-pages:一度に多数のURLを公開します。キューの優先順位が最も重要です。
- multilingual-seo:どのロケールを最初に公開・送信するか。hreflang。
- competitor-pages、trend-keywords:キューの先頭に来る時事情報のページ。
- keyword-research:そもそもどのページが存在するかを決定します。
- ai-search:AIクローラー向けのllms.txtとrobots.txt。BingのインデックスはCopilotも利用します。
- seo-daily-report:何がインデックスされ、明日何がキューにあるかを報告します。