AIシステムが本番稼働しても、「で、効果はどうなの?」という経営層の問いに答えられないチームは多い。技術指標(精度、レイテンシ)は分かっていても、ビジネス指標(コスト削減額、工数削減時間)に翻訳できていないケースだ。Looker Studio(旧Google Data Studio)を使ったAI分析ダッシュボードの設計方法を整理する。
なぜLooker Studioか
AI分析ダッシュボードのツール選定でよく挙がる選択肢はTableau、Power BI、Looker Studio、Metabaseなどだ。Looker Studioを選ぶ理由は以下の通りだ。
- 無料: 基本機能は無料で使える
- BigQueryとの親和性: GCPのデータ基盤と直接接続できる
- 共有の簡便さ: URLで共有でき、閲覧者にアカウントが不要
- リアルタイム更新: BigQueryのクエリ結果を直接表示できる
大規模な商用BIツールが不要な段階では、Looker Studioが最もコスパが良い選択だ。
ダッシュボードの設計原則
「誰が見るか」を最初に決める
同じダッシュボードに技術指標とビジネス指標を混在させると、誰にとっても読みにくいものになる。対象読者を明確にし、ダッシュボードを分ける。
| 対象 | 主要指標 | 更新頻度 |
|---|---|---|
| 経営層 | ROI、コスト削減額、工数削減時間 | 月次 |
| 事業責任者 | 処理件数、エラー率、ユーザー満足度 | 週次 |
| 技術チーム | 精度、レイテンシ、インフラコスト | 日次 |
指標は「最大5個」に絞る
ダッシュボードに指標を詰め込みすぎると、何が重要かが伝わらない。経営層向けのダッシュボードは、スコアカード形式で5個以内の指標に絞ることを推奨する。
BigQueryからのデータ設計
Looker Studioで表示するデータは、BigQueryのビューとして定義しておくと管理しやすい。
AI成果サマリービュー
-- BigQuery View: vw_ai_performance_summary
CREATE OR REPLACE VIEW `project.dashboard.vw_ai_performance_summary` AS
WITH monthly_stats AS (
SELECT
DATE_TRUNC(processed_at, MONTH) AS month,
COUNT(*) AS total_processed,
COUNTIF(status = 'success') AS success_count,
COUNTIF(status = 'error') AS error_count,
AVG(processing_time_ms) AS avg_latency_ms,
SUM(labor_minutes_saved) AS total_minutes_saved
FROM `project.production.ai_processing_log`
WHERE processed_at >= DATE_SUB(CURRENT_DATE(), INTERVAL 12 MONTH)
GROUP BY 1
)
SELECT
month,
total_processed,
success_count,
error_count,
ROUND(success_count / total_processed * 100, 1) AS success_rate_pct,
ROUND(avg_latency_ms, 0) AS avg_latency_ms,
total_minutes_saved,
ROUND(total_minutes_saved / 60, 1) AS total_hours_saved,
-- 人件費単価3,000円/時として換算
ROUND(total_minutes_saved / 60 * 3000, 0) AS cost_saved_jpy
FROM monthly_stats
ORDER BY month DESC;
KPI達成状況ビュー
-- 月次KPI達成状況
CREATE OR REPLACE VIEW `project.dashboard.vw_kpi_status` AS
SELECT
kpi_name,
target_value,
current_value,
ROUND(current_value / target_value * 100, 1) AS achievement_rate,
CASE
WHEN current_value >= target_value THEN '達成'
WHEN current_value >= target_value * 0.8 THEN '進捗中'
ELSE '要対応'
END AS status
FROM (
SELECT '月次処理件数' AS kpi_name, 10000 AS target_value,
(SELECT COUNT(*) FROM `project.production.ai_processing_log`
WHERE DATE_TRUNC(processed_at, MONTH) = DATE_TRUNC(CURRENT_DATE(), MONTH))
AS current_value
UNION ALL
SELECT '成功率(%)' AS kpi_name, 95.0 AS target_value,
(SELECT ROUND(COUNTIF(status='success') / COUNT(*) * 100, 1)
FROM `project.production.ai_processing_log`
WHERE DATE_TRUNC(processed_at, MONTH) = DATE_TRUNC(CURRENT_DATE(), MONTH))
AS current_value
UNION ALL
SELECT '月次工数削減(時間)' AS kpi_name, 200 AS target_value,
(SELECT ROUND(SUM(labor_minutes_saved) / 60, 1)
FROM `project.production.ai_processing_log`
WHERE DATE_TRUNC(processed_at, MONTH) = DATE_TRUNC(CURRENT_DATE(), MONTH))
AS current_value
);
Looker Studioのレイアウト設計
経営層向けレイアウト
┌─────────────────────────────────────────────────────┐
│ AIシステム月次レポート [期間フィルター] │
├──────────┬──────────┬──────────┬──────────┬─────────┤
│ 月次削減額 │ 工数削減 │ 処理件数 │ 成功率 │ 前月比 │
│ ¥480,000 │ 160時間 │ 12,400件 │ 97.2% │ ↑12% │
├──────────┴──────────┴──────────┴──────────┴─────────┤
│ 月次ROI推移(折れ線グラフ) │
│ │
├─────────────────────┬───────────────────────────────┤
│ 処理件数の推移(棒グラフ) │ カテゴリ別内訳(円グラフ) │
│ │ │
└─────────────────────┴───────────────────────────────┘
技術チーム向けレイアウト
精度・レイテンシ・エラーレートをリアルタイムで可視化するダッシュボードは、日次更新のスコアカードと時系列グラフを組み合わせる。異常値をアラートとして目立たせるために、Looker Studioの「条件付き書式」でしきい値を下回った場合に赤色表示する設定が有効だ。
定期配信の設定
Looker Studioには「スケジュール配信」機能がある。月次レポートを毎月1日の朝9時に経営層にメール送信する設定ができる。PDFエクスポートにも対応しているため、社内会議の資料としてそのまま使える。
データ更新の自動化
BigQueryのデータが更新されれば、Looker Studioの表示も自動的に更新される。Cloud Schedulerでバッチジョブを定期実行し、BigQueryを更新するフローを組み込めば、手動作業なしで常に最新の状態を保てる。
Cloud Scheduler(毎日0時)
→ Cloud Functions
→ データ取得・加工
→ BigQueryへ書き込み
→ Looker Studio自動更新
AIシステムの価値を経営層に伝えるためのダッシュボードは、技術的な正確さより「意思決定に必要な情報が一目でわかるか」が重要だ。「削減できた時間と金額」を毎月数字で示し続けることが、AI投資の継続的な承認を得る最も確実な方法だ。