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
- 1Bulk loads from the CRM. CRM records arrive through its bulk APIs and land in the lakehouse with every other source.
- 2Daily snapshots. Every open deal is kept point-in-time in gold, so any two dates can be compared.
- 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.
- 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.
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 BalancesStartNewPulled 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
| Category | Closed | Win rate | Won revenue | Open revenue |
|---|---|---|---|---|
| New logo | 64 | 24.8% | $1.92M | $7.40M |
| Renewal | 41 | 52.1% | $1.88M | $2.65M |
| Expansion | 22 | 38.6% | $0.71M | $1.83M |
| Partner | 9 | 18.2% | $0.31M | $0.72M |
| Total | 136 | 31.4% | $4.82M | $12.60M |
Win rate by deepest stage reached
Initiated8.2%
Qualified19.5%
Alignment34.0%
Solutioning52.7%
Verbal88.9%
Open pipeline, weighted
| Stage | Open | Value | Expected |
|---|---|---|---|
| Initiated | 31 | $2.1M | $0.17M |
| Qualified | 38 | $3.4M | $0.66M |
| Alignment | 29 | $2.9M | $0.99M |
| Solutioning | 27 | $2.6M | $1.37M |
| Verbal | 17 | $1.6M | $1.42M |
| Total | 142 | $12.6M | $4.61M |
Open deals by days outstanding
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.
Next case studyUtilization QA Console A failure-prone manual QA process rebuilt as an app inside Fabric, on the same semantic model as the reports.
Pipeline reviews still running on exports?Talk to us