SEOの競合分析では、特定キーワードの検索結果を定点観測したい場面があります。しかし毎回手で検索して順位を控えるのは現実的ではありません。ブラウザで検索した結果は、パーソナライズの影響も受けます。
Google Custom Search APIとGASを組み合わせ、キーワード別のランキングデータを自動取得してDiscordへ通知する仕組みを構築しました。構成がシンプルなため、運用のマニュアル化まで見通せる形になっています。
この検証の概要
検証時期 | 2025年9月27日 |
|---|---|
使用ツール | Google Custom Search API / GAS / Discord |
やりたかったこと | 特定キーワードのオーガニック検索結果を自動収集し、競合の変動やトレンドを定点観測する |
できたこと | 検索エンジンIDとAPIキーによるキーワード別ランキングデータの自動取得とDiscord通知 |
特徴 | 操作がシンプルなため、検索条件の追加作業をマニュアル化できる状態 |
判定 | 完了(マニュアル化可能) |
本記事は自社での検証記録です。工数削減の定量測定は行っていないため、数値は掲載していません。
結論:シンプルだからこそ運用に乗る
この検証の価値は、機能の派手さではなく運用のしやすさにあります。
操作がシンプルであるため、検索条件の追加作業を容易にマニュアル化できる状態になりました。「このキーワードも追加で追いたい」という要望に、担当者が自分で対応できます。
自動化の仕組みは、作った人しか触れないと形骸化します。手順書にできる程度の単純さを保つことは、それ自体が設計目標になり得ます。
構成
1. Google Cloud Console で Custom Search API を有効化
2. 検索エンジンID と APIキー を取得
↓
3. GAS からキーワードを指定して検索結果を取得
↓
4. Discord へ通知特別なサーバーは不要です。GASで動くため、実行環境の用意も要りません。
なぜAPIで取るのか
ブラウザで手動検索した結果は、ログイン状態や検索履歴によるパーソナライズの影響を受けます。定点観測をしたい場合、これは邪魔になります。
APIで取得すれば、条件を固定した生データが得られます。戦略立案の素材としては、こちらのほうが扱いやすくなります。
次の展開:LLMで「訴求の変化」をレポート化する
現時点では検索結果のデータを取得するところまでですが、次の一手を計画しています。
取得したタイトル・スニペット情報をLLMに渡し、「競合の訴求ポイントの変化」を週次でレポート化する処理を追加するというものです。
順位の上下だけを見ていても、なぜ動いたのかは分かりません。タイトルやスニペットの文言がどう変わったかを追えば、競合が何を打ち出そうとしているかが見えます。データを取るところまでは自動化できたので、次は解釈の部分をAIに任せる、という段階です。
よくある質問
手動で検索するのと何が違いますか?
パーソナライズの影響を受けない生データが取れます。ブラウザでの検索結果はログイン状態や履歴に左右されるため、定点観測には向きません。
非エンジニアでも運用できますか?
構成がシンプルなため、検索条件の追加はマニュアル化できます。初期構築(API有効化・キー取得)にはGoogle Cloud Consoleの操作が必要ですが、そこを越えれば運用は容易です。
順位変動の理由まで分かりますか?
現時点では取得までです。今後、取得したタイトル・スニペットをLLMに渡し、競合の訴求ポイントの変化を週次レポート化する処理を追加する予定です。
まとめ
- Google Custom Search API × GAS で、キーワード別ランキングデータの自動取得とDiscord通知を実現
- APIで取ることで、パーソナライズの影響を受けない生データが得られる
- 構成がシンプルなため、検索条件の追加をマニュアル化できる——運用に乗せやすい
- 次は取得データをLLMに渡し、競合の訴求ポイントの変化を週次レポート化する計画
自動化では「高度な仕組みを作ること」より「担当者が自分で条件を足せること」のほうが、長く使われる条件になります。
株式会社AI棒では、こうしたAI活用の検証を日々行い、企業のマーケティング業務の自動化を支援しています。ご相談はお問い合わせフォームから、継続的な伴走支援についてはAI参謀をご覧ください。
