Power BI Sales ダッシュボード: KPI、メトリック、およびテンプレート
Salesforce の販売状況レポートによると、適切な KPI をリアルタイムで追跡している営業チームは 28% 多くの取引を成立させています。しかし、ほとんどの営業ダッシュボードは 2 つの失敗モードに分類されます。1 つは、気分は良いが意思決定にはつながらない虚栄心の指標を追跡するか、40 以上の数値で営業担当者を圧倒して分析を麻痺させるかのどちらかです。適切に設計された Power BI 販売ダッシュボードには、適切な 15 ~ 20 のメトリックが適切な詳細レベルで表示され、異常を調査するためのドリルスルーが備わっています。
このガイドでは、データ モデルから発行されたレポートに至るまで、完全な Power BI 販売ダッシュボード アーキテクチャを構築します。これには、DAX 式、設計の背後にあるレイアウト ロジック、管理者がツールを切り替えることなく調査できるドリルスルー パターンを備えたすべての KPI が含まれています。
重要なポイント
- すぐに実装できる完全な DAX 式を備えた 15 の重要な販売 KPI
- エグゼクティブ サマリー、パイプライン、担当者のパフォーマンス、トレンド分析をカバーする 4 ページのダッシュボード アーキテクチャ
- 集計 KPI から個々の取引の詳細に移動するためのドリルスルー設計パターン
- 動的ターゲット: 別のテーブルからクォータ データをロードし、DAX で実際のデータと比較します。
- リスクのある取引、パフォーマンスの低い営業担当、パイプラインのギャップにフラグを立てるための条件付き書式設定ルール
- ヘッダーが乱雑にならない、クリーンなユーザー エクスペリエンスを実現するブックマークベースのナビゲーション
- 上記のいずれかを構築する前に必要なスター スキーマ データ モデル
- タイム インテリジェンス パターン: ローリング 30 日、MTD、QTD、YTD、および前期間の比較
データモデルの設計
単一の DAX メジャーを書き込む前に、データ モデルが正しい必要があります。通常、販売ダッシュボードには次のテーブルが必要です。
ファクトテーブル
Fact_Opportunities (取引ごとに 1 行):
OpportunityID、AccountID、OwnerID、StageID、CloseDate、Amount、Probability、Created Date、Type
Fact_Activities (アクティビティごとに 1 行):
ActivityID、OpportunityID、OwnerID、ActivityDate、ActivityType、Duration
Fact_Quotas (期間ごとに担当者ごとに 1 行):
OwnerID、PeriodID、QuotaAmount
寸法表
| 寸法 | 主要なフィールド |
|---|---|
| コード0 | アカウントID、会社、業界、地域、セグメント |
Dim_Owner (営業担当者) | 所有者 ID、名前、チーム、マネージャー、地域 |
| コード0 | StageID、StageName、StageOrder、IsClosedWon、IsClosedLost |
| コード0 | 日付、年、四半期、月、WeekNum、IsWorkday |
| コード0 | 製品ID、カテゴリ、SKU、定価 |
人間関係
Fact_Opportunities → Dim_Account (AccountID)
Fact_Opportunities → Dim_Owner (OwnerID)
Fact_Opportunities → Dim_Stage (StageID)
Fact_Opportunities → Dim_Date (CloseDate) [active]
Fact_Opportunities → Dim_Date (CreatedDate) [inactive, use USERELATIONSHIP]
Fact_Activities → Fact_Opportunities (OpportunityID)
Fact_Activities → Dim_Owner (OwnerID)
Fact_Quotas → Dim_Owner (OwnerID)
Fact_Quotas → Dim_Date (PeriodID)
DAX 式を使用した 15 の重要な販売 KPI
1. 総収益 (獲得した取引)
Total Revenue =
CALCULATE(
SUM(Fact_Opportunities[Amount]),
Dim_Stage[IsClosedWon] = TRUE
)
2. 収益とノルマの関係
Quota Attainment % =
DIVIDE(
[Total Revenue],
SUM(Fact_Quotas[QuotaAmount]),
0
)
3. パイプラインの価値 (オープンディール)
Pipeline Value =
CALCULATE(
SUM(Fact_Opportunities[Amount]),
Dim_Stage[IsClosedWon] = FALSE,
Dim_Stage[IsClosedLost] = FALSE
)
4. 重み付けされたパイプライン (確率調整済み)
Weighted Pipeline =
CALCULATE(
SUMX(
Fact_Opportunities,
Fact_Opportunities[Amount] * Fact_Opportunities[Probability] / 100
),
Dim_Stage[IsClosedWon] = FALSE,
Dim_Stage[IsClosedLost] = FALSE
)
5. 勝率
Win Rate =
DIVIDE(
CALCULATE(COUNTROWS(Fact_Opportunities), Dim_Stage[IsClosedWon] = TRUE),
CALCULATE(
COUNTROWS(Fact_Opportunities),
Dim_Stage[IsClosedWon] = TRUE || Dim_Stage[IsClosedLost] = TRUE
),
0
)
6. 平均取引規模
Avg Deal Size =
CALCULATE(
AVERAGEX(
FILTER(Fact_Opportunities, Dim_Stage[IsClosedWon] = TRUE),
Fact_Opportunities[Amount]
)
)
7. 販売サイクルの長さ (日)
Avg Sales Cycle Days =
AVERAGEX(
FILTER(Fact_Opportunities, Dim_Stage[IsClosedWon] = TRUE),
DATEDIFF(
Fact_Opportunities[CreatedDate],
Fact_Opportunities[CloseDate],
DAY
)
)
8. 前年比の収益増加
Revenue YoY Growth =
VAR CurrentPeriod = [Total Revenue]
VAR PriorPeriod = CALCULATE([Total Revenue], SAMEPERIODLASTYEAR(Dim_Date[Date]))
RETURN
DIVIDE(CurrentPeriod - PriorPeriod, PriorPeriod, 0)
9. 月初から現在までの収益
MTD Revenue = CALCULATE([Total Revenue], DATESMTD(Dim_Date[Date]))
10. 四半期累計の収益
QTD Revenue = CALCULATE([Total Revenue], DATESQTD(Dim_Date[Date]))
11. ローリング 30 日間の収益
Rolling 30D Revenue =
CALCULATE(
[Total Revenue],
DATESINPERIOD(Dim_Date[Date], LASTDATE(Dim_Date[Date]), -30, DAY)
)
12. パイプラインカバー率
Pipeline Coverage =
DIVIDE(
[Pipeline Value],
CALCULATE(
SUM(Fact_Quotas[QuotaAmount]),
DATESINPERIOD(Dim_Date[Date], LASTDATE(Dim_Date[Date]), 90, DAY)
),
0
)
13. 取引速度 (1 日あたりの収益)
Deal Velocity =
DIVIDE([Total Revenue], COUNTROWS(VALUES(Dim_Date[Date])), 0)
14. 成立した取引ごとの平均アクティビティ
Avg Activities per Won Deal =
AVERAGEX(
FILTER(Fact_Opportunities, Dim_Stage[IsClosedWon] = TRUE),
CALCULATE(COUNTROWS(Fact_Activities))
)
15. 予測精度
Forecast Accuracy % =
1 - ABS(
DIVIDE(
[Total Revenue] - [Weighted Pipeline At Period Start],
[Weighted Pipeline At Period Start],
0
)
)
4 ページのダッシュボード アーキテクチャ
ページ 1: 概要
レイアウト (上から下):
行 1 — KPI カード (横に 5 枚のカード):
- 収益 MTD 対クォータ (クォータ達成率とトレンド スパークライン付き)
- 収益 YTD (前年比 % 変化インジケーター付き)
- パイプライン価値 (パイプラインカバー率付き)
- 勝率(前月比較あり)
- 平均取引サイズ (トレンド指標付き)
行 2 — プライマリ ビジュアル (2 つ並べて表示):
- 左: 月次収益とクォータ (集合棒グラフ、過去 12 か月)
- 右: 地域別の収益 (塗りつぶされた地図または棒グラフ)
行 3 — 二次ビジュアル (3 つ並べて表示):
- ステージ別のパイプライン (ファネル チャート)
- 金額別上位 10 件の取引 (確率指標を含む表)
- 製品カテゴリ別の収益 (ツリーマップ)
スライサー (右パネルまたは上部): 日付範囲、地域、営業担当者 (複数選択)
ページ 2: パイプライン分析
レイアウト:
ファネル チャート (段階ごとの取引数と金額):
- 見込み客 → 適格性確認 → 提案 → 交渉 → 成立
リスク ヒートマップ (条件付き書式設定テーブル):
- 行: 今後 30 日以内に成立する取引
- 列: 取引名、アカウント、金額、ステージ、ステージの日数、所有者
- 赤で強調表示: ステージ日数 > 30 (失速の危険性あり)
- アンバー: ステージ 15 ~ 30 の日数
- 緑色: ステージ日数 < 15
完了月ごとのパイプライン (積み上げバー):
- ステージ別のバー;パイプラインがいつどのくらい閉じられるかを示します
ページ 3: 営業担当者のパフォーマンス
マトリックス ビジュアル (担当者リーダーボード):
- 行: 営業担当者名
- 列: 収益、ノルマ、達成率、パイプライン、勝率、平均取引サイズ、成立した取引
- 条件付き書式設定: 達成率で赤/黄色/緑
- 達成率の降順で並べ替えます
散布図 — 取引規模と担当者あたりの勝率 (強みを特定):
- X 軸: 平均取引サイズ
- Y軸: 勝率
- サイズ: 総収益
- 色: ノルマ達成
アクティビティ分析 — 担当者ごとの通話/メール/会議の棒グラフ
ページ 4: 傾向と予測
折れ線グラフ — ローリング 12 か月の収益:
- 実際の収益(実線)
- 予測線 (加重パイプラインからの破線)
- ターゲットライン (フラット、クォータから)
ウォーターフォール チャート — 前期からの収益ブリッジ:
- 開始時: 先月の収益
- 新しい取引の獲得
- 拡張/アップセル
- 損失
- 終了: 当月の収益
コホート分析表 — 新規顧客と拡大収益
ドリルスルー設計
ドリルスルーを使用すると、マネージャーは概要ページで担当者、地域、または取引ステージをクリックし、その選択内容の詳細ページに移動できます。
ドリルスルーの構成
- レポートに 詳細ページ を作成します (例: 「取引の詳細」)
- ページのドリルスルー領域 (視覚化ペイン) で、ドリルスルー フィールドとして
Fact_Opportunities[OpportunityID]を追加します。 - 詳細ページを作成します: 取引名、アカウント、所有者、ステージ履歴、アクティビティ ログ、メモ
ユーザーは概要ページの任意のデータ ポイントを右クリックし、[ドリルスルー → 取引詳細] を選択すると、その特定の取引の完全な履歴が表示されます。
営業担当者のパフォーマンスのドリルスルー
ドリルスルーフィールドとして担当者名を含む「担当者の詳細」ページを作成します。含める:
- その担当者の段階ごとのパイプライン
- 今四半期に終了する取引(表)
- 過去 90 日間のアクティビティの傾向
- 勝率とチーム平均
リスクのある取引の条件付き書式設定
条件付き書式設定を適用して、注意が必要な取引にフラグを立てます。
// Days in Current Stage (for conditional formatting)
Days in Stage =
DATEDIFF(
CALCULATE(
MAX(Stage_History[EnteredDate]),
Stage_History[StageID] = MAX(Fact_Opportunities[StageID])
),
TODAY(),
DAY
)
// Deal Risk Color (background color measure)
Deal Risk Color =
SWITCH(TRUE(),
[Days in Stage] > 30, "#FF4444", -- Red: stalled
[Days in Stage] > 15, "#FFA500", -- Amber: warning
"#00B050" -- Green: on track
)
カラー メジャーをテーブルの条件付き書式ルールの背景色として適用します。
動的ターゲットとクォータの比較
(ハードコーディングではなく) 別のテーブルからクォータ データをロードすると、レポートを再公開せずにターゲットを更新できます。
クォータ テーブルの構造:
| 所有者ID | 年 | 月 | クォータ金額 |
|---|---|---|---|
| 101 | 2026年 | 1 | 50000 |
| 101 | 2026年 | 2 | 55000 |
クォータ差異の測定:
Revenue vs Quota =
[Total Revenue] -
CALCULATE(
SUM(Fact_Quotas[QuotaAmount]),
TREATAS(VALUES(Dim_Date[Year]), Fact_Quotas[Year]),
TREATAS(VALUES(Dim_Date[MonthNum]), Fact_Quotas[Month])
)
よくある質問
Power BI 販売ダッシュボードに最適なデータ ソースはどれですか?
CRM システム (Salesforce、Dynamics 365、HubSpot、Pipedrive) は、販売ダッシュボードの主要なデータ ソースです。 Power BI は、Dynamics 365 (Dataverse 経由) および Salesforce (Salesforce コネクタ経由) にネイティブに接続します。 HubSpot と Pipedrive の場合は、それぞれの Power BI コネクタを使用するか、API 経由で抽出します。 CRM データと ERP 注文データを組み合わせて、商談から請求書までの全体像を把握します。
販売ダッシュボードで複数の通貨を処理するにはどうすればよいですか?
各通貨ペアの日次レートを含む為替レート表を作成します。通貨セレクター スライサーをレポートに追加します。為替レート テーブルに対して LOOKUPVALUE を使用して、すべての金額を基本通貨に変換する正規化メジャーを作成します。過去の正確なレポートを作成するには、今日のスポット レートではなく、期間平均レート (月末または取引日のレート) を使用します。
マネージャーは自分のチームのデータのみを自動的に表示できますか?
はい — 階層ロールを使用して行レベルのセキュリティを構成します。 USERPRINCIPALNAME() を使用して Dim_Owner テーブル内の現在のユーザーを検索するロールを作成し、PATH 関数と PATHCONTAINS 関数を使用して自分の取引と直属/間接部下の取引のみを表示するようにフィルター処理します。 Power BI サービスのワークスペース設定で、このロールにマネージャーを割り当てます。
販売ダッシュボードはどのくらいの頻度で更新する必要がありますか?
アクティブな営業チームの場合、時間ごとの更新 (Power BI Premium または PPU) により、毎日の業務に十分な最新のデータが維持されます。エグゼクティブ サマリー ダッシュボードの場合、通常は 1 日あたり 4 ~ 8 回の更新 (Pro レベル) で十分です。 CRM がリアルタイムで更新され、真のリアルタイムの可視性が必要な場合は、標準のインポート データセットに加えて、特定の KPI (本日成立した取引、パイプラインの変更) のストリーミング データセットを構成します。
パイプライン ステージの内訳を表示するのに最適なグラフの種類は何ですか?
ファネル チャートはパイプライン ステージの内訳を最も直感的に把握できるもので、ステージ間の変換損失を視覚的に伝えます。ファネルと、各ステージのカウントと値、およびステージ内の平均時間を示すその下の表を組み合わせます。取引速度分析 (取引がステージを通過する速度) の場合は、ステージごとの平均日数を示す棒グラフを使用します。
次のステップ
適切な KPI を備えた強固なデータ モデルに基づいて構築された Power BI 営業ダッシュボードは、営業リーダーによるパフォーマンスの管理方法を、事後対応 (Excel で先月のデータを確認する) から事前対応 (リスクのある取引を特定し、リアルタイムで機会を指導する) に変革します。
ECOSIRE の Power BI ダッシュボード開発チームは、CRM および ERP システムに接続されたカスタム販売ダッシュボードを構築します。データ モデルを設計し、最適化された DAX メジャーを作成し、営業チームが実際に使用する対話型レポートを作成します。
Power BI ダッシュボード開発サービス または チームに連絡 を検討して、販売分析要件について話し合い、範囲の見積もりを取得してください。
執筆者
ECOSIRE Research and Development Team
ECOSIREでエンタープライズグレードのデジタル製品を開発。Odoo統合、eコマース自動化、AI搭載ビジネスソリューションに関するインサイトを共有しています。
関連記事
Building Financial Dashboards with Power BI
Step-by-step guide to building financial dashboards in Power BI covering data connections to accounting systems, DAX measures for KPIs, P&L visualisations, and best practices.
Case Study: Power BI Analytics for Multi-Location Retail
How a 14-location retail chain unified their reporting in Power BI connected to Odoo, replacing 40 spreadsheets with one dashboard and cutting reporting time by 78%.
GoHighLevel + Power BI: Advanced Reporting and Analytics
Connect GoHighLevel to Power BI for advanced marketing analytics. Build executive dashboards, track multi-channel ROI, and create automated reports that go beyond GHL's native reporting.