Skip to main content

Estimating

48 hrs
after which estimate close rates drop
Estimates delivered within 24 hours close 2-3× more than estimates that take 3+ days — speed signals competence and seriousness
~40%
of estimates never close
Industry average win rate in trades hovers near 40%; the other 60% go cold, get ghosted, or lose to a faster competitor
3 options
closes more than 1 option
Tiered estimates (good/better/best) outperform single-price quotes — customers compare options, not whether to buy at all
Photo + scope
is what customers re-read
Estimates with annotated photos of the actual jobsite and scope-of-work narrative get re-opened ~5× more than line-item-only quotes

The Same Card, Three Pipelines

An estimate isn't a separate object. It's the same opportunity card you started with — promoted into the next pipeline. When an opportunity hits "Qualified" and the estimator builds a quote, that card disappears from the Opportunities board and lands in the Estimating board, carrying its history with it. When the customer signs, it graduates again into the Projects board as a job. One record, three lenses — each lens belongs to a different team.

The Estimating module is where opportunities become bookable work. After a site visit, the estimator builds a line-item quote — labor, materials, options — and sends it to the customer. The customer reviews in their portal, approves with an e-signature, and the estimate auto-converts into a project and invoice. Every estimate is tracked from draft to win/loss, with attribution back to the estimator and the originating opportunity source.


Sales Pipeline

The estimator's primary view is a kanban board, not a list. Cards move left-to-right as the estimate matures. Each card surfaces the same opportunity DNA — source, contact, projected value, days in stage — plus estimate-specific data: total amount, last viewed timestamp, days since sent. Drag a card right to advance; drop into Approved and the system spins up the project and the deposit invoice automatically.

BoardListCalendarWin Rate
23 open · $148K weightedFilter: All Estimators+ New Estimate
Draft5
$42K
Derek Wilson
Roof inspection + repair
$6,4001d
Web
DM
Tom Briggs
Garage door + opener
$3,2002d
Referral
DM
Jenna Park
Fence rebuild · 80 ft
$5,8003h
Web
AK
+ Add card
Sent6
$58K
Linda Nguyen
Kitchen tile + backsplash
$14,5002d
Repeat
AK
Eric Wood
Bathroom remodel
$18,4004d
Repeat
DM
STALE
Karen Holt
Window replacement (8)
$9,2006d
Phone
AK
+ Add card
Viewed5
$34K
Marcus Patel
Bathroom remodel
$22,8004d
Web
DM
Opened 3×
Robert Johnson
Roof tear-off
$11,4002d
Web
AK
Opened 1×
+ Add card
Negotiating4
$24K
Holly Madsen
Deck rebuild · tiered
$12,2005d
Repeat
DM
Asked for 'better' tier
Brian Cole
HVAC replacement
$8,8003d
Phone
AK
Comparing quotes
+ Add card
Approved3
$31K
Sarah Garcia
Deck rebuild · 320 sqft
$9,4002h
Web
DM
✓ Signed · invoice sent
Amy Chen
Whole-house repaint
$14,2001d
Repeat
AK
✓ Signed · scheduled
+ Add card
Cards entering "Approved" auto-graduate to Projects → within 2 seconds. Invoice + project + crew suggestion all spin up automatically.Win rate this month: 41%

Estimate List View

A list view is also available for estimators who prefer a flat sortable table — same data, different lens. Useful for bulk operations and reporting.

AllDraftSentViewedApprovedLost
23 open · $148K pipeline
Est. #CustomerProjectAmountStatusSentDays
E-091Sarah GarciaDeck rebuild · 320 sqft$9,400ApprovedMay 142
E-092Marcus PatelBathroom remodel$22,800ViewedMay 164
E-093Linda NguyenKitchen tile + backsplash$14,500SentMay 182
E-094Derek WilsonRoof inspection + repair$6,400Draft
E-089Amanda ChenWhole-house repaint$18,200LostMay 218

Pipeline Stages

The estimate kanban has five active columns plus three terminal states. Each transition is logged with timestamp and actor for the audit trail. Automatic triggers move cards forward — the estimator only drags manually to override.

StageTypeEntry TriggerExit TriggerSLA
DraftActiveEstimator opens "Build estimate" from a Qualified opportunityEstimator clicks SendSame day as site visit
SentActiveEstimate emailed + SMS'd to customer with portal linkCustomer opens the portal link
ViewedActivePortal view event logged (first open)Customer replies, calls, or requests changesFollow up within 48 hours of first view
NegotiatingActiveCustomer requests changes, asks for tier swap, or back-and-forth on priceCustomer signs OR estimator marks Lost
ApprovedTerminal (Win)Customer e-signs in portalAuto-graduates to Projects pipeline within 2 seconds
DeclinedTerminal (Loss)Customer explicitly declines via portal button
ExpiredTerminal (Loss)Validity period elapses with no decisionCustomer auto-notified with refresh offer
LostTerminal (Loss)Estimator manually closes with reason codeReason required (Price / Timeline / Competitor / Scope / No Reply)

The three terminal states (Declined, Expired, Lost) are filtered out of the active board by default but remain accessible from the "Lost" filter pill. They feed win-rate analytics and loss-reason reporting.


Building an Estimate

Estimators build a quote in four parts:

1. Header

  • Customer (auto-linked from the opportunity)
  • Job address (auto-filled from contact, editable if different)
  • Estimate validity period (default 30 days)
  • Estimator name (logged in user)

