Estimate follow-up email templates for contractors

Copy an email for a sent estimate, a customer question or a final follow-up. Use the editable tracker to give every open quote an owner and next action.

Prefer text messages? The separate manual SMS examples cover the same situations. Choose the customer’s agreed channel for each touch. Don’t run the email and SMS examples as two separate sequences.

Follow up on a sent estimate with one clear question

An estimate follow-up email should identify the work, reference the current estimate and make replying straightforward. It should also say what you will do next.

Start by checking that the customer received the estimate. Then offer help with a decision. If they remain silent, pause instead of inventing urgency.

These original examples are for routine planned work, such as an HVAC replacement or a remodeling project. They assume the customer requested a written estimate and your team sent it successfully. They aren’t an emergency-response script or a cold prospecting campaign.

Before sending, replace every placeholder and check the project, recipient and estimate link. Use the exact document name and reference your company uses. Don’t change quoted scope, terms or pricing through an improvised follow-up.

Use Day 2, 7 and 14 as an example, not a rule

This kit uses one illustrative schedule: Day 2, Day 7 and Day 14 after the estimate was sent. These are calendar days, with the sent date as Day 0. This is an operating example, not a universal best practice or a promise of better results.

Example touchPurposeIf the customer doesn't reply
Day 2Check the estimate reached themSet the next example touch for Day 7
Day 7Ask what needs clarificationSet the next example touch for Day 14
Day 14Explain that you'll pausePause routine follow-up; leave no routine send due

For an estimate sent October 5, 2026, those dates are October 7, 12 and 19. Use your agreed contact window and staffed hours. Move a touch to an appropriate staffed day if needed, without adding another message.

If the customer already chose a date, use that date instead. If they reply, pause the schedule and give the conversation to its owner. If several steps are overdue, review the situation and choose one next action; don’t send the missed messages together.

Copy a manual email for the customer’s situation

The first three emails form the illustrative no-response sequence. The remaining four are alternatives for a specific request or reply. They aren’t additional scheduled touches.

1. Confirm the estimate reached the customer

Use it: Day 2; no reply, no customer-requested date and no stop condition.

Subject: Your {project_name} estimate #{estimate_reference}

Hi {customer_first_name},

I sent your estimate for {project_name} on {estimate_date}. Here is the current version: {estimate_link}.

Does it cover the work you wanted us to quote? If anything is missing or unclear, reply here and I can review it with you.

Thanks,
{owner_first_name}
{company_name}

After sending: Record the sent touch. If no reply arrives, the next example touch is Day 7. Any reply pauses routine follow-up.

2. Offer help with scope or timing

Use it: Day 7; prior touch sent, no reply and no stop condition.

Subject: Any questions about the {project_name} estimate?

Hi {customer_first_name},

I’m checking in on estimate #{estimate_reference} for {project_name}.

If the scope or timing is still undecided, I’m happy to talk it through. What would you like us to clarify before you decide?

Thanks,
{owner_first_name}
{company_name}

After sending: Record the sent touch. If no reply arrives, the next example touch is Day 14. Do not invent a discount or deadline.

3. Pause follow-up without pressure

Use it: Day 14; prior touches sent, no reply and no stop condition.

Subject: Should I pause follow-up on estimate #{estimate_reference}?

Hi {customer_first_name},

I haven’t heard back about {project_name}, so I’ll pause routine follow-up after this message.

If you’d like to revisit the estimate or ask a question, you can reply here. If you’ve chosen another option, that’s fine too.

Thanks,
{owner_first_name}
{company_name}

After sending: Mark the tracker as paused for no response and leave the next contact date blank. Silence does not mean the customer accepted or declined.

4. Follow up on a date the customer chose

Use it: The customer asked for contact on {requested_follow_up_date}; routine timing is paused.

Subject: Checking in when you asked us to

Hi {customer_first_name},

You asked me to check back around {requested_follow_up_date} about {project_name}.

Is now a good time to revisit estimate #{estimate_reference}, or would you prefer to keep it paused?

Thanks,
{owner_first_name}
{company_name}

