4:47pm on a Friday. The quote has to go out by five or the job goes to the next contractor on the client's list. The spreadsheet is a copy of a quote from two months ago — same rows, prices "should" be current. The builder updates the tile quantity, updates the client's name and address. He forgets to update the labour rate, because it sits on a hidden tab behind three clicks. The quote goes out, the client signs on the spot. Three weeks later it turns out the labour line was still charged at the old, lower rate from before the last price rise. The difference is a few thousand pounds of margin on that job — money that simply vanished because nobody caught it in time.
This isn't a story about one client — it's a pattern we see again and again talking to building firms in the UK and Ireland. Here's how I'd build a system that actually fixes it.
The problem isn't Excel as a tool. The problem is that every quote is a manual copy of the last one, with no control over which row is still correct today. A few things keep repeating:
Say a contractor does roughly 15 quotes a month, average job value €8,000 (£6,800). If once every two months a 3–5% error creeps into labour or materials, that's a loss somewhere between €240 and €400 (£200–£340) per incident — and that's before counting the heavier case: a quote that overcharges the client and simply never gets signed.
| Line item | Correct price | Price in the sent quote | Difference |
|---|---|---|---|
| Labour, 2 bathrooms | €460/day (£390) | €395/day (old rate) | −€65/day |
| Insulation, 40 m² | €19/m² | €19/m² | €0 |
| 10% discount | on materials | on total | extra loss |
The idea is simple: the price list lives in one place, not five copies scattered across desktops. Every quote is generated from it, with discount rules the system applies automatically — not from memory.
The most common requests we hear from UK and Irish building firms: accounting software (Xero, QuickBooks) — an accepted quote becomes a draft invoice automatically; Stripe or a bank link for deposits; WhatsApp or email to send the quote and nudge the client if the link sits unopened for three days. AI genuinely earns its place in one spot here — reading a messy old spreadsheet with several hidden tabs and turning it into a clean, structured price list for approval. Not "AI that sets prices on its own" — just a second pair of eyes for dirty data.
For a first version (Phase 1) with a pre-agreed scope — roughly €4,000–€8,000 (£3,400–£6,800). All three phases together — somewhere between €10,000 and €20,000 (£8,500–£17,000), depending mostly on how complex the discount rules turn out to be and how messy the current price list is to migrate. The real number only comes after a free 48-hour assessment of your actual spreadsheet — nobody should promise a fixed figure before seeing it.
If you're doing 2–3 quotes a month and you're the only one doing them, Excel is doing its job fine — worth saying plainly. A custom system earns its cost when quotes pass through more than one person, when volume is climbing, or when one mistake has already cost you a real job or real money.
The code we write is yours — a repository in your name, documentation, every access credential. Third-party services like Xero or Stripe stay under their own licences. If any of this sounds familiar, describe your situation in one sentence to the live agent at pentimento.pro and watch it sketched out right in the conversation.