Contents
Looker Studio の概要と主要データソース
Looker Studio は Google が提供する無料の BI ツールで、ドラッグ&ドロップだけでインタラクティブなレポートやダッシュボードが作れます。ここでは、標準コネクタから利用できる代表的なデータソースと、それぞれの活用シーンを簡潔に紹介します。自社で扱うデータの種類に合わせて、最適なコネクタを選択してください。
| データソース | 主な利用シーン | 取得イメージ |
|---|---|---|
| Google アナリティクス (GA4) | ウェブ・アプリのトラフィック分析、CVR・離脱率測定 | ページビュー、ユーザー属性、イベント集計 |
| Google 広告 | キャンペーンパフォーマンス管理、ROAS 計算 | インプレッション・クリック数・費用など |
| BigQuery | 大規模ログ・イベントストリームの高速集計 | ペタバイト級データのクエリ実行 |
| MySQL / PostgreSQL | 社内 ERP/CRM のトランザクションデータ取得 | リアルタイムに近いレポート作成 |
| Google スプレッドシート / CSV | 営業リスト、予算表などの軽量データ取り込み | 自動更新で常に最新情報を反映 |
これらはすべて Looker Studio の「標準コネクタ」メニューから追加費用なしで利用できます。次章では、各データソースの接続手順を UI 画像がなくても分かるよう具体的に解説します。
データソース別 接続手順(ステップバイステップ)
本セクションでは、実務ですぐに試せるチェックリスト形式で各コネクタの設定フローを示します。**認証方式は「認証方式と権限設定") の項目を参照しながら進めてください。
Google アナリティクス (GA4) の接続手順
Google アナリティクスのデータを Looker Studio に取り込む際の流れです。UI の位置情報も併記しています。
- レポート編集画面左上の「+」→「データソースを追加」をクリック
- コネクタ一覧から [Google アナリティクス] を選択
- 表示された OAuth 認証ダイアログで、GA4 の閲覧権限(
https://www.googleapis.com/auth/analytics.readonly)を許可 - 接続したい プロパティ と データストリーム をプルダウンから選択
- 「次へ」→「フィールドの自動検出」画面で、不要な指標は右側のチェックボックスで非表示に設定
- 「追加」をクリックし、レポート左側の [データ] タブに新規データソースが表示されたら完了
ポイント:GA4 の日付範囲は「データ」タブ内の「期間」メニューで変更できます。
Google 広告 の接続手順
広告パフォーマンスを可視化するための設定です。
- 「データソースを追加」画面で [Google 広告] を選択
- OAuth 認証画面で、Google Ads アカウントへの閲覧権限(
https://www.googleapis.com/auth/adwords)を承認 - MCC(マネージャーアカウント)または個別アカウントを一覧から選択
- 取得したい レポートレベル(キャンペーン、広告グループ、キーワード)にチェックを入れる
- 「フィールドのマッピング」画面で通貨とタイムゾーンを確認し、「保存」をクリック
ポイント:自動更新は「データソース設定 > 更新頻度」で 1 時間ごとに設定可能です。
BigQuery の接続手順
大規模データを安全に取り込む際の流れです。
- GCP コンソールで サービスアカウント を作成し、ロール
BigQuery Data Viewer(※必要に応じてJobUserも付与)を割り当て - 作成したサービスアカウントの JSON キー をダウンロード
- Looker Studio の「データソースを追加」から [BigQuery] を選択
- 「認証方式」→「サービス アカウント」を選び、先ほどの JSON ファイルをアップロード
- プロジェクト → データセット → テーブルの順に選択し、「プレビュー」でスキーマが正しく表示されることを確認
- 「接続」をクリックしてレポートへ追加
UI 補足:認証画面は「データソース設定」左上の [認証] タブにあります。
MySQL / PostgreSQL の接続手順
オンプレミスやクラウド上のリレーショナル DB を Looker Studio に取り込む方法です。
- 「データソースを追加」→ [MySQL](または [PostgreSQL]) を選択
- 接続情報入力画面で、ホスト名、ポート番号、データベース名、ユーザー名、パスワード を記入
- UI 位置:左側メニューの「接続設定」セクションに各項目が並んでいます。
- SSL 必要時は「高度なオプション」から証明書ファイル(CA/Client)をアップロード
- 「テーブル プレビュー」ボタンをクリックし、取得したいテーブルを選択 → フィールドタイプが自動判別されます
- 「接続」を押すとレポート左側にデータソースが表示されます
注意:行数制限は 10,000 行(※2026 年 3 月時点の公式ドキュメント)です。必要に応じて
SELECTにLIMITを付与してください。
スプレッドシート・CSV の接続手順
軽量データを手軽に取り込む際の流れです。
- 取得対象の Google スプレッドシート または CSV ファイル を Google ドライブに保存
- 「データソースを追加」→ [Google スプレッドシート](CSV は「ファイルアップロード」から)を選択
- 「スプレッドシートの選択」画面で対象ファイルとシートタブ、取得範囲(例:A1:Z1000)を指定し、ヘッダー行があるかどうかをチェック
- 自動検出されたデータ型を確認し、日付列は [DATE] 型に手動で変更(UI は「フィールド設定」タブ内)
- 「接続」をクリック → データソース一覧に表示されます
自動更新の設定:レポート編集画面右上の [データ] > [データ ソースを管理] で対象スプレッドシートを選び、「キャッシュ」タブから「毎日 1 回」や「12 時間ごと」など更新頻度を指定できます。
認証方式と権限設定のベストプラクティス
データソースごとの認証方式は、接続手順(上記)でも触れましたが、セキュリティと運用効率を高めるためのポイントをまとめます。認証方式の選択は データソース別 接続手順 の各章 でも参照してください。
| 認証方式 | 主な利用シーン | 設定手順概要 | メリット | デメリット |
|---|---|---|---|---|
| OAuth(ユーザー認証) | 個人レポート、担当者が直接操作するケース | Looker Studio → データソース追加 → コネクタ選択 → 「OAuth」ボタンで Google アカウントにログイン | 2 段階認証自動対応、権限変更が即時反映 | ユーザーごとに再承認が必要 |
| サービスアカウント | サーバ間連携・自動取得(BigQuery・CloudSQL 等) | GCP コンソールで作成 → 必要ロール付与 → JSON キーを Looker Studio にアップロード | アプリ単位の最小権限管理が容易 | キー漏洩リスク、キー更新時は再設定 |
| API キー(限定的使用) | 公開データやサードパーティ API の簡易呼び出し | Cloud Console → API とサービス > 認証情報で作成 → IP 制限等を設定 | 実装がシンプル、ヘッダー不要 | 権限管理が粗く、利用量監視が必須 |
権限付与のベストプラクティス
- 最小権限の原則 – 必要なロールだけを付与し、
Viewer → Editorの昇格は避ける - プロジェクト単位で分離 – GCP IAM ポリシーでサービスアカウントごとにプロジェクトを切り、権限境界を明確化
- 定期的なレビュー – 半年に一度は IAM ロール一覧をエクスポートし、不要ユーザー・ロールを削除
リンク参照:認証方式の選択は各接続手順の「4. 認証」ステップで確認できます(例:
#google-analytics-%E3%81%AE%E6%8E%A5%E7%B6%9A%E6%96%B9%E6%B3%95)。
データ取得上限・クエリ最適化・キャッシュ設定と更新頻度
Looker Studio には行数やクエリ回数のハードリミットがあります。ここでは、実務でよく遭遇する制約とその回避策を具体的に示します。
取得上限(2026 年 3 月時点)
| データソース | 上限内容 | 備考 |
|---|---|---|
| 標準コネクタ | 1 クエリあたり最大 10,000 行(※公式ドキュメント参照) | 必要に応じて SELECT … LIMIT を利用 |
| BigQuery | 無料枠は 日次 1,000,000 行まで取得可能 | 超過分は従量課金。パーティションやフィルタで削減推奨 |
| MySQL / PostgreSQL | 同上、サーバ側の max_allowed_packet 等に依存 |
大規模テーブルはビューで事前集計 |
クエリ最適化の実践手順
- 必要カラムだけを SELECT – 不要な列は除外しデータ転送量を削減
- 日付やキーで絞り込み –
WHERE event_date BETWEEN '2024-01-01' AND '2024-01-31'のように期間指定 - BigQuery のパーティションプルーニング – テーブルが
_PARTITIONTIMEで分割されている場合は必ずフィルタに含める - インデックス確認(MySQL/PostgreSQL) –
EXPLAINで実行計画をチェックし、必要ならインデックス追加
キャッシュ設定の具体的手順
- レポート編集画面左側メニューの [データ] をクリック
- 対象データソース名を選択 → 右上に表示される [キャッシュ] タブを開く
- 「キャッシュ有効期限」のプルダウンから 最大 12 時間(推奨)を選択し、「保存」 をクリック
効果:同一クエリの再実行回数が減り、API 呼び出し量とレイテンシが低下します。
更新頻度の設定方法
| データ種別 | 推奨更新間隔 | 設定手順 |
|---|---|---|
| KPI(売上・在庫) | 日次 もしくは 週次 | データソース設定 → 「キャッシュ」タブ → 「自動更新」から「毎日」または「毎週」を選択 |
| 広告/SNS データ | 1 時間ごと または 15 分ごと | 同上で「1 時間」や「15 分」を選択(上限は 12 時間) |
| スプレッドシート・CSV | 毎日 6:00(業務開始前) | データソース → 「自動更新」→ カスタム時刻を指定 |
ポイント:更新頻度が高いほどクエリコストが増えるため、ビジネス要件とコストのバランスを取ることが重要です。
Community Connector の作成とトラブルシューティング
標準コネクタで対応できない外部システムは Community Connector(カスタムコネクタ)で拡張できます。以下では、作成手順から代表的なエラーへの対処法までを具体例付きで解説します。
カスタムコネクタ作成の流れ
- Google Apps Script プロジェクト作成
- Google ドライブ → 「新規」→「その他」→「Apps Script」
- Community Connector ライブラリを追加
javascript
const cc = DataStudioApp.createCommunityConnector(); - 必須関数の実装(
getConfig(),getSchema(),getData(request)) getConfig():ユーザー入力項目(API キー、エンドポイント)を定義getSchema():返すフィールド名とデータ型を宣言getData(request):外部 API へUrlFetchApp.fetchでリクエストし、取得した JSON を{schema:…, rows:[{values:[…]}, …]}の形に整形して返却- テスト実行
- スクリプトエディタ上部の「デバッグ」ボタンで
requestオブジェクトをシミュレートし、レスポンスが正しいか確認 - ウェブアプリとして公開
- 「デプロイ」→「新しいデプロイ」→「ウェブ アプリ」
- 実行ユーザーは「自分」、アクセス権は「全員(匿名可)」に設定し、URL を取得
- Looker Studio にコネクタ追加
- データソース追加画面で「Community Connector」を選択 → 取得した URL を貼り付け → 認証情報を入力して接続完了
活用例:自社 CRM の REST API、Twitter の非公式エンドポイント、社内在庫管理システムなど。
代表的な接続エラーと対処法
| エラーメッセージ | 主な原因 | 推奨対策 |
|---|---|---|
| OAuth 認証に失敗しました | ・必要スコープが未承認 ・2 段階認証でトークンが無効化 |
1. 接続画面で「再認可」→正しいスコープを選択 2. 管理コンソールで OAuth クライアント ID が有効か確認 |
| 権限が不足しています | ・サービスアカウントに対象データセットの閲覧権限なし ・スプレッドシートの共有設定が限定的 |
1. GCP IAM に bigquery.dataViewer(または DB の SELECT 権限)を付与 2. スプレッドシートの場合、サービスアカウントメールを「閲覧者」へ追加 |
| データ取得に失敗しました | ・API クオータ超過 ・クエリが上限行数(10,000 行)を超えている |
1. Cloud Console の API ダッシュボードで使用量を確認し、必要なら増枠申請 2. LIMIT や日付フィルタで取得件数を削減 |
| レスポンスが無効です | ・JSON 構造が Data Studio 期待形式と不一致 ・文字コードが UTF‑8 以外 |
1. getData() の戻り値を {schema:…, rows:[{values:[…]}, …]} に統一 2. Apps Script 側で Utilities.newBlob(...).setCharset('UTF-8') を使用 |
| 接続がタイムアウトしました | ・外部 API の応答遅延 ・社内ファイアウォールでブロック |
1. UrlFetchApp.fetch(url, {muteHttpExceptions:true, timeout:30}) のようにタイムアウトを短縮 2. ネットワーク担当者にエンドポイントの許可を依頼 |
デバッグ手順(初心者向け)
- エラーメッセージをコピーし、スクリプトエディタの「ログ」タブで
Logger.log(e)を確認 getData()の最初にtry { … } catch (e) { Logger.log(JSON.stringify(e)); throw e; }と記述して詳細情報を取得- 必要なら [Stackdriver Logging] へ出力し、実行履歴とリクエスト/レスポンスヘッダーを比較
まとめ
- データソース選定はビジネス要件に合わせて標準コネクタか Community Connector を判断
- 接続手順は UI の具体的な場所(「データ」→「データ ソース追加」等)を意識し、認証方式と紐付けることでミスを防止
- 権限管理は最小権限・プロジェクト分離・定期レビューでリスク低減
- 取得上限・キャッシュは行数制限や無料枠を踏まえてクエリを絞り、キャッシュ有効期限と更新頻度を適切に設定するとコストとレイテンシが大幅改善
- Community Connectorは Apps Script で実装でき、代表的なエラーは認証・権限・データ形式の三点に集約されるため、まずはログ出力で原因を特定
以上の手順とベストプラクティスを参考にすれば、Looker Studio におけるデータ連携からレポート配信までを自走できる基盤が構築できます。ぜひ本稿のフローチャートや設定画面の位置情報を実務で活用し、データドリブンな意思決定を加速させてください。