Contractor sales workflow guide

How to Follow Up on a Contractor Estimate (With Scripts)

A good follow-up is not pressure. It confirms delivery, answers the question blocking the job, and gives every sent estimate a clear next action.

10 min read • Follow-up timing, decision blockers, status workflow, and customer scripts

Every follow-up needs one useful purpose

Confirm delivery
Answer a question
Clarify an option
Update real timing
Request a decision
Close the loop

Why contractor estimates go quiet

Silence does not always mean no. The estimate may be buried in an inbox, the scope may be difficult to compare, a spouse or property manager may not have seen it, the start date may be unclear, or the customer may not know how to ask for a lower-cost option.

Repeated “just checking in” messages do not solve those problems. A useful follow-up names the project, points to the current estimate, asks one easy question, and records the next step. The timing below is a practical default—not a universal rule. Emergency repairs, small service calls, commercial bids, insurance work, and long-lead remodels require different cadences.

Field rule:

Never send a follow-up that could apply to any customer. Name the job, reference the estimate, ask one useful question, and set one next action.

Before-send estimate checklist

Customer name, project address, and best reply method are correct

Scope is specific enough for the customer to compare the right work

Quantities, rates, allowances, alternates, taxes, and totals are understandable

Exclusions and customer responsibilities are visible

Deposit, progress payments, final payment, and accepted payment methods are clear

Start-window, material lead-time, and schedule assumptions are realistic

Estimate validity date reflects supplier pricing and your sales cycle

The message tells the customer exactly how to approve or request changes

Contractor estimate follow-up sequence

When you send it

1. Make the estimate easy to review

Send the estimate with the customer name, job address, itemized scope, assumptions, exclusions, price, payment schedule, validity date, and one clear approval step. Tell the customer when you plan to check back so the next message is expected, not surprising.

1–2 business days later

2. Confirm delivery and invite questions

Ask whether the estimate arrived and whether anything is unclear. Do not lead with “Have you decided?” A delivery check catches spam-folder problems, wrong email addresses, missing attachments, and confusion while the site visit is still fresh.

3–5 business days later

3. Resolve the real decision blocker

Ask a useful question: Is the scope clear? Is the timing workable? Does the customer need an alternate? Is another decision-maker involved? Revise the estimate only when the scope changes—do not negotiate against yourself with an automatic discount.

7–10 business days later

4. Give an honest schedule or price update

If material pricing, lead time, or crew availability has genuinely changed, explain it plainly. If nothing has changed, do not invent urgency. Offer to hold the existing estimate until its stated validity date and ask whether the project is still active.

At the validity date

5. Close the loop and set the next status

Send one courteous close-the-loop message. Ask whether to move forward, revisit on a specific month, or close the estimate for now. Record the response as approved, changes requested, declined, expired, or follow up later so an old quote does not stay in a vague “sent” pile.

Find the reason the estimate stalled

The estimate was missed

Confirm the address, resend the same version, and identify it by job name and estimate number.

The scope is hard to compare

Review inclusions, exclusions, quantities, allowances, and options before discussing price.

The total is over budget

Offer a clearly scoped alternate or phase instead of cutting price while leaving the same work promised.

Another person must approve

Ask who needs the estimate and send one consistent version to every decision-maker.

The customer is not ready

Agree on a specific month or trigger for the next contact rather than sending weekly “just checking in” messages.

They chose another contractor

Thank them, record the reason when they volunteer it, and close the quote without arguing.

Estimate follow-up scripts contractors can use

Delivery check

Hi [Name], I sent estimate #[number] for [project/address] on [day]. Did it come through clearly? I am happy to explain the scope, options, or schedule before you decide.

Decision-blocker follow-up

Hi [Name], I am following up on estimate #[number]. Is the scope clear, or is there a question about price, timing, materials, or an alternate option that I can answer?

Real availability update

Hi [Name], estimate #[number] is still valid through [date]. Our current start window is [window], and [material/lead-time note] still applies. Would you like to approve it, request a change, or revisit the project later?

Close-the-loop message

Hi [Name], I am closing the loop on estimate #[number] for [project]. Should I keep it active, revise something, follow up in [month], or close it for now? No problem either way—I just want to keep the project status accurate.

Use a simple estimate status workflow

Sent

Estimate delivered; next follow-up date is scheduled.

Viewed or confirmed

Customer received it; questions and decision-makers are known.

Changes requested

Scope or option needs revision; send a clearly versioned update.

Accepted

Approval and required deposit are complete before scheduling.

Rejected or expired

Decision is closed; record any useful reason and stop chasing.

Follow up later

Customer named a real month, event, or budget trigger for contact.

Follow-up mistakes that cost trust

  • Sending the same “just checking in” line every few days without adding value
  • Creating fake deadlines, fake discounts, or false schedule scarcity
  • Dropping the price before learning whether scope, timing, or budget is the real issue
  • Texting, calling, and emailing on the same day without customer permission or urgency
  • Revising scope without a new version, date, totals review, and written approval path
  • Leaving declined or expired estimates marked as active, which hides the real sales pipeline

When to stop following up

Stop when the customer asks you to, declines the project, lets the estimate expire without requesting more time, or ignores the close-the-loop message. Keep a future follow-up only when the customer gives a real reason and timing, such as financing approval, a property closing, an insurance decision, or a named season.

A clean “not now” is more useful than an endless list of quotes that look active but have no next action.

Keep estimate follow-up tied to the actual job

QuoteAnvil keeps the customer, itemized estimate, scope notes, photos, status, approval, schedule, and invoice handoff connected so you can follow up from the current job record instead of rebuilding context from old texts.

Send a professional estimate with a clear scope and approval path
See sent, viewed, accepted, rejected, and expired quote status
Revise the job without losing the customer and estimate context
Move approved work into scheduling and invoicing workflows
Build and track your next estimate

Related contractor guides