After sending: Send only on the agreed date/window. If no reply arrives, keep the routine paused; do not restart Day 2/7/14 automatically.

5. Answer a scope question

Use it: The customer replied with a scope question; a staff member has checked the written estimate.

Subject: Clarifying {scope_item} in your {project_name} estimate

Hi {customer_first_name},

Thanks for asking about {scope_item}. In estimate #{estimate_reference}, {confirmed_scope_explanation}.

Does that answer your question, or would you like us to review a different scope?

Thanks,
{owner_first_name}
{company_name}

After sending: Replace the explanation with checked facts. If the scope changes, prepare a revised written estimate and agree the next contact. Keep the routine paused.

6. Respond to a budget concern

Use it: The customer said the proposed work is outside their budget.

Subject: Reviewing the scope of your {project_name} estimate

Hi {customer_first_name},

Thanks for letting me know. We can review the proposed scope together before you decide.

Which part of the work is your priority? I’ll confirm what alternatives we can actually offer and send a revised written estimate if we agree on a change.

Thanks,
{owner_first_name}
{company_name}

After sending: Confirm any alternative with the responsible estimator. Do not promise a discount, financing, or a lower price without approval. Keep the routine paused.

7. Acknowledge a decision and arrange the next step

Use it: The customer says they want to proceed; the office still needs to confirm the next step.

Subject: Next step for {project_name}

Hi {customer_first_name},

Thanks for letting us know you’d like to proceed with estimate #{estimate_reference}. I’ll ask {scheduling_owner} to confirm the next step with you.

An appointment isn’t confirmed yet. We’ll send the agreed date and time separately once the office has arranged it.

Thanks,
{owner_first_name}
{company_name}

After sending: Stop routine estimate follow-up and make the promised handoff. Record acceptance only when actually confirmed. Keep appointment status awaiting_confirmation until a real booking exists.

Give each estimate a named owner

Assign one person to check replies and keep the next action current. Give that person a backup when they are away. An unassigned estimate should not enter a follow-up sequence.

Before each touch, check the latest conversation and estimate status in the records your team actually uses. A spreadsheet can record a pause or stop; it cannot cancel messages in another tool.

What happenedWhat the owner does
The customer asks a questionPause routine follow-up, answer checked facts and record the next action
They ask for contact laterRecord their date; replace the routine schedule with that agreed action
They want to proceedStop routine follow-up; arrange and confirm the next step separately
They decline or choose another contractorStop routine follow-up and record the actual decision
They ask you to stop, or it is the wrong contactStop contact as requested and update every relevant sending process
The estimate expires, changes or is canceledStop the old sequence; review the current estimate before any contact
A message fails or receipt is uncertainPause sending while the owner checks delivery and contact details
There is still no response after Day 14Pause; silence is neither acceptance nor a confirmed loss

Use only an agreed contact channel. These examples don’t establish permission to email or text someone. Apply your team’s communication rules before sending.

Track the next action, then the actual outcome

Open the blank CSV in your spreadsheet tool. Give each current estimate its own row, owner, sent date and agreed channel. Set the next action and due date; update them after each touch or reply.

The tracker instructions explain its states. The example CSV shows fictional receipt checks, scope questions, pauses, opt-outs and decisions to proceed. It is a reference file, not a list of customer results.

Keep these outcomes separate:

  • A reply starts a conversation; it isn’t an accepted estimate.

  • An accepted estimate isn’t a confirmed appointment.

  • A scheduled appointment isn’t completed work.

  • Completed work doesn’t, by itself, prove a follow-up message caused the sale.

This is a manual tracker. It doesn’t send messages, enforce stops or calculate recovered revenue.

Manual estimate follow-up text messages for contractors

Use these shorter examples when SMS is the customer’s agreed channel. The three routine texts use the same illustrative Day 2, Day 7 and Day 14 timing as the email kit. Choose email or SMS for each touch; don’t send both sequences.

These texts concern a successfully sent estimate for routine planned work. They aren’t cold outreach, a broadcast campaign or an emergency-response script. Apply your team’s communication rules before using them.

