Estimates

How long an estimate should stay valid

By DoneQuote Editorial · August 23, 2026 · 6 min read

Give an estimate a clear acceptance deadline based on supplier price holds, the scope and your availability. Keep the window within the supplier’s hold unless you have deliberately covered the risk of later increases. Write the actual expiration date and explain how an expired estimate will be rechecked.

Why costs can change before acceptance

An estimate is a snapshot of three things: what materials cost the day you priced them, what your crew costs, and what your calendar looked like. All three drift.

Check current supplier quotes for the materials and equipment that contribute most to your price. A change in one expensive item can affect the margin even when your labor cost stays the same.

Availability matters even if your costs have not changed. A job accepted later may need a different start window, or require overtime you did not include. Check the schedule and any actual cost changes before extending an unaccepted estimate.

Read the supplier’s actual terms. Keep your estimate’s acceptance window within that price hold unless you have priced or contractually addressed the extra risk. Acceptance does not buy the materials: also consider when you will order and whether the supplier will hold the price until then.

This invented example shows the possible cost of a price increase:

Pressure-treated deck, 16 x 20Amount
Estimate total$18,400
Materials in that total$6,200
Supplier hold on the lumber10 days
Target profit at 10%$1,840
Cost of a 15% material move$930

A 15% swing on materials eats half the profit. The customer, holding a firm-looking number on a PDF, never sees it.

Choose a validity window you can support

There is no national standard. The windows below are illustrative starting points, not surveyed industry practice — adjust it to your supplier terms and your backlog.

Work typeIllustrative validity window
Service call, diagnostic, small repair7 to 14 days
Standard residential job, fixed scope (interior paint, drywall patch, fixture swap)30 days
Material-heavy build (deck, fence, framing, roofing)10 to 30 days
Equipment replacement (HVAC, water heater, panel)14 to 30 days
Large remodel or addition30 to 60 days
Commercial bid with a stated bid dateWhatever the bid documents require

Shorten the window when one volatile material carries most of the price: a fence estimate that is 60% cedar rides on lumber, not labor. Lengthen it when the customer is genuinely shopping the job, but pair the longer window with the escalation wording below instead of absorbing the risk.

Recurring service quotes need both an acceptance deadline and a service-price term, such as “accept by September 22; this rate applies to the March–October 2027 season.” The two dates answer different questions.

What happens when you leave the date off

Without a date, you leave the customer uncertain about how long the offer stands. Whether a particular estimate is a binding offer depends on its wording, the communications around it and applicable law; do not assume its title settles the issue.

Set the acceptance deadline explicitly. After acceptance, the agreement’s terms govern price changes; the old expiration date is not permission to raise an accepted price. For example, California requires home improvement contract changes in writing. Have any escalation clause reviewed for the work and jurisdiction.

Write a date, not a duration

"Valid for 30 days" invites an argument about whether the clock started when you wrote it, when you emailed it, or when they opened it.

This estimate is valid through October 3, 2026.

If the job is material-heavy, add the caveat that ties the price to the thing that actually moves:

Treated-lumber pricing uses supplier quote [number and date] as the baseline. If the supplier’s price for the same quantities and specification rises by more than 5% before ordering, we will request approval for the full documented increase above that baseline, without additional markup. We will show the amount and any schedule effect and obtain your written approval before ordering. If you decline, we will pause that purchase and discuss the options permitted by our agreement.

Complete the supplier-quote placeholder before using the sample. Under its full-increase method, a baseline of $2,000 rising to $2,140 would trigger a proposed $140 change, not only the $40 above the 5% threshold. Agree what happens if the customer declines, including any available substitution or termination rights. Explain any schedule impact in the proposed change. Have the clause reviewed before using it on consumer work; it should not imply that a price can rise without the required agreement.

If your calendar is the exposure, not your materials:

This estimate assumes a start date on or before November 1, 2026. A later start may require rescheduling and a revised estimate.

When the yes arrives late

The window passed and the customer wants to move. Two clean options, and one thing not to do.

Reissue. Build a new estimate with current material pricing, a new date, and a new estimate number. Frame it as routine, because it is: "That estimate expired in May, so let me reprice it against today's material costs and get you a current number today." Explain which costs changed and let the customer review the revised total.

Confirm the old one in writing. If your costs have not moved and the calendar works, honor the number — but re-send it with a new expiration date instead of agreeing over the phone. A verbal "that still works" leaves nobody able to say which scope, price or terms are in play.

Before either, re-check three things: material cost today, your schedule for their start date, and whether the job itself changed. A roof that needed one repair in April may need more in August.

Do not let it slide. Starting work on an expired number with nothing in writing is how a job ends with two versions of the price.

Save a default validity window

A date you retype job by job is a date you will eventually forget. Put the validity line and the escalation caveat in your standard template, next to your payment terms and exclusions, and change the window only when a job calls for it.

DoneQuote lets you set that default window once and counts the expiration date from the day the document actually goes out — so the window you chose is the window the customer reads, with no arithmetic per job.

Write quotes 10x faster

  • Describe the job, AI drafts the quote
  • Professional layout in seconds
  • Free to try, no credit card
Try it free