10.6 データ連携と自動化
この章で学ぶこと
- GA4 のデータ API でできること
- GA4 のデータを CRM などの社内のデータと結合する方法
- 定期的なレポートを自動化する方法
データ API の概要
GA4 には、プログラムからデータを取得・操作するための API が用意されています。
| API | 内容 | 使いどころ |
|---|---|---|
| Google Analytics Data API | GA4 のレポートのデータ(ディメンションと指標)を取得する | 社内のシステムやスプレッドシートに、定期的に数値を取り込む |
| Google Analytics Admin API | GA4 のアカウントやプロパティの設定を、取得・変更する | 多くのプロパティの設定を、まとめて確認・変更する |
| Measurement Protocol | サーバーから GA4 にイベントを送る(第 9 部) | オフラインの成果を送る |
Data API で取得できるデータ
Data API では、GA4 のレポートと同じように、ディメンションと指標を指定してデータを取得します。
リクエストの例(イメージ)
プロパティ:properties/123456789
期間:2026-10-01 〜 2026-10-27
ディメンション:date、sessionDefaultChannelGroup
指標:sessions、keyEvents
| 特徴 | 内容 |
|---|---|
| 画面と同じ数値 | GA4 の画面と同じ処理の結果を取得できる(しきい値なども同様に適用される) |
| 割り当て(クォータ) | 1 時間・1 日あたりに使える量に上限がある |
| 使い方 | プログラム(Python、JavaScript、Google Apps Script など)から呼び出す。スプレッドシートのアドオンを使う方法もある |
API と BigQuery の使い分け
| 目的 | 向いている方法 |
|---|---|
| GA4 の画面と同じ数値を、定期的に取り込みたい | Data API |
| 生データで、自由な分析をしたい | BigQuery |
| 長期間のデータを保存したい | BigQuery(または Data API で取得した結果を保存) |
| 少ない手間で、スプレッドシートに数値を取り込みたい | Data API(アドオンや Looker Studio 経由) |
ポイント Looker Studio の GA4 コネクタも、内部では Data API を使っています。プログラムを書かずに GA4 のデータを使いたい場合は、まず Looker Studio やスプレッドシートのアドオンを試しましょう。
CRM データとの結合
GA4 でわかるのは、サイトの中での行動までです。問い合わせのあと、その見込み顧客が成約したか、購入した顧客が、その後どれくらい購入しているか などは、CRM(顧客管理システム)や基幹のシステムにデータがあります。
GA4 のデータと CRM のデータを組み合わせると、次のような分析ができるようになります。
| 分析 | わかること |
|---|---|
| 流入元別の成約率 | どのチャネル・広告から来た問い合わせが、実際に成約しやすいか |
| 流入元別の LTV | どのチャネルから獲得した顧客が、長期的に多く購入しているか |
| 成約した顧客のサイトでの行動 | 成約した人は、問い合わせの前にどのページを見ていたか |
結合の方法
GA4 のデータと CRM のデータを結びつけるには、両方に共通の キー が必要です。
| キー | 内容 | 注意点 |
|---|---|---|
| User-ID | 会員の ID を GA4 に送っている場合、CRM の会員 ID と結びつけられる | GA4 に送る ID は、氏名やメールアドレスではなく、社内の ID にする |
client_id(user_pseudo_id) | 問い合わせのフォームで、ブラウザの client_id を隠しフィールドで送り、CRM に保存する | 同意の取得とプライバシー ポリシーへの記載が必要 |
| 取引 ID | purchase の transaction_id と、基幹システムの注文番号を一致させる | 注文番号の形式をそろえる |
| 問い合わせの ID | フォームの送信のイベントに、問い合わせの受付番号をパラメータで付ける | 受付番号に個人情報を含めない |
BigQuery で結合する例
CRM の成約データを BigQuery にアップロードし、GA4 のデータと結合します。
-- GA4:問い合わせのイベント(受付番号と流入元)
WITH leads AS (
SELECT
(SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'inquiry_id') AS inquiry_id,
collected_traffic_source.manual_source AS source,
collected_traffic_source.manual_medium AS medium
FROM `project.analytics_123456789.events_*`
WHERE _TABLE_SUFFIX BETWEEN '20260701' AND '20260930'
AND event_name = 'generate_lead'
)
-- CRM:成約のデータ(受付番号、成約したか、金額)
SELECT
leads.source,
leads.medium,
COUNT(*) AS lead_count,
COUNTIF(crm.is_closed) AS closed_count,
SAFE_DIVIDE(COUNTIF(crm.is_closed), COUNT(*)) AS close_rate,
SUM(crm.deal_amount) AS deal_amount
FROM leads
LEFT JOIN `project.crm.deals` AS crm
ON leads.inquiry_id = crm.inquiry_id
GROUP BY leads.source, leads.medium
ORDER BY deal_amount DESC
(collected_traffic_source には、UTM などのパラメータがあるイベントで値が入ります。流入元の取り方は、計測の方法に合わせて調整してください)
注意 GA4 のデータと CRM の個人のデータを結びつけると、「どの個人が、サイトでどんな行動をしたか」がわかる状態になります。これは、プライバシーの観点で慎重な扱いが必要です。利用の目的をプライバシー ポリシーで説明し、データにアクセスできる人を限り、社内のルールに沿って扱いましょう(第 11 部)。
GA4 にデータを戻す
結合して得られた情報(成約したかどうか、顧客のランクなど)を、GA4 に戻して使うこともできます。
| 方法 | 内容 |
|---|---|
| データのインポート(ユーザー データ) | User-ID や client_id をキーに、ユーザーの属性を GA4 に取り込む |
| Measurement Protocol | 成約のイベントを、サーバーから GA4 に送る(第 9 部) |
| オフライン コンバージョンのインポート | Google 広告に、成約のデータを取り込み、広告の入札の最適化に使う |
定期レポートの自動化
毎月・毎週のレポートを、手作業で作っていると、時間がかかるうえに、ミスも起きやすくなります。
自動化の方法
| 方法 | 内容 | 手間 |
|---|---|---|
| Looker Studio の定期配信 | レポートを、決まった日時に PDF でメール送信する | 少ない |
| GA4 のレポートのメール配信 | GA4 のレポートを、定期的にメールで送る(共有の機能) | 少ない |
| BigQuery のスケジュールされたクエリ | 毎日決まった時間に SQL を実行し、集計テーブルを更新する | 中程度 |
| スプレッドシート + Apps Script | Data API で数値を取得して、スプレッドシートに書き込み、メールやチャットに通知する | 中程度 |
| データ パイプラインのツール | 複数のツールのデータを、定期的に BigQuery などに集める | 大きい |
自動化の例:週次の KPI をチャットに通知する
毎週月曜日 9:00
1. BigQuery のスケジュールされたクエリで、前週の KPI(ユーザー数、キーイベント数、チャネル別の内訳)を集計する
2. 集計結果を、Looker Studio のダッシュボードに反映する
3. Apps Script などで、主な数値と前週比、ダッシュボードのリンクを、社内のチャットに投稿する
自動化するときの注意
| 注意点 | 内容 |
|---|---|
| 異常に気づける仕組み | 自動化すると、数値を見なくなりがち。前週比が大きく変わったときに通知する、などの仕組みを入れる |
| 計測の不具合の影響 | 計測が止まっていても、レポートは自動で作られてしまう。データ品質の点検(第 11 部)と組み合わせる |
| 担当者がいなくなったとき | 自動化の仕組みを作った人が異動しても続けられるよう、仕組みの説明と、アカウント・権限の管理を文書にしておく |
| 費用 | スケジュールされたクエリが、想定より多くのデータを読み取っていないか、定期的に確認する |
ポイント 自動化の目的は、レポートを作る時間を減らして、数値を見て考え、行動する時間を増やす ことです。自動化したレポートには、「今週のポイント」を人が 1〜2 行書き加えるだけでも、伝わり方が大きく変わります(第 12 部)。
まとめ
- GA4 の Data API を使うと、画面と同じ数値をプログラムから取得でき、Admin API で設定を管理できる
- 生データの自由な分析は BigQuery、画面と同じ数値の定期取得は Data API が向いている
- User-ID、client_id、取引 ID などの共通のキーで、GA4 と CRM のデータを結びつけると、流入元別の成約率や LTV がわかる
- 個人のデータと結びつけるときは、プライバシー ポリシーでの説明と、アクセスの制限が欠かせない
- 定期レポートは、Looker Studio の配信や BigQuery のスケジュールされたクエリで自動化し、異常に気づく仕組みも入れる
これで第 10 部は終わりです。理解度クイズ で確認してみましょう。次の第 11 部では、プライバシーの法規制と同意管理、データの品質を守る方法を学びます。