結論:GA4レポート自動化は「Looker Studioで見た目を自動更新」か「Python(GA4 Data API)で数値をSlack・メールに配信」の二択で、毎月の集計作業を実質ゼロにできます。
- 要点1:GA4の標準レポート・探索レポートは「見る」ためのもので「配る」自動化はできない。配信まで自動化するにはLooker StudioかAPI連携が必須
- 要点2:Looker Studioは無料でノーコード。ただしデータ更新間隔(1〜12時間キャッシュ)の仕様を知らないと「数字が古い」と現場で疑われる
- 要点3:Python + GA4 Data APIなら、Slack自動配信・AIによる自動コメント生成まで一気通貫で作れる。無料枠のクォータ(1日20万トークン)を把握すれば十分足りる
対象読者:毎月のGA4レポート作成を手作業で行っているマーケ担当・経営企画・情シス担当者
今日やること:まず自社のレポートが「見る」用途か「配る」用途かを切り分け、この後の比較表で3方式のどれを選ぶか決める
研修先の担当者から「毎月のGA4レポート作成に丸一日かかっている」という相談を受けることが、正直かなり多いです。スプレッドシートにGA4の数字を手打ちし、前月比を計算し、グラフを貼り、役員向けにコメントを添える。この一連の作業を、月末になるたびに一からやり直している会社が少なくありません。
結論から言うと、この作業のほとんどは自動化できます。しかも高価なBIツールを新規契約する必要はなく、無料のLooker StudioとPythonの標準的なライブラリだけで十分です。問題は「どの方式を選ぶか」で迷って、結局手作業に戻ってしまうケースが多いことです。
私はUravationで100社以上の企業にAI・自動化研修を提供してきましたが、GA4レポートの自動化は「①ツールで見た目を自動更新する」「②APIで数値そのものを配信する」の2階層に分けて考えると、迷いがなくなります。この記事では、この2階層それぞれの具体的な作り方と、実装で必ずつまずくポイントを解説します。
顧問先のある企業では、月次レポート作成の担当者が異動するたびに「作り方が分からなくなった」と引き継ぎに手間取っていました。自動化しておけば、この属人化リスクごと解消できます。今日やることは1つ、自社のレポートが「社内の誰かが定期的に見る」ものなのか「毎回同じフォーマットで配る」ものなのかを切り分けることです。
GA4レポート自動化、3つの方法を比較する
まず全体像です。GA4のレポートを楽にする方法は大きく3つあり、それぞれ向き不向きがはっきりしています。
| 方法 | コスト | 実装難易度 | できること | 向いている人 |
|---|---|---|---|---|
| ①GA4標準レポート・保存済みレポート | 無料 | 低(設定のみ) | ブックマーク的に見る指標を固定できる。配信はできない | 自分が見るだけで十分な担当者 |
| ②Looker Studio | 無料 | 中(ノーコード) | ダッシュボードURL共有・自動更新。関係者に「見てもらう」運用 | 複数人で常時共有したいチーム |
| ③Python + GA4 Data API | 無料(インフラ費除く) | 高(コード実装) | Slack/メールへの自動配信・AIによる自動コメント生成まで可能 | 「配る」自動化まで求める担当者 |
結論として、月次で「役員に配る」「Slackで共有する」ところまで自動化したいなら③一択です。ただし③はコードを書く必要があるため、まずは②のLooker Studioで「見た目の自動更新」を試してから、必要に応じて③に進むのが現実的な順序です。それぞれ具体的に見ていきます。
方法①:GA4標準レポートでどこまでできるか
GA4の管理画面には「標準レポート」と「探索レポート」の2種類があります。標準レポートは決まったテンプレートで、探索レポートは自分で指標・ディメンションを組み合わせられる自由度の高いレポートです。
探索レポートで作った集計は、右上の「共有」から他のGA4ユーザーへ共有できます。ここまでは無料・数分で完結します。ただし重要な制約があります。GA4のUI自体には「毎月1日にPDFをメールで自動送信する」といったスケジュール配信機能がありません。この機能はGoogle広告のような別プロダクトにはありますが、GA4本体にはなく、これが「GA4だけでは自動化しきれない」最大の理由です。
探索レポートの共有URLを社内の担当者に渡しておくのは有効な運用ですが、「自分から見に行く」前提である点は変わりません。ここから先の自動化には、②か③のいずれかが必要になります。
方法②:Looker Studioで自動更新レポートを作る
Looker Studio(旧Googleデータポータル)は、GA4の公式コネクタが用意されており、追加費用なしでGA4データをダッシュボード化できます。手順は次の通りです。
- Looker Studio(lookerstudio.google.com)にアクセスし、「空白のレポート」を新規作成
- データソースの追加で「Google アナリティクス」コネクタを選び、対象のGA4プロパティを選択
- 指標(セッション数・コンバージョン数など)とディメンション(日付・チャネルなど)をドラッグしてグラフを配置
- 右上の「共有」からダッシュボードURLを発行し、関係者に配布
ここで実務上つまずきやすいのが「データの更新頻度」です。Looker StudioはGA4データをAPI経由で取得してキャッシュしており、この更新間隔(データの鮮度)を「1時間」「4時間」「12時間」の3段階から選べます。デフォルトのままだと数値が半日前のまま止まっていることがあり、「レポートの数字がおかしい」という問い合わせの多くはこれが原因です。データソース設定の「データの更新頻度」から間隔を短くするか、必要なタイミングで手動更新できることを、レポートを配る前に関係者へ伝えておくとトラブルを防げます。
また、GA4の標準レポート自体にも24〜48時間程度のデータ反映ラグがあります(リアルタイムレポートを除く)。Looker Studio側の更新間隔を短くしても、GA4本体の集計が終わっていなければ数字は動きません。この「二重の遅延」を理解しておくことが、社内説明で無用な混乱を避けるコツです。
Looker Studioは無料で、ノーコードで完結するため、まずはここから始めるのが最も現実的です。ただし「ダッシュボードを見に行く」運用である点は変わらず、Slackやメールへの自動プッシュ配信はできません。そこまで踏み込むには③が必要です。
方法③:Python + GA4 Data APIで完全自動化する
「毎週月曜の朝にSlackへ自動でレポートが届く」ところまで自動化したい場合、Googleの「GA4 Data API」をPythonから叩く実装が必要になります。難易度は上がりますが、一度組めば月次作業はゼロになります。
ステップ1:ライブラリのインストールと認証設定
公式のPythonクライアントライブラリを使います。GCP(Google Cloud)でサービスアカウントを作成し、そのサービスアカウントのメールアドレスをGA4プロパティの「アクセス管理」にビューアー権限で追加しておく必要があります。
pip install google-analytics-dataステップ2:基本のレポート取得コード
from google.oauth2 import service_account
from google.analytics.data_v1beta import BetaAnalyticsDataClient
from google.analytics.data_v1beta.types import (
RunReportRequest, DateRange, Dimension, Metric
)
creds = service_account.Credentials.from_service_account_file(
"service-account.json",
scopes=["https://www.googleapis.com/auth/analytics.readonly"],
)
client = BetaAnalyticsDataClient(credentials=creds)
request = RunReportRequest(
property="properties/YOUR_PROPERTY_ID",
date_ranges=[DateRange(start_date="7daysAgo", end_date="today")],
dimensions=[Dimension(name="sessionDefaultChannelGroup")],
metrics=[Metric(name="sessions"), Metric(name="conversions")],
)
response = client.run_report(request)
for row in response.rows:
channel = row.dimension_values[0].value
sessions = row.metric_values[0].value
conversions = row.metric_values[1].value
print(f"{channel}: セッション{sessions} / CV{conversions}")ステップ3:前週比を計算して差分を出す
単純に数値を並べるだけでは「レポート」として機能しません。前週・前月との比較を必ず入れます。同じリクエストを期間違いで2回投げ、差分を計算するのが最も確実です。
def get_sessions(client, property_id, start, end):
req = RunReportRequest(
property=f"properties/{property_id}",
date_ranges=[DateRange(start_date=start, end_date=end)],
metrics=[Metric(name="sessions")],
)
res = client.run_report(req)
return int(res.rows[0].metric_values[0].value) if res.rows else 0
this_week = get_sessions(client, PROPERTY_ID, "7daysAgo", "today")
last_week = get_sessions(client, PROPERTY_ID, "14daysAgo", "8daysAgo")
diff_rate = (this_week - last_week) / last_week * 100 if last_week else 0
print(f"今週 {this_week}セッション(前週比 {diff_rate:+.1f}%)")ステップ4:Slackへ自動配信する
取得した数値をSlackのIncoming Webhook経由でチャンネルへ投稿します。cronやGitHub Actionsで毎週月曜の朝に実行するようスケジュールすれば、以降は誰も手を動かさずにレポートが届きます。
import requests
message = (
f"今週のセッション数: {this_week}(前週比 {diff_rate:+.1f}%)\n"
f"コンバージョン: {conversions}件"
)
requests.post(
"https://hooks.slack.com/services/XXX/YYY/ZZZ",
json={"text": message},
)私たち自身も、GA4・検索順位のデータを毎朝Pythonで取得し、社内Slackへ自動配信する仕組みを複数運用しています。人が見るのは配信されたレポートを開いた瞬間だけで、集計作業そのものは発生しません。この「作業をゼロにする」感覚を一度体験すると、手作業には戻れなくなります。
無料枠のクォータを把握しておく
GA4 Data APIには無料枠のクォータがあります。標準プロパティでは1日あたり20万トークン、1時間あたり4万トークンが上限です。同時リクエストはプロパティあたり10件までという制限もあります。週次・日次レポートを1〜2本自動配信する程度の用途であれば、この上限に達することはまずありませんが、複数プロパティを一括で回すような大規模運用を組む場合は、リクエストの粒度(ディメンションを絞る、期間をまとめて取得する)を意識してください。
Pythonが書けない担当者はどうするか
研修の現場でよく出るのが「マーケ担当にPythonは書けない」という相談です。この場合、Claude CodeのようなAIコーディングツールに、上記のコード例と「自社のGA4プロパティID・見たい指標・配信先」を渡して雛形を組んでもらう方法が現実的です。ゼロから設計を覚える必要はなく、「このコードのdimensionsをコンバージョン経路別に変えて」「エラー時にリトライする処理を足して」といった自然言語での指示だけで、実装をその場で調整できます。社内にエンジニアがいない中小企業ほど、この進め方が効いています。
自動配信したレポートをAIで要約する
数値を配信するところまで自動化できたら、次のステップとして「数字の意味」をAIにコメントさせる方法があります。単純な数値の羅列より、一言コメントが添えられているほうが、受け取った側の読了率は上がります。そのまま使えるプロンプトを置いておきます。
以下はGA4から取得した週次レポートの数値です。
マーケティング責任者向けに、3行以内の要約コメントを作成してください。
条件:
- 誇張表現(「絶好調」「大幅改善」等)は使わない
- 数値が悪化している指標があれば、隠さず言及する
- 「なぜそうなったか」の推測は書かず、事実の要約のみに留める
- 改善アクションの提案は求められた場合のみ書く
[ここにレポートの数値を貼る]研修先で必ず伝えているのが、このAI要約には3つの落とし穴があることです。
【要注意】AIレポート要約でよくある失敗
- ❌ AIに数値の解釈を丸投げする → 生成AIは学習データの傾向に引っ張られ、実際のデータにない要因を「推測」として書いてしまうことがある(いわゆる数値の幻覚)。⭕ 事実の要約とアクション提案のプロンプトを分け、事実要約は数値そのものだけを渡す
- ❌ 期間や単位を明示せずに数値だけ渡す → 「先週」なのか「今月」なのか、AIが取り違えて誤った比較コメントを生成する。⭕ プロンプトに対象期間・比較対象期間を必ず明記する
- ❌ 個人が特定できるデータをそのまま貼り付ける → ユーザーIDやメールアドレスを含む生データをAIに渡すのは情報漏えいリスクがある。⭕ 集計後の数値のみを渡し、個人単位のローデータは渡さない
- ❌ 自動化した仕組みをブラックボックスのまま放置する → 担当者が異動すると誰もメンテナンスできなくなる。⭕ コードとプロンプトを社内ドキュメントに残し、最低限の仕組みは複数人が把握しておく
よくある質問
Q. Looker StudioとPython自動化、どちらから始めるべきですか?
コードを書ける担当者がいない、あるいは「まず見た目を自動更新したい」だけならLooker Studioから始めるのが現実的です。関係者への配信(Slack・メール)まで自動化したい、複数の指標を組み合わせた独自ロジックが必要、という段階になって初めてPython実装を検討してください。いきなり③から着手すると、実装コストに見合わないケースが多いです。
Q. GA4の標準レポートと探索レポート、どちらを自動化の起点にすべきですか?
自動化の起点にするなら探索レポートです。標準レポートは項目のカスタマイズ範囲が狭く、Looker StudioやAPIで再現したい独自の集計軸(特定のチャネルだけ抽出する、コンバージョンを複数掛け合わせるなど)は、まず探索レポートで組んでから、同じロジックをAPIやLooker Studioの計算フィールドに移植するのが手戻りの少ない進め方です。
Q. Looker Studioのデータが古いと言われました。原因は?
ほぼ間違いなくデータソースの「データの更新頻度」設定です。デフォルトのキャッシュ間隔(1〜12時間)に加えて、GA4本体側の集計ラグ(最大48時間程度)が重なっている可能性があります。リアルタイム性が必要な指標は、GA4のリアルタイムレポートを別途確認するよう案内するのが実務的な対処です。
Q. 無料枠のクォータで足りますか?有料化は必要ですか?
週次・日次で1〜2本のレポートを自動配信する程度の一般的な用途であれば、無料枠(標準プロパティで1日20万トークン)で十分足ります。大量のプロパティを横断して毎時レポートを回すような大規模運用でない限り、Analytics 360への切り替えを検討する必要はまずありません。
Q. 自動化にかかる工数は、手作業とどちらが得ですか?
Looker Studioのダッシュボード構築なら数時間、Python実装なら要件次第で数日かかります。一方で手作業の月次レポートは、多くの現場で毎月3〜5時間かかっているのが実感です。単純計算でも、実装コストは2〜3ヶ月で回収できる規模になります。加えて手作業には「担当者しか作れない」属人化リスクが常につきまといますが、コード化しておけば作業手順そのものが資産として残ります。初期実装だけ外部に頼み、運用は内製化するという分担も現実的な選択肢です。
まとめ:自動化は「見る」と「配る」を分けて設計する
GA4レポート自動化で最初につまずくのは、多くの場合「1つのツールで全部やろうとする」ことです。GA4標準レポートは「見る」ためのもの、Looker Studioは「見た目を自動更新して共有する」もの、Python + GA4 Data APIは「数値そのものを配信・活用する」もの。この役割分担を先に決めてから着手すると、遠回りをせずに済みます。
まずはLooker Studioで無料のダッシュボードを1つ作り、データ更新頻度の仕様を理解するところから始めてみてください。それで物足りなくなったら、Python実装に進む。この順序が、実装コストと得られる効果のバランスが最もよい進め方です。
なお、AI経由(ChatGPT・Geminiなど)の流入だけを個別に計測したい場合は、通常のチャネル分析とは別の設定が必要です。詳しくはChatGPT・GeminiからのAI流入をGA4で計測|30分実装ガイドで解説しています。また、AIによるコメント生成のプロンプトをさらに深掘りしたい方は月次レポートをAI半自動化する方法|4時間削減プロンプト5選、マーケティング担当がClaude Codeで自動化を組む進め方はマーケティング担当がClaude Code活用を始める手順もあわせてご覧ください。
参考・出典
- Google Developers「Analytics Data API v1 クイックスタート(クライアントライブラリ)」
https://developers.google.com/analytics/devguides/reporting/data/v1/quickstart-client-libraries(参照日:2026年8月5日) - Google Developers「Analytics Data API – Quotas」
https://developers.google.com/analytics/devguides/reporting/data/v1/quotas(参照日:2026年8月5日) - Looker Studioヘルプセンター「データの更新頻度(データフレッシュネス)」
https://support.google.com/looker-studio/answer/7020039(参照日:2026年8月5日)
Claude Code / Codex を“自社の業務”で使いこなすなら
週1回60分のマンツーマンで、御社の実務をその場で自動化。設計から定着まで、業務に合わせて伴走します。
- 30分・オンライン
- 売り込みでなく業務診断
- 完全マンツーマン
お問い合わせフォームから24時間以内にUravation担当者がご返信します。





