The Direct Answer
Shorten how long your estimate stays valid (7–14 days instead of 30 or 60), quote volatile materials as an allowance or a pass-through with a stated markup instead of a locked price, get a firm quote from your supplier before you commit to the customer, and put a written escalation clause in the estimate that lets you adjust if material cost jumps past a set threshold between signing and purchase.
None of this is about padding your price to cover yourself. It's about not eating a price swing that happened after you already signed a contract. Copper, OSB, PVC, shingles, and lumber have all moved 10-30% within a single season at various points over the last few years. If your estimate doesn't account for that, the gap comes straight out of your profit, not the customer's pocket.
Contractors who get burned on this usually did one of two things: they quoted a firm price weeks before the job started without checking current supplier cost, or they wrote "materials included" on the estimate with no language explaining what happens if those materials cost more by the time they're purchased. Both are fixable with how you write the estimate, not with guessing the market better.
Shorten the Estimate's Validity Window
A 30 or 60-day acceptance window made sense when prices moved slowly. It doesn't anymore. If a customer sits on your estimate for three weeks and then signs, you're locked into a price based on costs that no longer exist. Cut your validity window to 7-14 days for jobs with significant material exposure — roofing, siding, anything copper or PVC-heavy, big lumber packages. Put the expiration date on the document itself, not just in your head. "This estimate is valid through [date]" in plain text at the bottom of the page does more to protect your margin than almost anything else on this list, because it forces a re-quote conversation instead of an automatic honor-the-old-price obligation.
Quote Materials as an Allowance Instead of a Fixed Line Item
An allowance is a stated budget for materials, not a guaranteed price. Instead of writing "shingles: $4,200," write "roofing materials allowance: $4,200, based on current supplier pricing as of [date]. Final materials cost will be billed at actual invoice price." This tells the customer exactly what you expect to spend without promising a number you can't control. If the actual cost comes in under the allowance, you can credit the difference or just absorb it as goodwill. If it comes in over, you have a documented basis to bill the difference instead of asking for forgiveness after the fact.
Allowances work especially well on remodels and custom builds where the customer is also picking finishes, fixtures, or specific products — the uncertainty is already baked into the job, so putting a number on it reads as normal rather than evasive.
Or Pass Materials Through With a Stated Markup
For jobs where you don't want to deal with allowance adjustments, pass-through pricing is simpler: you tell the customer upfront that materials will be billed at actual cost plus a fixed markup (commonly 10-20%, depending on your trade and how much handling and waste you're absorbing). The estimate shows an estimated materials total based on current pricing, but the contract states materials are billed at cost-plus. This is common on commercial and larger residential jobs, and it removes the guesswork entirely — your markup percentage stays fixed even when the underlying price moves. The tradeoff is some customers are uneasy with an open-ended number, so this works better when you also provide receipts or supplier invoices at closeout for transparency.
Lock In Supplier Pricing Before You Commit
Don't price a job off a price you remember from last month's job. Call your supplier, get a written quote with a hold date, and base your estimate on that number. Many suppliers will hold pricing for 15-30 days on request, especially for larger orders — ask. If you can get materials on a purchase order or deposit before you sign the customer, you've effectively locked your cost and removed the risk entirely, which is the cleanest solution when the job size justifies it. This matters more the bigger the material-to-labor ratio on the job: a kitchen remodel with $18,000 in cabinets and countertops has far more exposure than a $900 drywall patch.
Put an Escalation Clause in Writing
Even with a locked supplier quote, long jobs (anything with a multi-week gap between signing and material purchase, or jobs that get delayed by weather or permitting) need an escalation clause. This is one sentence that protects you if costs move after the contract is signed but before you buy:
"If the cost of materials specified in this estimate increases by more than 5% between the date of this agreement and the date materials are purchased, the customer will be notified and the difference will be added to the final invoice."
Pick a threshold that makes sense for your trade — 5% is reasonable for most remodeling and roofing work, lower for high-volatility materials like copper or treated lumber during supply disruptions. The point isn't to nickel-and-dime the customer over a 1% swing; it's to have a documented right to adjust before a 15% jump wipes out your profit on the job.
Sample Estimate Wording You Can Use
- Validity: "This estimate is valid for 10 business days from the date above. Pricing beyond this window is subject to review based on current material costs."
- Allowance: "Flooring materials allowance: $3,800, based on supplier pricing as of [date]. Final cost billed at actual invoice price; customer will be notified of any variance before purchase."
- Pass-through: "Materials will be billed at actual cost plus a 15% handling markup. Estimated materials total shown is based on current pricing and may vary at time of purchase."
- Escalation clause: "If material costs increase more than 5% between contract signing and purchase date, the customer will be notified in writing and the adjusted cost will be reflected in the final invoice."
These four lines do most of the work. None of them require you to guess the market six weeks out, and all of them give you a documented, pre-agreed basis to adjust instead of having an awkward conversation mid-job about why the price changed.
Where This Fits Into the Bigger Estimate
Material language is one piece of a complete estimate — it sits alongside your labor breakdown, overhead, and profit margin. If you haven't nailed down how those numbers come together, the labor, materials, overhead, and profit breakdown guide walks through the full structure, and Markup vs Margin for Contractors is worth a read before you set your pass-through percentage, since the two terms get confused constantly and the math difference matters on a volatile-cost job.
If you quote off a price book that's months out of date, none of this helps — your base numbers are already wrong before material swings even enter the picture. Do Contractors Need a Price Book? covers why keeping current costs on hand matters, and Trusso's AI estimates are anchored to your own price book, so when you update a material cost it carries forward into every new estimate instead of living in your head or an old spreadsheet. Trusso also lets you set estimate expiration and send updated pricing fast when a supplier quote changes mid-week, which matters more than people expect once you start shortening your validity windows.
Frequently Asked Questions
Will customers push back on allowance pricing instead of a fixed number?
Some will, especially on smaller jobs where they're used to a flat quote. Explain it plainly: you're not padding the number, you're being honest that material prices move and you'd rather show them real cost than build in a cushion to protect yourself. Most customers respond better to transparency than to a padded fixed price they can't see the reasoning behind.
What percentage threshold should I use for an escalation clause?
5% is a common default for general remodeling and roofing work. For materials with a history of sharp swings — copper, PVC, treated lumber — some contractors use 3%. For stable materials like drywall or standard fasteners, you may not need a clause at all. Base it on how volatile that specific material has actually been over the past year, not a guess.
Should I just raise my markup instead of using an escalation clause?
You can, but it means every customer pays for risk that may not materialize, and it makes your prices less competitive. An escalation clause only charges for the increase that actually happens, which is fairer to the customer and easier to defend if they question the final invoice.
How do I handle a job already in progress when prices spike mid-job?
This is a change order, not a renegotiation of the original estimate. Document the new material cost, explain the change in writing, and get signed approval before you purchase at the higher price. The change orders guide covers the documentation step by step.
Does shortening estimate validity hurt my close rate?
Rarely. Most customers who are ready to hire will sign within a week or two anyway. A shorter window mostly filters out people who were never going to commit soon, and it protects you from the much bigger risk of honoring a stale price on the ones who do sign late.
This piece reflects estimating practices and material-cost language common among residential contractors as of late 2026; specific percentages and thresholds should be adjusted to your trade and local supplier conditions.
Run your business the simple way
Try Trusso free for 14 days and send your first estimate in minutes.
Start 14-Day Free TrialKeep reading
How Do You Set Boundaries for an AI Receptionist at a Contracting Business?
Write down what your AI receptionist may say, what it must refuse, and what it must escalate — then test those rules with real calls before you trust it with your phone.
Read articleLead CaptureHow to Choose a Domain Name for a Contracting Business
Trade-plus-city or your business name? .com or something else? Here's how to pick a contractor domain name you won't regret in two years.
Read article