Replace every placeholder and identify your business. Check the estimate and the latest conversation before each send. Keep scope explanations concise; move a detailed discussion to the customer’s agreed channel if needed.

Any reply pauses routine follow-up for its named owner. A customer-requested date overrides the Day 2/7/14 example. The requested-date and response texts below are alternatives for a particular situation, not extra scheduled messages.

1. Confirm receipt

Use it: Day 2 instead of the email touch; agreed SMS channel and no stop condition.

Hi {customer_first_name}, it’s {owner_first_name} at {company_name}. Did your estimate #{estimate_reference} reach you? Reply if anything needs clarifying. Reply STOP to stop texts.

2. Offer clarification

Use it: Day 7 instead of the email touch; no reply and no stop condition.

Hi {customer_first_name}, {owner_first_name} at {company_name} here. What would help you decide about estimate #{estimate_reference}: scope, timing, or another question? Reply STOP to stop texts.

3. Pause the sequence

Use it: Day 14 instead of the email touch; no reply and no stop condition.

Hi {customer_first_name}, it’s {owner_first_name} at {company_name}. I’ll pause follow-up on estimate #{estimate_reference} after this text. You can reply if you’d like to revisit it. Reply STOP to stop texts.

4. Use the customer’s date

Use it: The customer’s requested follow-up date; routine timing remains paused.

Hi {customer_first_name}, it’s {owner_first_name} at {company_name}. You asked me to check back about estimate #{estimate_reference}. Is now a good time, or should we keep it paused? Reply STOP to stop texts.

5. Answer a checked scope question

Use it: Reply to the customer’s question after checking the estimate.

Hi {customer_first_name}, {owner_first_name} at {company_name} here. About {scope_item}: {confirmed_scope_explanation}. Does that answer your question? Reply STOP to stop texts.

6. Review a budget concern

Use it: The customer raised a budget concern; confirm alternatives before promising them.

Hi {customer_first_name}, it’s {owner_first_name} at {company_name}. Which part of the work is your priority? I can review the scope with our estimator before proposing any change. Reply STOP to stop texts.

7. Arrange the next step

Use it: The customer wants to proceed; an appointment is not yet confirmed.

Hi {customer_first_name}, it’s {owner_first_name} at {company_name}. Thanks for deciding to proceed. I’ll ask {scheduling_owner} to confirm the next step. An appointment isn’t confirmed yet. Reply STOP to stop texts.

Record a stop wherever your team sends messages

Honor a stop request and its scope. The owner must update the contact record and any sending process; typing a stop into this CSV does not suppress another tool.

Pause if delivery fails, the contact is uncertain or the customer asks a question. Stop routine follow-up after a decline, an expired/canceled/superseded estimate or a decision to proceed. Arrange the next step separately; acceptance isn’t a confirmed appointment.

After the Day 14 text, set the tracker to paused_no_response and leave its routine send date blank. Don’t mark silence as a win or a loss. See the tracker instructions for examples.

Use the manual estimate follow-up tracker

Give each current estimate an owner and a next action. The CSV records decisions; it doesn’t send messages or enforce stops.

  1. Open estimate-tracker.csv in your spreadsheet tool. Keep the separate example CSV as a reference. Its eight rows are fictional.

  2. Add one row per current written estimate. Use an estimate and customer reference from your existing records. Contact details can remain there.

  3. Enter dates as YYYY-MM-DD. Name an owner and backup. Record the customer’s agreed channel and whether contact permission was checked. no or unverified means no send.

  4. For eligible routine planned work, use the illustrative Day 2, Day 7, Day 14 calendar schedule. Day 0 is estimate_sent_date, not the last-message date. October 5, 2026 gives October 7, 12 and 19. Use an appropriate staffed contact window; don’t add touches when moving a date.

  5. If the customer chose a date, record it in customer_requested_follow_up_date and use that date. Pause the routine. If several routine touches are overdue, choose one reviewed next action rather than sending them together.

  6. Each workday, review due actions and the latest customer records. Before any send, check for replies, stops, changed/expired estimates and unconfirmed details. Choose one agreed channel for a touch.

  7. After sending, update the last-touch date and stage, then the next action. After any reply, pause the routine and give the owner a human action. After the Day 14 touch, leave the routine paused with no send due.

  8. When the customer proceeds, record only the outcome you know. Acceptance, appointment confirmation and job completion belong in separate columns.

