Materials Markup: Claim the Discount, Price the Freight, Then Mark Up
Most material lines are priced on the list price — which means the trade discount is never claimed and freight is eaten. The markup should sit on net cost.
Materials get priced worse than any other line, and it's rarely the markup's fault. The two failures happen before the markup is ever applied: the trade discount is never claimed, so the base is the sticker price; and freight gets eaten, so delivery is a donation. Both are silent — the price still looks like a price, and the money leaves through a door nobody watches.
The base is net cost
A tiler buys a tile order with a $1,100 list price on a 10% trade account, with $45 of freight to site. The correct base is the cost of having the material on site: $1,100 − $110 + $45 = $1,035. A 35% markup on that base prices the material at $1,397.25 — $362.25 of profit, a 25.9% margin, and an effective 1.27× on list.
| Base | Price at 35% | Profit | Margin |
|---|---|---|---|
| Net cost $1,035 (discount claimed, freight in) | $1,397.25 | $362.25 | 25.9% |
| List price $1,100 (discount ignored, freight eaten) | $1,485.00 | $262.50 on markup — freight still unpaid | lower |
The second row looks like a bigger number and delivers less money, because $45 of freight comes back out and the discount was never real to begin with. Marking up the net cost — freight included — is what makes the markup worth applying at all.
What the markup is actually for
A materials markup isn't free money on the invoice; it's the price of services the customer doesn't see: storage until the job needs it, handling and waste, the returns run, standing behind a defective fixture, and the float while the customer pays you long after you paid the supplier. A markup that only covers the invoice loses money on every part you touch — quietly, at scale.
The multiplier, decoded
Customers and competitor quotes talk in multipliers — "parts at 2×." Your equivalent number is price ÷ list cost. A 100% markup on heavily discounted net cost can legitimately be 2.2× on list; a 35% markup on full-list net cost might be 1.3×. Knowing your own multiplier matters when a customer waves a rival quote: matching "2× parts" without checking your base either overprices you or underprices you — the base decides which.
Don't count the profit twice
The classic double-count: mark materials up 35% inside the estimate, then apply a 35% target margin to the whole job — marked-up materials included. The parts earn profit twice and the price starts scaring people off. Pick one structure and hold it: markup inside the material line with margin on the rest, or cost-only materials with a single margin across the job. The Job Pricing Calculator uses the second; this calculator exists for the first.
Price a material line with the materials markup calculator →
Frequently asked questions
What should the markup base be for materials?
Net cost: list price minus your trade or account discount, plus freight to site. A 35% markup on $1,035 of net cost produces $362 of profit; the same 35% on the $1,100 list price produces only $262 — the unclaimed discount, given away by the base you chose.
How much should I mark up materials?
Commonly 20–50% on net cost depending on trade and handling. The honest way to set it: total what materials actually cost you beyond the invoice — storage, handling, returns, warranty risk, the cash float while the customer pays — and make sure the markup covers it.
Can I apply a materials markup and a job margin on top?
Not to the same dollars. If materials carry a 35% markup and the whole job then carries a 35% margin including the marked-up price, the parts earn profit twice. Choose a structure: markup inside the material line with margin on the rest, or cost-only materials with one margin over the job.
Tools for this
Ready to run the numbers?
Open the Materials Markup Calculator and apply this guide with your own figures.
Open the Materials Markup Calculator →