The Pipeline Dashboard
Seven channels.
One number everyone trusted.
- 7
- lead channels
- 3
- stages: sales-qualified, hiring requirement, client
- 0
- engineers: Sheets and Apps Script
The problem: three answers to one question
"How many qualified leads did we get in October?" Each team kept its own sheet, so each had its own answer, and it was a week old by the time anyone reconciled it.
Sales tracker212
Marketing sheet236
The CRM export198
Illustrative figuresWhat I built: one sheet that rebuilds itself
- 1Fix a mislabelled lead by hand
- 2Rebuild the month from raw data
- 3Your fix is still there
fx
=REBUILD(month)Illustrative figures| Row | A · Channel | B · SQL | C · HR | D · Client |
|---|---|---|---|---|
| 1 | SEO | 120/ 110 | 54/ 50 | 12/ 10 |
| 2 | GEO | 80/ 90 | 33/ 40 | 7/ 8 |
| 3 | Paid | 140/ 130 | 61/ 60 | 14/ 12 |
| 4 | Other channels | 210/ 220 | 88/ 95 | 19/ 20 |
Try it: fix one, then rebuild.
Then the number did its job
Every channel, followed to the end: sales-qualified lead, confirmed hiring requirement, client. About one in two qualified leads reached a confirmed requirement. Pick a channel.
Channel figures illustrative. "About one in two" is the real rate.
The team argued from one number, not about it.
Finds each month by its headerMonths aren't a fixed height.
Empty channels read 0Not an error.
Your fixes surviveEvery rebuild.
The record what it is, the problem, what changed
- What it is
- A pipeline dashboard in Google Sheets and Apps Script.
- Where
- Uplers: seven source channels, three stages (SQL, HR, Client).
- The problem
- Seven channels, seven versions of the truth, and a number a week old by the time anyone reconciled it.
- What I built
- A script that rebuilds any month from raw data, reshapes old layouts, repairs formulas, and keeps human corrections through every rebuild.
- What changed
- Reconciliation that ate hours became a refresh. The team argued from one number, not about it.
- What is illustrative
- Every figure in the table below.