Excel is brilliant at maths. It just forgets what you promised.
Almost no quote goes wrong because a spreadsheet added up incorrectly. They go wrong because a spreadsheet has no idea which numbers it already sent to a client — and it will happily change them behind your back.
The famous spreadsheet disasters were not arithmetic
In each of these, every formula returned exactly the right answer to the wrong question. That is the failure mode worth worrying about — it never announces itself.
A selected range that stopped five rows short
Reinhart and Rogoff's growth paper — cited across austerity debates — averaged a column that stopped five rows short, silently dropping five countries. A graduate student found it three years later, after getting hold of the original file. The formula was correct. The range was not.
Herndon, Ash & Pollin (PERI, 2013)Risk understated by copy-paste
JPMorgan's own task force report on the "London Whale" losses described a risk model run across Excel spreadsheets, with figures copied and pasted by hand between them — and one step that divided by a sum where it should have divided by an average. Excel did exactly what it was told.
JPMorgan task force report (2013, PDF)Sixteen thousand cases that fell off the bottom
Public Health England left about 16,000 COVID cases out of its reported figures for a week. Reporting traced it to a legacy Excel format that silently stopped accepting rows once a file hit its limit. Nothing failed loudly — the rows simply were not there, and contact tracing ran a week behind on them.
PHE statement (2020)Public, documented cases — not our research, and linked so you can check them. Each is described narrowly on purpose: all three have a more dramatic version in circulation that the sources do not support. The European Spreadsheet Risks Interest Group keeps a long list of the rest.
Four things a spreadsheet structurally cannot do
Not missing features — consequences of what a spreadsheet is. A grid of cells has no concept of a quote, a rate, a currency or a client. You supply all four, every time, from memory.
A spreadsheet has no memory of a promise
A quote is a live formula. Raise a rate and every quote pointing at that cell rewrites itself — including the one you sent last month. Your sheet and your client's PDF now disagree, and nothing tells you.
The rate is copied onto the line when you save. Re-price the role, rename it, retire it — quotes already sent keep the numbers they were sent with, because those numbers are theirs now.
A number in a cell does not know what it is
12000 is just 12000. Currency is a display format, and formats lie: paste a CZK day rate into a quote formatted as euros and Excel shows €12 000 without hesitating. The maths is flawless. The invoice is fiction.
A rate belongs to a currency. A role priced in CZK has no EUR rate — so a EUR quote says "no EUR rate" and asks you for one, instead of borrowing a number that means something else. Nothing is ever converted behind your back.
SUM cannot tell hours from days
Mix "3 hours of consulting" and "2 days of integration" in one column and =SUM() answers 5. Five what? The column has no idea, and neither will you in three months.
Each line carries its own unit. Money is added directly — it is already money. Effort is converted explicitly, using your definition of a working day, and never by pretending an hour is a day.
The file is the permission model
Whoever has the file has every rate you have ever charged, every internal note, and every margin. Sharing a quote means sharing the workbook it lives in — or maintaining a second, diverging copy.
Quotes live in your organisation, not in a file. Internal notes stay internal; the client gets a PDF. Someone leaving the team loses access rather than keeping a copy of your pricing.
Side by side
Including the two rows where Excel wins. If those are the rows that matter to you, keep the spreadsheet — we would rather tell you now than take your money.
| Excel | Estimify | |
|---|---|---|
| Changing a day rate | Silently restates quotes you already sent | Only affects new quotes |
| A role you stop using | Delete the row and old quotes break | Archived — historical quotes still read correctly |
| Quoting in another currency | Re-format the cells and hope | Rates per currency, quote stamped at creation |
| Two people quoting at once | quote_final_v3_REALLY_final.xlsx | One quote in one place — no forked copies |
| What the client receives | A print-to-PDF of your working file | A clean PDF; your notes and margins stay behind |
| Ranges (optimistic / realistic / pessimistic) | Three more columns and three more chances to err | Built in, from one number |
| Truly one-off, strange calculations | Anything you can imagine | Structured around quoting work |
| Cost of the tool | You already own it | €19/month for the team |
When you should stay in Excel
If you send a quote every few months, a spreadsheet is fine — the failures above need repetition to bite. If your pricing is genuinely one-of-a-kind every time, a grid of cells is the right shape for it, and no structured tool will keep up with you.
Estimify earns its keep when quoting is a routine: the same roles, the same day rates, the same shape of work, over and over — where the cost of drift compounds and the tenth quote should take ten minutes rather than an afternoon of copying the ninth.
Your next quote does not have to start with last month's file
Set up your roles and day rates once. Every quote after that is ten focused minutes and a PDF your client actually understands.
Get started€19/month flat · 5 members included · cancel anytime