Estimate version history

Every meaningful change to an estimate is captured as an immutable, numbered version you can open, compare and pin — from one modal that opens the same way everywhere.

What it is

An append-only version spine any module can write to, plus one shared 'See Versions' modal opened from the Estimates tab and from a pipeline opportunity card. Each version carries its number, date and time, author, quoted price and its full snapshot. Versions are never edited after they're written, because a historical reference has to be truthful.

Also called: see versions · revision history · what was in the last quote · previous version of the estimate

See it, piece by piece
01

Every revision is kept, numbered, dated and attributed

Reps make three to eight revisions on an average estimate, and before this the prior state was gone the moment anything changed. Each version carries its number, its date and time, who built it, the price quoted and its full line breakdown — and is never edited afterwards, because a record that can be rewritten isn't one.

Versions — Compare
Versions
Hoover 40 × 60 Equipment Storage
Done
Version 3Version 4DifferenceChange
v3: $88,926.47v4: $93,348.50
+$4,422.03
more · customer total
Materials$49,360.22$49,808.75+$448.53
Services$21,846.00$25,546.00+$3,700.00
Markup$8,809.72$9,083.22+$273.50
Line items changed
Doors & Windows$8,329.47$9,640.00+$1,310.53
Wainscot Panelsgone$862.00$862.00
Version 4Latest
Aug 24, 2026 2:14 PM · Dale Whitmore
$93,348.50
customer total
Version 3LiveSent
Aug 21, 2026 9:02 AM · Dale Whitmore
$88,926.47
customer total
v2
Version 2SentFirst sent
Aug 12, 2026 4:37 PM · Marcus Feld
$84,110.00
customer total
The version rows — number, date, author, total, and the Live / Sent / Latest badges. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
02

A banner states the exact figure the customer is looking at right now

Three numbers can be on your screen at once: the working draft, the raw materials figure, and what was actually sent. The banner names the live one, then flags drift — a newer version that was never sent, or edits made after the last send that exist in no version at all. “I removed the concrete” and the customer still reading the old price is the case it was built for.

03

Put two versions side by side and see what moved

Pick any two and the section subtotals line up column by column with the difference between them, each number colour-tied to its own version. “Why is this one $4,422 more than the last?” becomes a list of the lines that changed, rather than two totals and a guess.

04

Every send captures the exact document the customer received

A send version stores the customer's marked-up snapshot and the grand total quoted — not your internal pre-markup figures, which are structurally barred from ever appearing on their page. When a customer quotes a price you don't recognise, you open the version they were sent.

Your Investment

Your Investment

Materials$49,808.75
Labor$8,910.53
Services & Add-Ons$25,546.00
Concrete Pad$17,400.00
Site Prep & Grading$2,850.00
Seamless Gutters$1,596.00
Custom Garage Door — 9′ × 8′ (2)$3,700.00
Markup$9,083.22
Customer Total$93,348.50
As low as $1,915.24/month (60-month estimate at 8.5% APR)
Illustrative only — based on a 8.5% APR over 60 months. Actual financing terms vary by lender and credit profile. We are not a lender and do not provide financing.
The marked-up document a send version stores — the customer's figures, not your pre-markup ones. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
05

Put the customer back on an earlier version without destroying the new one

Pin any sent version and their portal shows that one, deliberately, until you change your mind. Each sent version also has a show-or-hide switch, so a superseded quote can be taken out of the buyer's view instead of sitting there being compared against.

06

Answer “what's the price without the concrete” without touching the quote

Labour, porch, each service line, markup and change orders can be ticked in and out of a version's total, and the preview recomputes on your screen only. Nothing saves, so a negotiation on the phone doesn't leave you with an edited estimate you have to put back.

How it works
  1. 1A version row is one immutable snapshot of a component at a point in time, numbered sequentially per estimate, which gives 'v3 of 5' semantics for free.
  2. 2A cheap change-detect signature means a new version is only cut when the content actually changed — reps sync and re-open constantly and the history must not fill with noise.
  3. 3The list shows every version newest-first with the selected one badged.
  4. 4Expanding a version shows its stored line breakdown so a rep can answer 'what was in the last one?' mid-call.
  5. 5The same modal is reachable from the estimate and from the opportunity card, taking the linked job id as its key.
Why we built it

A rep makes three to eight revisions on an average estimate and spends the whole sales conversation referring back to earlier ones — what was the price on the last one, put back the version with the bigger porch. There was no history, so once an estimate changed its prior state was gone and the answer came from memory or a forwarded email. Every meaningful change is now captured as an immutable, numbered version you can open, compare and pin, from the same place everywhere. It was built as general versioning rather than an estimates-only feature so other documents can carry their own independent history.

The problem
  • Prior estimate states disappearing the moment anything changed
  • Rebuilding an old quote from memory during a live call
Sound familiar?
What you get
Answer 'what was it before' from the screen, mid-call
History is immutable, so it can be trusted as a record
Same modal from the estimate or the pipeline card
What's inside
Every send captures the exact document the customer got
Sending an estimate captures a customer-facing version carrying the exact marked-up snapshot the customer sees and the grand total quoted.
Pin the version the customer sees
Choose which version the customer's portal shows — including deliberately an older one — without destroying anything newer.
Show or hide a version from the customer
Each sent version has a toggle deciding whether the customer can see it, changeable at any time from the Versions modal.
Compare two versions side by side
Put any two versions next to each other and see what moved, with each version's numbers colour-tied to its own column.
What-if toggles on a version's total
Tick labour, porch, each service line, markup or change orders in and out of a version to see what the total would be — without saving anything.
What the customer sees now vs your latest draft
A banner at the top of the version list stating the exact figure the customer is looking at right now, and whether your edits since then are live.
Deliberate versions on a 3D-builder estimate
Autosave keeps the working draft; a version is only written when the builder presses Create next version, snapshotting the 3D spec, takeoff, pricing and quantity edits at that moment.

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →