Cost database
A price library with a version history
Rates change. Bills do not — not once they are issued, and not when someone reopens them in eighteen months to settle a final account. Quantifiable keeps a maintained library underneath your firm's own rates, and pins every project to the release it was priced on.
The problem
A rate without a date is not evidence
A spreadsheet of rates tells you what something costs. It does not tell you when that was true, who changed it, or what the number was before. When a final account turns on a rate applied nineteen months ago, that difference stops being academic.
Rates get overwritten
Someone updates a material rate in March. Every estimate that referenced it now reprices to the new figure, including the one issued in February that a client is holding you to.
Overrides lose their baseline
A firm adjusts a rate to reflect its own buying. Six months later nobody can say what the original was, or whether the adjustment still makes sense.
Build-ups go stale silently
A gang rate is typed as a single figure. The bricklayer's rate rises; the gang rate does not, because nothing connects them.
Nothing survives an audit
Asked to justify a rate, the honest answer is that it came from a spreadsheet that has since been edited, by someone who has since left.
Versioning
Every project is pinned to a release
The maintained library is published as dated releases. A project pins the release it was priced against at the moment it first prices anything, and holds it. Reopen that project in two years and the rates resolve exactly as they did on the day — not as they are today.
Releases, not edits
Changing a rate does not overwrite the old one. It closes the previous row's version window and opens a successor in a new release. Both remain readable forever.
Stable identity across releases
Every entry keeps one logical identity as its rate moves through releases, so an estimate line still resolves after four rounds of updates.
Time travel is the default
Rate resolution filters to the release the project pinned. Getting yesterday's number is the normal path, not a recovery procedure.
Issued work is snapshotted
Issuing a bill records the rates as they stood. Reports read the snapshot, so an issued document cannot silently change underneath a client.
Inheritance
Four levels, resolved in order
Your firm does not have to accept a maintained rate, and does not have to abandon the library to reject one. Every rate resolves down a chain, and the most specific level that has an answer wins.
- The line
- An estimator overrides a single rate on a single bill line, without touching anything else.
- The project
- A rate is set for one job — a negotiated supply, a difficult access, a client's nominated subcontractor — and applies across that project only.
- Your firm
- Your own rate replaces the maintained one everywhere. The maintained figure stays visible alongside it, so you can always see what you moved away from and by how much.
- The maintained library
- The published baseline, underneath everything, at the release the project pinned.
Live build-ups
Rates that recalculate, not rates that are typed
A price book stores a number. This stores the reasoning that produces the number, which means changing one input moves everything downstream of it.
Gangs price from their members
A gang is a composition, not a figure. Its rate is derived from the trades in it whenever it is read, so raising a groundworker's rate reprices every gang containing one — including the gangs your firm has overridden.
Labour carries output
Trades hold productivity norms as hours per unit, so labour cost follows from the quantity and the output rather than from an estimator's memory of the last job.
Regional factors apply on read
Location adjustment is a multiplier resolved at the moment of pricing, not baked into a stored rate. It applies to the unit rate only — never to a delivery or collection charge, which does not vary by region.
Materials carry their specification
Entries hold purchase units and specification facts, so a measurement in square metres can resolve against a material sold by the sheet.
Maintenance
Updates arrive as reviewable releases
When the maintained library is refreshed from a connected supplier feed, the change is not applied quietly. It is published as a release, recorded against each affected entry, and can be rolled back.
Every change is attributable
Each entry records where its rate came from and which release introduced it. An automated update is distinguishable from a curated one at a glance.
Automation cannot invent entries
A supplier feed may only update rates on entries that already exist. Anything it cannot match goes to a review queue instead of creating something nobody specified.
Rollback is a first-class operation
An automated release can be reversed, restoring the previous rates and leaving both the change and the reversal on the record.
Your overrides are untouched
A library release moves the baseline underneath your firm's rates. Anything you have overridden stays exactly as you set it.
Your library
You are never locked to the baseline
The maintained library is a starting point and a fallback, not a constraint. Firms with their own buying power usually end up overriding a great deal of it, and the system is built expecting that.
Bring your own rates
Import your existing library from a spreadsheet, or build it up as you price. Your entries sit alongside the maintained ones and take precedence over them.
Hide what does not apply
Work sections your firm never touches can be hidden from the library view without deleting anything or affecting other users.
Annotate privately
Attach your own notes to a maintained entry — a preferred supplier, a caveat, a reason the rate is optimistic — visible to your firm and nobody else.
Bookmark a set
Freeze a combination of your rates as a named version and price a project against it, so a tender and its subsequent variations share one basis.
Arithmetic
Decimal all the way down
Every rate, quantity and total is stored and calculated as a decimal, never as a floating-point number. Rates hold four decimal places and quantities six. Nothing in the pricing path can introduce the rounding drift that makes a bill fail to reconcile by a few pence and costs an afternoon to find.
Price on rates you can stand behind
Start with the maintained library, override what your buying beats, and keep the version history for the day someone asks where a number came from.