2. Scope of Work

A free-text narrative describing what will be done, in plain language. This is what the customer reads first — line items follow. Templates exist per service type so estimators don't write from scratch.

3. Line Items

Each line carries: description, quantity, unit, rate, total. Lines are grouped by category (Labor, Materials, Equipment, Permits, Other) and totals roll up by group.

Line ItemQtyUnitRateTotal
Labor — Lead carpenter28hrs$150/hr$4,200
Labor — Helper16hrs$85/hr$1,360
Composite decking320sqft$12.50/sqft$4,000
Framing lumber1lot$680$680
Permit fee1each$320$320
Cleanup / haul-off1each$200$200
Subtotal$10,760
Tax (8%)$861
Discount (Referral)-$2,221
Total$9,400

4. Photos & Attachments

Photos of the jobsite (uploaded from mobile during the site visit) attach to the estimate. Customers see them inline with the scope. Estimates with annotated photos get opened ~5× more than line-item-only quotes.


Estimate Templates

Estimators rarely build from scratch. Templates exist per service type and load a pre-built scope narrative + line items that the estimator then tunes:

TemplateTypical UseDefault Lines
Deck rebuildReplace existing deck~12 lines (demo, framing, decking, railings, finishing)
Bathroom remodel — standardTub-to-shower conversion~18 lines
Kitchen tile + backsplashSurface work only~8 lines
Roof inspection + repairSmall repair~6 lines
HVAC tune-upRecurring service~3 lines
Whole-house repaintExterior + interior~14 lines

Templates are tenant-customizable — owners can create and edit templates from Settings → Estimate Templates.


Good / Better / Best Tiered Estimates

For projects with optionality, estimators can present three tiers side-by-side on a single estimate. Customers pick a tier with one tap.

TierDescriptionTotal
GoodStandard composite, builder-grade railings, paint finish$7,200
BetterPremium composite, aluminum railings, stain finish$9,400
BestTop-tier composite, glass-panel railings, pergola add-on$14,800

Tiered estimates close more than single-price quotes because they change the customer's mental question from "should I buy?" to "which tier?"


Customer Approval Flow

When the estimate is sent, the customer receives:

  1. SMS — "Your estimate from [Business] is ready: [short link]"
  2. Email — Branded email with the estimate PDF attached and a portal link to view in-browser
  3. Portal view — In-browser view with photos, scope, line items, e-sign button

When the customer taps "Approve":

  1. E-signature captured (drawn or typed)
  2. Timestamp + IP address logged
  3. Estimate status → Approved
  4. Project auto-created from the estimate's line items
  5. Invoice auto-created (initial deposit invoice if a deposit % is configured)
  6. Originating opportunity moves to "Won"
  7. Estimator and owner notified
  8. Customer receives confirmation email + project portal access

Approved estimates capture a full audit trail for legal defensibility:

CapturedPurpose
Customer signature imageVisual signature on the PDF
Typed nameBackup if image fails to render
Timestamp (server-side)When approval happened
IP addressOrigin of approval
User-agentDevice used to approve
Document hashCryptographic proof the document wasn't modified after signing

Each estimate version is hash-locked at send time. If the estimator edits after sending, a new version is created — the customer must re-approve.


Estimate Expiration

Every estimate carries a validity period (default 30 days, editable). On expiration:

  • Status changes to Expired
  • Customer notified via email with offer to refresh
  • Estimator notified to follow up
  • Opportunity returns to the pipeline at the Qualified stage if it was sitting in Appt Pending/Booked

Expired estimates can be refreshed — system clones the estimate with new validity dates and updates pricing for any material cost shifts.


Win Rate Analytics

The estimating dashboard tracks performance per estimator, per service type, and per opportunity source:

MetricDefinition
Win rateApproved ÷ (Sent − Expired − Withdrawn)
Avg time to sendHours from opportunity Qualified → estimate Sent
Avg ticketMean approved estimate value
Close velocityMedian days from Sent → Approved
Loss reasonsCount by reason code (Price, Timeline, Lost to competitor, Scope changed, No reply)

Owners see this rolled up across the business; estimators see their own performance.


Estimate → Invoice → Project

Approval is the trigger that cascades downstream:

  1. Project created — Line items become project tasks, total becomes contract value
  2. Invoice created — Deposit invoice generated if a deposit % is configured (e.g., 30% due at signing)
  3. Schedule slots reserved — If the estimate references a specific install date, the calendar holds that block
  4. Materials list generated — Material lines flow to the procurement queue
  5. Crew suggested — Skill-matched crew is suggested for assignment
  6. Customer portal updated — Customer now sees a Project page with milestones

This entire cascade happens in < 2 seconds after approval. The estimator doesn't manually create anything downstream.


Change Orders vs. Re-Estimating

When scope changes during a job:

  • Small scope additions (< 10% of original contract value) → Change order (see Invoices & Payments)
  • Major scope changes (≥ 10% or fundamentally different work) → New estimate with a versioned link to the original

The system enforces this threshold automatically — over-10% additions require an e-signed change order before work proceeds.


Access Control (RBAC)

PermissionOwnerManagerEstimatorDispatcherTechnicianBookkeeper
View all estimatesOwn projects
Create estimate
Edit draftOwn
Send estimateOwn
Apply discount > 10%
Mark as LostOwn
Edit templates
View win-rate analyticsOwn