Skip to content
All workCase study · Healthcare services · Power BI

Pipeline history the CRM never kept.

Sales Pipeline Intelligence: daily point-in-time snapshots of the CRM pipeline in the lakehouse, and a waterfall that explains every dollar of movement between two dates.

Daily
snapshots of every open deal, kept point-in-time
Audited
waterfall: start, plus what came in, minus what went out, equals end
1 model
behind the sales dashboard and its waterfall
01The problem

The CRM only knew where each deal stood today. What the pipeline looked like last month, and why it moved since, wasn’t something it could report.

02What we built
  1. 1Bulk loads from the CRM. CRM records arrive through its bulk APIs and land in the lakehouse with every other source.
  2. 2Daily snapshots. Every open deal is kept point-in-time in gold, so any two dates can be compared.
  3. 3A waterfall that audits itself. Movement between two snapshots splits into new, pulled in, revised, won, lost and pushed out, and the start plus every movement has to equal the end.
  4. 4One sales model. Deals, accounts, contacts, owners and snapshots in one Power BI model, kept as TMDL in Git.
03The result

Pipeline reviews start from a history the CRM never kept, and every dollar of movement between two dates is accounted for.

04 · Inside the reports

Rebuilt on fictional data, page by page.

The dashboard’s layout and logic with made-up deals and figures. The pages, tabs and charts all respond.

Sales DashboardSnapshot · Oct 27, 2026Year · 2026Owner · AllStage · All openSample dataLast refreshOct 27 · 6:52 AM
Won revenue$4.82M2026 to date · 38 deals
Win rate31.4%Of closed revenue
Open pipeline$12.6M142 open deals
Average deal age84 daysOpen deals
Open deals142Across 6 owners
Pipeline movement
Oct 1 to Oct 27 · start + in − out = end Balances
$11.9M
+$3.4M
+$0.6M
+$0.9M
−$1.8M
−$1.1M
−$0.7M
−$0.4M
−$0.2M
$12.6M
StartNewPulled inRevised upWonLostPushed outRevised downOtherEnd
Start$11.9M
New+$3.4M
Pulled in+$0.6M
Revised up+$0.9M
Won−$1.8M
Lost−$1.1M
Pushed out−$0.7M
Revised down−$0.4M
Other−$0.2M
End$12.6M
Open pipeline by stage
Initiated$2.1M
Qualified$3.4M
Alignment$2.9M
Solutioning$2.6M
Verbal$1.6M
Aging by deal category
CategoryClosedWin rateWon revenueOpen revenue
New logo6424.8%$1.92M$7.40M
Renewal4152.1%$1.88M$2.65M
Expansion2238.6%$0.71M$1.83M
Partner918.2%$0.31M$0.72M
Total13631.4%$4.82M$12.60M
Win rate by deepest stage reached
Initiated8.2%
Qualified19.5%
Alignment34.0%
Solutioning52.7%
Verbal88.9%

Open pipeline, weighted

StageOpenValueExpected
Initiated31$2.1M$0.17M
Qualified38$3.4M$0.66M
Alignment29$2.9M$0.99M
Solutioning27$2.6M$1.37M
Verbal17$1.6M$1.42M
Total142$12.6M$4.61M
Open deals by days outstanding
28
31
24
33
19
7
0–3031–6061–9091–180181–365365+

Overview. Won revenue, win rate and open pipeline up top, with movement, stages, aging and win rate by the deepest stage reached.