Skip to main content
All postsContractor disputes

Why clients dispute your material markup (and how the contract prevents it)

A client Googled the retail price of the materials on a finished job and refused to pay the markup. The fix is not a better argument after the fact, it is an itemized contract before day one.

The LienDone team8 min read
A contractor and client reviewing an itemized construction invoice with a markup line item

A contractor finished a two-week job. The client then searched the retail price of the materials, compared it to the invoice, and refused to pay the difference. Thousands of dollars in labor sat on hold over a markup every contractor in the trade charges for sourcing, handling, delivery, and the cost of carrying the expense before payment ever arrives. The contractor ran the numbers on fighting it and decided the legal cost would exceed the debt. He walked.

That is a contractor material markup dispute, and it plays out the same way almost every time: the client waits until the work is installed, then treats your invoice as a negotiation.

Why the markup is legitimate in the first place

Sourcing the materials takes time. Coordinating delivery takes time. Someone stores the extra stock, eats the waste, and handles a defect under warranty if one shows up. And the contractor is usually carrying that cost on their own credit line for weeks before the client's payment lands. None of that is free, and none of it is hidden. A markup of 10% to 20% over cost is a common range across the trades, though the real number depends on your trade, your region, and your own overhead. It is a business cost, not a hidden fee.

Put a number on it. Materials priced at $10,000 retail, marked up 15%, land on the invoice at $11,500. The client who Googles the $10,000 figure sees what looks like a $1,500 overcharge. What they do not see: the two supplier calls it took to get the order confirmed before a price increase, the half day someone spent coordinating a delivery window around the framing crew's schedule, the storage of a pallet of overage in case a piece got damaged on install, and five to six weeks of that $10,000 sitting on the contractor's line of credit before the client's payment arrived. The $1,500 was never free money. It was the cost of doing all of that instead of asking the client to do it themselves.

The client had every chance to ask about this before signing. Almost none of them do.

Why the dispute always comes at the end, not the beginning

Here is the pattern worth naming directly: the client always had the opportunity to question the markup, or the pricing structure, before work started. They wait until the job is done and installed, because that is the only moment you have no leverage left to negotiate with. Disputing a line item on a signed contract before the tools come off the truck costs them nothing. Disputing it after the drywall is up costs them a fight they know most contractors will not have the appetite for.

That is not a client being careless. It is a client testing where the price actually stops. Most of the time it is not even calculated. The client genuinely believed the invoice would match the retail total, because nobody ever told them a markup was coming, and by the time they find out, the framing, the drywall, and the fixtures are already theirs to keep.

What an itemized contract has to define

A one-page estimate with a lump sum at the bottom invites exactly this dispute, because nothing in it is specific enough to point back to. An itemized contract closes the gap with five things:

  • Scope of work, specific enough that anything outside it is obviously an extra, not a judgment call. "Install kitchen cabinets" invites a dispute over what counts as included. "Install 14 linear feet of upper and lower cabinets per the attached layout, in the specified finish" does not.
  • Payment milestones tied to a stage of completion someone can actually verify by looking at the job, not to a calendar date. A milestone the client can walk the site and confirm is a milestone that is hard to argue with later.
  • Markup policy, stated as a flat percentage or folded into a stated unit price, written down rather than assumed. One sentence in the contract (materials billed at cost plus a stated percentage) closes the entire dispute in the story above before it can start.
  • Change order process, naming who has the authority to approve added scope or pricing before the work happens, so a request from someone without that authority is not automatically a commitment.
  • Substantial completion, defined in the contract itself, not left as a conversation to have when the job wraps, since "done" and "substantially done" carry different payment obligations in most contracts and most disputes.

Every one of these is the sentence that was missing from the contract in the story above. None of them are complicated to write. They are just easy to skip when the client seems easy to work with and the job is small enough that a full contract feels like overkill.

The leverage question once the work is installed

This is the part contractors underestimate. Once materials are installed, they generally become part of the property, and the contractor cannot remove them to force payment. Doing so without the owner's consent can expose the contractor to a trespass or conversion claim, on top of whatever payment dispute already existed. This is a general principle across most states, not a specific statute, and the exact treatment of fixtures and improvements varies by state and by what the contract says about title passing on installed materials. A construction attorney can tell you exactly where your state and your contract land on it.

Once the leverage of "the work isn't installed yet" is gone, the real remaining tool is the mechanics lien, and it runs on a clock. Preliminary notice requirements and filing deadlines vary by state, in some states dramatically, so the right move is to file early and confirm your state's specific window before the job even starts, not after the client stops paying. LienDone's lien deadline calculator gives you the filing window for your state to the day.

What to actually say when a client disputes the markup

Do not open by defending the percentage. Open by pointing back at the number they already agreed to. "The invoice reflects the price in the signed contract, which itemizes materials at cost plus markup for sourcing and handling. That's the number we agreed to before I ordered anything." If the contract had no itemized markup line at all, the conversation is weaker, which is exactly why the clause needs to exist before the next job starts, not after this one.

If the client still won't move, put the retail-price comparison back on them directly: ask whether they would have sourced, delivered, and stored the materials themselves for free, and whether they are asking to pay retail-plus-nothing for a service they did not perform. Most clients drop the argument once it is framed as a service they skipped, not a number they can shop around.

When to walk and when to file

If the disputed amount is small relative to the cost of filing and pursuing a lien, walking away, as the contractor in the story did, is often the rational business decision. Filing fees, attorney time, and the months a dispute can drag on all cost real money before you see a dollar back, and a lien on a small residential job rarely clears that bar. If the amount is large enough to justify it and your preliminary notice deadline has not passed, filing is the stronger move. Letting the debt go because the conversation is uncomfortable is how a legitimate markup turns into an unrecoverable loss, and it is worth running the actual math (disputed amount against filing cost and attorney time) rather than deciding on how the conversation feels in the moment.

This is general information, not legal advice. Lien rights, notice deadlines, and fixture law vary by state. Talk to a construction attorney about your specific contract and job before deciding whether to walk or file.


The itemized contract prevents the dispute. Getting your lien waivers signed on every payment protects you if a dispute happens anyway, since a signed conditional waiver keeps your lien rights intact until the check clears. The retainage carveout your lien waiver might be missing and the client who negotiates before day one both cover the two disputes that usually show up alongside this one. LienDone sends state-compliant waivers your clients and subs sign from their phone, no account required. Start a 14-day free trial, no credit card required.

Frequently asked questions

Yes. Marking up materials to cover sourcing, delivery, handling, storage, and the cost of carrying the expense before payment is standard, legal practice across the trades. The contract should state the policy, but the practice itself is not in dispute.

Send your next waiver in two minutes.

Pick the project, pick the sub, hit send. The signed PDF lands in your dashboard.

Get startedSee pricing