Search ConsoleのデータをGoogleスプレッドシートに入れる一番早い方法は、レポート右上のエクスポートボタンです。Google スプレッドシートを選ぶと、Search Consoleは表示中のデータを新しいスプレッドシートで開きます。このエクスポートは表ごとに1,000行で止まり、一度きりのコピーで更新されることはありません。もっと多くの行がほしい場合や、自動で更新されるシートにしたい場合は、Search Analytics for SheetsのようなアドオンかApps Scriptの短いスクリプトでスプレッドシートをSearch Console APIに接続し、定期的に実行します。シートがダッシュボードにデータを渡すためだけにあるなら、Looker Studioのコネクタが同じAPIを、シートを挟まずに読み込みます。
エクスポートボタンでGoogleスプレッドシートにエクスポートする
Search Consoleのほとんどのレポートはエクスポートでき、現在Googleが提供している形式はGoogleスプレッドシート、Microsoft Excel、CSVの3つです。検索パフォーマンスのレポートでは、次のように操作します。
- 検索パフォーマンス > 検索結果(またはDiscover、Google ニュース)を開き、先に期間、検索タイプ、フィルタを設定します。エクスポートには、フィルタを適用した状態で、レポートに表示されている内容がそのまま含まれるからです。
- レポート右上のエクスポートをクリックします。
- Google スプレッドシートを選びます。Search Consoleが、自分のGoogleアカウントの新しいスプレッドシートにデータを出力します。EXCELをダウンロードとCSVをダウンロードでは、同じデータがファイルとして得られます。
Googleはグラフと表の両方のデータをエクスポートするので、検索パフォーマンスのエクスポートには、日別の合計に加えて、クエリ、ページ、国、デバイス、検索での見え方がそれぞれ別のシートに入り、使ったフィルタを一覧にしたシートも付きます。レポートで~や-(利用できない、または数値ではない)と表示される値は0として出力されるので、シートの0が必ずしも何も起きなかったことを意味するわけではありません。
Googleスプレッドシートへのエクスポートの1,000行の制限
Googleのヘルプには、エクスポートでは「データは、データの代表的な例として1,000行に切り捨てられます」とはっきり書かれています。合計は切り捨てられません。Googleは「表示される合計は実際の合計であり、行数の制限が適用された合計ではありません」と付け加えているので、大きなサイトでは、クエリのシートの行を足すと、隣にある合計クリック数より少なくなります。匿名化されたクエリは、Search Consoleがすべての表から除外するので、その差をさらに広げます。国とデバイスは1,000行に余裕で収まります。制限が効いてくるのはクエリとページです。
上限を回避する方法はどれも、Search Console API、Looker Studioのコネクタ、BigQueryの一括エクスポートのいずれかを経由します。Search Consoleから1,000行を超えるデータを取り出す方法でそのすべてを比較しており、以下の2つの節では、APIをGoogleスプレッドシートに取り込む方法を紹介します。
Search Analytics for Sheetsアドオン
Search Analytics for Sheetsは、Mihai Aperghisが作ったサードパーティのGoogleスプレッドシート用アドオンです。Googleの製品ではありませんが、自分のGoogleアカウントでGoogleのSearch Console APIを読み込みます。Google Workspace Marketplaceからインストールし、スプレッドシートの拡張機能メニューから開いて、プロパティ、期間、ディメンション、フィルタを選ぶと、行がシートに書き込まれます。サイトでは、データを毎日または毎月の間隔でダウンロードする定期バックアップについても説明しており、一度きりのエクスポートを、増え続けるシートに変えられます。
このアドオンには無料プランと、1リクエストあたりの行数を増やせる有料プランがあり、料金ページにプランごとの現在の上限が載っています。APIを経由するので、API自体の上限にも縛られます。Googleのヘルプによると、プロパティごとに「検索パフォーマンスレポートのデータは、タイプごとに1日あたり50K行に制限されます」。また、匿名化されたクエリはどの行にも出てきません。
Apps ScriptでGoogleスプレッドシートをSearch Console APIに接続する
アドオンをインストールしたくない場合は、どのGoogleスプレッドシートにも拡張機能 > Apps Scriptとして用意されているApps Scriptから、Search Analytics APIを直接呼び出せます。以下の関数は、1か月分のクエリとページの行を1回のリクエストで最大25,000行取得し、GSCという名前のシートに書き込みます。大きなサイトでは、応答が空になるまでstartRowを25,000ずつ増やしてリクエストを繰り返し、Googleが推奨しているとおり1日分ずつ取得してください。
function exportSearchConsole() {
const site = 'sc-domain:example.com';
const url = 'https://www.googleapis.com/webmasters/v3/sites/' +
encodeURIComponent(site) + '/searchAnalytics/query';
const response = UrlFetchApp.fetch(url, {
method: 'post',
contentType: 'application/json',
headers: { Authorization: 'Bearer ' + ScriptApp.getOAuthToken() },
payload: JSON.stringify({
startDate: '2026-10-01',
endDate: '2026-10-31',
dimensions: ['query', 'page'],
rowLimit: 25000
})
});
const rows = (JSON.parse(response.getContentText()).rows || [])
.map(r => [...r.keys, r.clicks, r.impressions, r.ctr, r.position]);
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('GSC');
sheet.clearContents();
sheet.appendRow(['query', 'page', 'clicks', 'impressions', 'ctr', 'position']);
if (rows.length) sheet.getRange(2, 1, rows.length, 6).setValues(rows);
}
スクリプトにはSearch Consoleを読み取る権限が必要です。Apps Scriptのエディタでプロジェクトの設定を開き、「appsscript.json」マニフェスト ファイルをエディタで表示するにチェックを入れて、以下のスコープをマニフェストに追加します。初回の実行時に、プロパティへのアクセス権があるGoogleアカウントで承認を求められます。Googleから、プロジェクトでSearch Console APIが使われていない、または無効になっているという応答が返ってきた場合は、同じくプロジェクトの設定で、Google Search Console APIを有効にした標準のGoogle Cloudプロジェクトにスクリプトをリンクしてください。
"oauthScopes": [ "https://www.googleapis.com/auth/webmasters.readonly", "https://www.googleapis.com/auth/script.external_request", "https://www.googleapis.com/auth/spreadsheets.currentonly" ]
シートを自動で最新の状態に保つ方法
エクスポートボタンで作ったシートは変わらないので、最新の状態を保つには手作業でエクスポートし直すしかありません。APIを使う方法なら、自動で実行できます。
- Search Analytics for Sheetsは毎日または毎月定期バックアップを実行するので、シートを開かなくてもデータがたまっていきます。
- Apps Scriptは時間主導型のトリガーで実行します。エディタでトリガー(時計のアイコン)を開き、関数にトリガーを追加して、時間主導型のイベントと日付ベースのタイマーを選びます。固定の日付は、スクリプト自身が計算する日付に置き換えてください。履歴を積み上げたい場合は、シートをクリアするのではなく、毎日の行を追記します。
- n8nなどのワークフローツールは、Search Consoleのデータを定期的に取得し、Googleスプレッドシートのノードでシートに追記できます。
どの方法を選ぶにしても、前日ではなく2、3日前の日付を指定してください。Search Consoleのデータは遅れて届き、直近の数日分はしばらくの間データが追加され続けます。詳しくはSearch Consoleのデータの遅延で説明しています。毎朝前日分を記録するジョブでは、まだ不完全な日が保存されてしまいます。
シートの代わりにLooker Studioを使う
シートがグラフにデータを渡すためだけにあるなら、省くことができます。Search ConsoleをLooker Studioに接続すれば、ダッシュボードは更新のたびにAPIをライブで読み込み、上限はアドオンやスクリプトと同じ1日50,000行です。GoogleはLooker Studioの名前をData Studioに戻したので、どちらの名前も目にするかもしれません。Looker StudioはGoogleスプレッドシートをデータソースとして読み込むこともできるので、先にスプレッドシートで行を整えたり情報を加えたりする場合に便利です。
どの方法を使うべきか
| 方法 | 行数 | 最新の状態を保てるか | コストと手間 |
|---|---|---|---|
| エクスポートボタン、Googleスプレッドシート | 1テーブルあたり1,000行 | 不可。手作業で再エクスポート | 無料、ワンクリック |
| Search Analytics for Sheets | プランごと、APIの上限内 | 可能。定期バックアップ | 無料プランと有料プラン。コード不要 |
| Apps ScriptとAPI | 1リクエストあたり25,000行、検索タイプごとに1日あたり約50,000行 | 可能。時間主導型のトリガー | APIの割り当て内で無料。スクリプトが必要 |
| Looker Studioコネクタ | APIと同じ | 可能。ライブ | 無料。シート不要 |
| GSC Wizard | 表のすべての行を、16か月を超えて保存 | 可能。REST APIまたはn8n経由 | 有料プランは月額€17から、7日間の無料トライアル |
GSC WizardのデータをGoogleスプレッドシートに取り込む
GSC Wizardでは、どの表にも[Copy table]オプションがあり、行をクリップボードにコピーしてそのままGoogleスプレッドシートに貼り付けられます。CSVエクスポートには最初の1,000行だけでなく表のすべての行が含まれ、ファイル名には対象の期間が入ります。どちらもエクスポートのドキュメントで説明しています。自動で更新されるシートには、REST APIとn8nのコミュニティノードがアプリと同じレポートを返します。n8nのノードは1行ごとに1アイテムを返し、これはGoogleスプレッドシートのノードが想定している形です。どちらもGSC Wizardの契約かトライアルが必要ですが、エクスポートボタン、Apps Script、Looker Studioは無料です。
よくある質問
Search ConsoleからGoogleスプレッドシートに1,000行を超えてエクスポートできますか?
エクスポートボタンではできません。すべての表が1,000行に切り捨てられます。Search Console APIを使えば、Search Analytics for SheetsのようなアドオンやApps Scriptで、1リクエストあたり最大25,000行、検索タイプごとに1日あたり約50,000行を取得できます。匿名化されたクエリを除くすべての行がほしい場合は、BigQueryへの一括データエクスポートを設定してください。
Search ConsoleからのGoogleスプレッドシートへのエクスポートは自動で更新されますか?
いいえ。エクスポートボタンは、その時点のレポートの一度きりのコピーを作ります。シートを最新の状態に保つには、定期バックアップのあるアドオン、時間主導型のトリガーで動くApps Script、または定期的に新しい行を追記するワークフローツールを使ってください。
Search Analytics for SheetsはGoogleが作ったものですか?
いいえ。Search Analytics for Sheetsは、Mihai Aperghisが作ったサードパーティのGoogleスプレッドシート用アドオンです。自分のGoogleアカウントで公式のSearch Console APIを読み込むので、APIの上限の範囲内で、自分と同じプロパティとデータが見えます。
シートの行を足しても合計クリック数にならないのはなぜですか?
エクスポートでは表ごとに最大1,000行しか残りませんが、合計はプロパティ全体の実際の合計です。また、匿名化されたクエリはすべての表から除外されますが、合計には含まれます。そのため、表が1,000行未満でも、クエリの行を足すと少なくなります。
コードを書かずにGoogle Search ConsoleをGoogleスプレッドシートに接続できますか?
はい。エクスポートボタンは設定が一切不要で、Search Analytics for Sheetsのようなアドオンなら、メニューからスプレッドシートをSearch Console APIに接続できます。目的がダッシュボードなら、無料のLooker StudioコネクタがシートなしでSearch Consoleを直接読み込みます。
出典
- Search Console ヘルプ:Search Consoleのレポートからデータを直接エクスポートする
- Search Console ヘルプ:Search Console APIを使ってSearch Consoleのデータをエクスポートする
- Search Console API:Search Analyticsのクエリ
- Search Analytics for Sheets
- Search Analytics for Sheets:料金