Commercial memory
Nineteen estimates, one register, five minutes to an answer
Four years of pricing lived in spreadsheets nobody could open. I rebuilt the commercial history into one register — what was estimated, what it sold for, what happened next — and found that half the formulas were already dead.
- Four years of pricing history in one place
- 19 estimatesFour years of pricing history in one place
- Not one had a recorded rejection — folders simply stopped filling
- 6 sold, 5 died silentlyNot one had a recorded rejection — folders simply stopped filling
- Files whose totals had already collapsed to formula errors
- ~½ unreadableFiles whose totals had already collapsed to formula errors
The client
A software services company with roughly four years of accumulated presale estimates spread across a shared drive, a business-analysis library and several exports, with no single view of what anything had been priced at.
The engagement
A commercial-memory exercise: read every estimate file that existed, reconcile them against contracts and delivery records, and publish one register.
The problem
Pricing history is the most reusable asset a services business owns and the one it protects least. Estimates live in spreadsheets, spreadsheets get exported, exports break cross-sheet references, and the totals quietly become errors. Nobody notices, because nobody opens an old estimate until a similar lead arrives — at which point the answer is needed in an hour and the file shows nothing.
What I did
I read every estimate file that existed and rebuilt the commercial history as a register: what was estimated, when, at how many hours, at what price, and what happened next — sold, died, or superseded. Then I reconciled the register against project records so that no estimate was left orphaned, and identified the one client that could no longer be traced at all. Reading the set as a body of work rather than as files produced the useful findings: no estimate in four years had a recorded rejection, they simply stopped being updated; the standard practice was to quote two scenarios in one file, full and reduced, so the client always had something to choose between; hourly rates had drifted upward by roughly a fifth over four years and a second, premium price tier had appeared; and about half the files were partially unreadable because export had broken their formulas. That last finding produced the only rule that matters here — a commercial total must exist as text in a proposal, an email or a note, and never only as a formula.
What was built
One register covering every estimate found: scope, date, hours, price, what happened afterwards and where the file lives — plus a reconciliation against project notes so no estimate was left without a home, and an analysis of what the register reveals as a body of work rather than file by file.
On the table at the end
- Estimate register across nineteen files with outcome per estimate
- Coverage check reconciling every estimate against a project record
- Rate history by year, showing drift and the emergence of a second price tier
- Standing rule: commercial totals must be duplicated in text, not left in formulas
What it changed
Turned 'what did something like this cost us last time' from a day of archaeology into a five-minute lookup, exposed that a meaningful share of the company's pricing history was already unreadable, and produced a rule that prevents the next four years going the same way.
How it ran
- 01
Find every estimate that exists
Shared drive, analysis library and loose exports swept, duplicates diffed and confirmed identical rather than assumed.
- 02
Record the outcome, not just the number
Each estimate carries what happened next — sold, superseded, or silently abandoned — because a price without an outcome teaches nothing.
- 03
Reconcile against the projects
Every estimate matched to a project record; one unidentifiable client flagged rather than quietly dropped.
- 04
Read the set, not the files
Two-scenario quoting as deliberate practice, rate drift by year, the emergence of a premium tier, and the absence of a single recorded rejection.
- 05
Fix the decay
Half the files had broken totals. The rule: duplicate every commercial total as text outside the spreadsheet, always.
Other work
All case studies →- Software services
What the projects actually earned, once someone put cost next to revenue
Margin was assumed to be about half. Reading revenue, cost and hours together showed a spread from a third to three quarters — and one project that had quietly overrun its ceiling without a change request.
- Aviation
Twenty days of discovery that priced a year of build
An airport group needed to replace a security-credentialling system under a sovereign compliance regime. Twenty person-days of discovery produced five approved deliverables and an effort envelope the fixed-price contract could stand on.
- Knowledge operations
Turning sixty-five gigabytes of drive dumps into context an assistant can use
AI assistants are only as good as the context you can hand them, and the context was spread across drives, chats and mailboxes. I turned it into a structured base where every past engagement is a self-contained dossier.
Something similar on your plate?
Thirty minutes, no deck. I will tell you whether it is worth doing at all.