Field groupWhat to record
Estimate reference, customer reference, projectEnough context to find the actual current estimate
Sent date, amountThe real written estimate; use one currency consistently; an amount is not recovered revenue
Owner, channel, permission checkedNamed reply coverage and the channel you can use; yes, no or unverified
Requested date, last touch, stageThe customer's date; actual sent date; none, day_2, day_7, day_14, requested_date or reply
Estimate status, response received, summaryopen, accepted, declined, expired, canceled or superseded; yes/no; what the reply meant
Routine state, next action, due date, stop reasonThe decision below; a human task can remain due even when routine sends stop
Accepted date, appointment status/date, completed dateActual distinct outcomes; leave unknown dates blank
Outcome notesFacts and unresolved next steps; no implied causal revenue credit
Routine stateMeaning
activeOwner may send a due routine touch only after all pre-send checks pass
paused_replyCustomer replied; only the reviewed human next action is due
paused_customer_dateUse the agreed date instead of routine timing; don't restart automatically afterward
paused_no_responseFinal routine touch sent; no routine send due
paused_reviewDelivery, contact, scope or permission needs checking before contact
stoppedNo routine follow-up; honor a stop request, decision or closed/stale estimate

Use not_scheduled, awaiting_confirmation, scheduled, completed or canceled for appointment_status. Enter a confirmed date only after the appointment actually exists. Record job completion only when you know work finished.

An opt-out must also reach your actual contact records and sending tools. A stopped estimate can still have an internal scheduling task; that does not permit another routine sales touch.

Answer common estimate and quote follow-up questions

How long should I wait before following up on an estimate?

Use the date you agreed with the customer first. For routine work without an agreed date, this kit illustrates Day 2, 7 and 14. Adjust for the decision the customer is making and your contact window.

What should a quote follow-up email say?

Reference the actual quote, ask one useful question and make the next step clear. Use your customer’s document wording. The examples work with an estimate or quotation without changing that document’s terms.

What if the customer doesn’t respond?

Check delivery and the contact record before another touch. After the final example message, pause. Don’t keep sending because silence looks like a sales objection.

Can I use a follow-up text as well?

Choose one agreed channel for a touch. The SMS companion gives shorter versions; it is not a second sequence to add on top of the emails.

What if they say the price is too high?

Ask which work matters most, then have the estimator check real alternatives. Send an updated written estimate if the scope changes. Don’t invent a discount, finance offer or deadline to force a decision.

For new phone and website inquiries, see how Breezy AI handles intake. You can use this manual kit whether or not you use Breezy.

Skeptical? Try it on your own business.

Talk to a live AI agent - same technology your customers will use. After your demo, it gets fully set up for your business: your name, your services, yours FAQs, your rules.

frequently asked questions

Still have questions? We have answers.

Still have questions? We have answers.

Still have questions? We have answers.

Search for answers to common questions about Breezy

Search for answers…

Ready to capture more leads and maximize revenue with Breezy?

Ready to capture more leads and maximize revenue with Breezy?

Go live in 1 hour and start capturing every lead

HVAC

Plumbing

Electrical

Pest Control

Appliance repair

Breezy AI helps residential HVAC, plumbing and electrical businesses answer calls, capture website inquiries and handle service requests.

© 2024 Breezy Software Inc | All Rights Reserved

Breezy AI helps residential HVAC, plumbing and electrical businesses answer calls, capture website inquiries and handle service requests.

© 2024 Breezy Software Inc | All Rights Reserved

Breezy AI helps residential HVAC, plumbing and electrical businesses answer calls, capture website inquiries and handle service requests.

© 2024 Breezy Software Inc | All Rights Reserved