GA4のAPIでデータを取るには?Data APIでできることと、使う前の準備
「GA4のデータを、スプレッドシートやスクリプトで自動で取りたい」
「APIというものがあると聞いたけれど、何を使えばいいのか分からない」
「画面の数字と、APIで取った数字が合わない」
GA4のデータをAPIで取る方法を調べて、この記事にたどり着いた方に向けた記事です。
先に答えを書きます。GA4のレポートのデータをAPIで取るときに使うのは、Google Analytics Data APIです。使う前に、Google Cloudのプロジェクトと、GA4の画面でのアクセス権の付与が要ります。標準のプロパティには、決まった上限があります。
この記事では以下の3つを解説します。
- Data APIでできることと、できないこと
- 使う前の準備
- 上限と、画面の数字とずれるときの確かめ方
読み終える頃には、APIで取るのか、コードを書かずに取るのかを、決められるようになります。
なお、公式のドキュメントの内容は更新されることがあります。手順や上限は、使う前に公式のページで確かめてください。この記事は公式の記載を整理したもので、実際にコードを動かした結果ではありません。
GA4のレポートを取るのは、Data APIです
GA4には、目的の違うAPIが2つあります。
| API | 公式のドキュメントでの説明 |
|---|---|
| Data API | Google アナリティクスのレポートデータに、プログラムでアクセスできる |
| Admin API | Google アナリティクスの設定データに、プログラムでアクセスできる |
数字を取りたいなら、Data APIです。Admin APIは、アカウントやプロパティの設定を扱うほうです。
公式のドキュメントによると、Data API v1は、Google アナリティクスの画面と同じレポートデータにアクセスします。画面で見ている数字の元データを、プログラムで取るというイメージです。
AIにGA4の数字を聞く仕組みも、このData APIを使っています。AIの側の話は、GA4のMCPサーバーとは|AIにGA4の数字を聞く仕組みと、つなぐ前の準備にまとめました。
できることは、レポート・リアルタイム・ファネルの3つです
Data APIでできることは、公式のドキュメントでは、おもに3つのレポートに分かれます。
| 種類 | 公式のドキュメントに書かれていること |
|---|---|
| コアのレポート | 画面のレポートと同じデータを取る |
| リアルタイム | イベントが送信されてから、数秒後にリアルタイムレポートに表示される |
| ファネル | 目標到達プロセスのレポート機能は、v1alphaのバージョンでのみ使用できる |
ファネルだけは、ほかとバージョンが違います。公式のドキュメントには、v1alphaでのみ使用できる、とあります。
取れるディメンションと指標の一覧は、公式のドキュメントでは、APIスキーマのページで案内されています。画面にある指標が、すべてAPIで取れると書いた文は、確かめた範囲では見つかりませんでした。使いたい指標があるときは、スキーマのページで、名前があるかを先に探します。
使う前の準備は、プロジェクト・アクセス権・プロパティIDの3つです
使う前に要るものは、公式のドキュメントでは次のとおりです。
- Google Cloudのプロジェクト: Data APIへのリクエストには、すべてGoogle Cloudのプロジェクトが必要で、そこでData APIを有効にします
- GA4の画面でのアクセス権: Google アナリティクスの画面で、使うユーザーアカウントに、プロパティへのアクセス権を付与します
- プロパティID: APIのリクエストでは、プロパティIDを指定する必要があります
3つ目のプロパティIDは、GA4の画面にいくつかある番号のうちの1つです。取り違えやすいので、GA4のプロパティとは?アカウントとの違いと3つの番号で見分け方を整理しました。
アクセス権の付け方は、公式のクイックスタートでは「アクセス権を付与する」とだけ書かれています。同じ公式のMCPの案内には、閲覧者ロールを付与する例が出ています。どのロールで足りるかを、Data API全体について書いた文は、確かめた範囲では見つかりませんでした。役割の違いは、GA4の権限付与|5つの役割の違いと、外部に渡すときの判断で扱っています。
APIを使うには、コードより先に、プロジェクト・アクセス権・プロパティIDの3つをそろえます。
標準のプロパティには、決まった上限があります
Data APIには、割り当て(クォータ)という上限があります。公式のドキュメントによると、標準のプロパティの上限は、次のとおりです。
| 割り当て | 標準プロパティ | アナリティクス 360 |
|---|---|---|
| プロパティあたりの1日のコアトークン数 | 200,000 | 2,000,000 |
| プロパティあたりの1時間のコアトークン数 | 40,000 | 400,000 |
| プロパティあたりの同時コアリクエスト数 | 10 | 50 |
表の数字は、公式のドキュメントの表のとおりです。リクエスト1回で、トークンがいくつ減るかは、リクエストの中身で変わります。この記事では、その数え方は確かめていません。
上限に当たったときの扱いは、この記事では確かめていません。運営者の見方としては、1回に大量に取るより、必要な項目と期間だけに絞って、回数を抑えるほうが安全です。
APIの数字が、画面とずれることがあります
APIで取った数字が、画面と合わない場合があります。公式のドキュメントには、APIから返されるデータと、画面に表示されるデータとの間に、差異が生じることがよくある、と書かれています。
ずれるときに、まず疑うのは、データの処理の時間です(運営者の見方)。公式のヘルプによると、データの処理には24〜48時間かかることがあります。直近の日の数字は、画面では、まだ動きます。その話は、GA4のユーザー数が合わない|足し算していませんかの「直近の日は、まだ動きます」に書きました。
ずれの原因を、公式のドキュメントで1つに決めることは、この記事ではできません。確かめるときは、同じ期間・同じ指標・同じ条件にそろえてから、画面とAPIを見比べます。
コードを書かずに取る方法も、公式にあります
コードを書かなくても、公式の道具でData APIのデータを取れます。
- Google スプレッドシートのアドオン: 公式のドキュメントによると、Google アナリティクス向けのレポート ビルダーのアドオンで、スプレッドシートからレポートを作成して実行できます
- Looker Studio: GA4のデータに接続するレポートには、Data APIの割り当てが適用される、と公式のドキュメントにあります。つまり、Looker Studioで見るときも、上の上限の中で動きます
Looker Studioの使い方は、Looker Studioの使い方|週次レポートを自動化するにまとめています。
とはいえ、取ったデータを毎週、自分で見比べて読み解くのは、手間のかかる作業です。私たちが運営する週報AIは、GA4とサーチコンソールのデータをAIが毎週(ライトプランは月1回)自動で取得し、「今週何が変わったか・なぜか・次に何をすべきか」を専門用語を使わない日本語でお届けします。
よくある質問
GA4のデータをAPIで取るには、何を使いますか?
Google Analytics Data APIを使います。公式のドキュメントによると、Data APIでGoogle アナリティクスのレポートデータにプログラムでアクセスできます。設定データを扱うのは別のAPIで、Admin APIです。
APIで取れる数字は、GA4の画面と同じですか?
公式のドキュメントは、Data API v1は画面と同じレポートデータにアクセスする、と説明しています。一方で、APIから返るデータと画面に表示されるデータとの間に、差異が生じることがよくある、とも書いています。数字を突き合わせるときは、後者を先に確かめます。
APIを使うのに、何が要りますか?
公式のドキュメントには、Google Cloudプロジェクトが必要で、そこでData APIを有効にすること、Google アナリティクスの画面で、使うアカウントにプロパティへのアクセス権を付与すること、リクエストでプロパティIDを指定することが書かれています。
APIの利用に上限はありますか?
あります。標準プロパティでは、プロパティあたりの1日のコアトークン数が200,000、1時間が40,000、同時のコアリクエスト数が10と、公式のドキュメントの表にあります。アナリティクス360はこれより大きい上限です。
まとめ
- GA4のレポートをAPIで取るのは、Data API。設定を扱うのは別のAdmin API
- Data APIは、公式のドキュメントでは、画面と同じレポートデータにアクセスする。ただし、差異が生じることがよくあるとも書かれている
- 使う前に、Google Cloudのプロジェクト・アクセス権・プロパティIDの3つが要る
- 標準のプロパティの上限は、1日200,000トークン・1時間40,000トークン・同時10リクエスト(コアの割り当て)
- コードなしなら、スプレッドシートのアドオンとLooker Studioが、公式にある
APIで取るか迷ったら、欲しい数字が、画面や公式のアドオンで足りるかを先に確かめてください。足りるなら、コードを書く前に済みます。
サイトの数字を見るのをやめて、AIに読ませませんか?
この記事の運営者が開発した「週報AI」は、GA4・サーチコンソールなどのデータをAIが分析し、"次にやること"まで日本語レポートで届けるサービスです。
