How to Invoice for Materials and Labor (Trades Guide + Free Template)
The problem with lumping it all together
A plumber finishes a job, adds up parts and hours in his head, and writes one line: "Repair work — $840." The client stares at it. Was that mostly labor? Did the fittings really cost that much? Two days later the email arrives asking for a breakdown, and now you're reconstructing the job from memory.
Separating materials from labor solves that before it starts. It shows the client exactly what they paid for, it protects you when someone disputes a charge, and in many jurisdictions it's the only way to get the sales tax or VAT treatment right, because parts and services are often taxed differently.
This is about materials you supply and mark up as part of the job. That's different from passing through a cost the client told you to buy on their behalf, which is covered in billing clients for expenses.
Structure the invoice in two sections
The cleanest layout groups line items under two headings, each with its own subtotal, before you combine them into the grand total.
A tiled bathroom job might look like this:
Materials
| Item | Qty | Unit price | Line total |
|---|---|---|---|
| Ceramic wall tile (m²) | 12 | $28.00 | $336.00 |
| Tile adhesive (20kg bag) | 3 | $32.00 | $96.00 |
| Grout (5kg) | 2 | $18.00 | $36.00 |
| Silicone sealant | 2 | $9.50 | $19.00 |
| Materials subtotal | $487.00 |
Labor
| Description | Hours | Rate | Line total |
|---|---|---|---|
| Surface prep and waterproofing | 6 | $65.00 | $390.00 |
| Tiling and grouting | 14 | $65.00 | $910.00 |
| Labor subtotal | $1,300.00 |
Then:
- Materials subtotal: $487.00
- Labor subtotal: $1,300.00
- Subtotal: $1,787.00
- Tax (see below): calculated on the taxable portion
- Total due
Three things make this work. The client can scan the two subtotals and understand the split at a glance. Every material line has a quantity and unit price, so nothing looks like a random round number. And the labor descriptions say what the hours bought, not just "labor: 20 hrs."
If you bill by the job rather than the hour, replace the hours column with a fixed labor line: "Tiling installation — bathroom (fixed price): $1,300.00." The two-section structure still holds.
How to handle markup on materials
Marking up materials is standard practice in the trades. You're carrying the cost, sourcing the parts, storing them, and warranting that they're right for the job. A markup of roughly 15% to 30% on materials is common, though it varies by trade, region, and item.
You have two honest ways to present it, and one to avoid.
Option A — mark up quietly, quote the retail price. You buy the tile at $22/m² and invoice it at $28/m². The client sees $28, which is at or near what they'd pay retail anyway. The markup is baked into your unit price and never itemized. This is the most common approach and it's perfectly legitimate, provided the price is reasonable.
Option B — show cost plus a stated markup. Some commercial clients, and most "cost-plus" contracts, require this:
- Materials at cost: $400.00
- Materials markup (20%): $80.00
This is transparent and it's the norm on larger builds where the client audits costs.
What to avoid: inventing a markup line the client never agreed to, on a job they thought was fixed-price. If your quote said "materials at cost," you can't quietly add 20% on the invoice. Match the invoice to whatever the quote or estimate promised.
A note on the math: markup and margin are not the same number. If a part costs you $100 and you want a 25% margin (25% of the sale price is profit), you sell it at $133.33, not $125. A 25% markup on cost gives you $125, which is only a 20% margin. Decide which one you mean and stay consistent, because the gap adds up across a big materials bill.
Tax on parts versus services
This is where separating the two sections earns its keep, and where you need to be careful, because treatment varies by jurisdiction. Confirm the specifics with your tax authority or an accountant.
United States. Sales tax rules differ by state and even by locality. In many states, tangible goods (your materials) are taxable while labor on real property is not, but plenty of states tax certain services too, and some treat a contractor as the end consumer of materials, meaning you pay sales tax when you buy them and don't charge it again. The practical upshot: splitting materials from labor lets you apply tax only to the portion that's actually taxable. See US sales tax on invoices for the mechanics.
Worked example, assuming a state where materials are taxable to the customer at 8% and labor is exempt:
- Materials subtotal: $487.00 → tax $38.96
- Labor subtotal: $1,300.00 → tax $0.00
- Total: $1,825.96
If you'd lumped everything into one $1,787 line and taxed all of it, you'd have overcharged the client $104 in tax you shouldn't have collected.
United Kingdom. If you're VAT-registered, VAT generally applies to both materials and labor at the standard rate, so both sections carry VAT (some construction work qualifies for reduced or zero rates, and the domestic reverse charge applies to certain B2B construction services). Your invoice still needs to meet the VAT invoice requirements. If you're not registered, you charge no VAT on either, but you also can't reclaim the VAT you paid on the materials, so you'll want to price with that in mind. Whether you need to register at all is covered in do I need to register for VAT.
Canada. GST/HST typically applies to both the parts and the labor. Show your registration number and the tax clearly per the GST/HST invoice rules.
Australia. GST at 10% generally applies to both materials and labor for a registered business, and the document needs to meet the tax invoice requirements.
Even where both sections are taxed at the same rate, keeping them separate still helps: it makes the invoice auditable and it makes your own bookkeeping cleaner when you reconcile what you paid for materials against what you billed.
Deposits, staged payments, and big materials bills
When a job front-loads a large materials purchase, don't fund it out of your own pocket for six weeks. Take a deposit that at least covers the materials before you order them.
A common structure for a $5,000 job with $2,000 of materials:
- Deposit on acceptance: $2,000 (covers materials)
- Progress payment at rough-in: $1,500
- Final invoice on completion: $1,500
The deposit invoice lists the materials, the final invoice reconciles everything and shows the deposit already paid as a credit line: "Less deposit received 12 Jul: −$2,000.00." That way the final total due reflects only what's outstanding. More on structuring the first ask is in how to ask for a deposit upfront, and for longer jobs, progress billing walks through staged invoices.
Line-item habits that prevent disputes
- Quantities and unit prices on every material line. "Copper pipe (15mm) — 8m @ $6.50" survives a challenge. "Plumbing supplies — $52" invites one.
- Descriptive labor lines. Tie hours to a task. "Diagnose and replace faulty thermostat — 2.5 hrs" beats "labour."
- Keep your supplier receipts. If a client questions a markup or you're on a cost-plus contract, the receipt is your proof. Store them alongside the invoice; see how long to keep invoices and receipts.
- Note waste and offcuts honestly. You often have to buy a full box of tile or a full length of pipe. Bill the quantity you bought, not a theoretical exact amount, and it's fine to leave surplus materials with the client since they paid for them.
- Round sensibly. Charge the actual unit price. A materials list of $487.00 reads as real; "$500 materials" reads as a guess.
- Number your invoices sequentially so parts and labor from the same job are traceable. Invoice numbering best practices covers this.
Sample invoice skeleton you can copy
[Your business name / logo] INVOICE #2026-041
[Address, phone, email] Date: 3 Aug 2026
[Tax/VAT/ABN number if registered] Due: 17 Aug 2026 (Net 15)
Bill to: [Client name & address]
Job: Bathroom re-tile, 14 Maple St
MATERIALS
Ceramic wall tile 12 m² @ $28.00 $336.00
Tile adhesive 3 bags @ $32.00 $96.00
Grout 2 @ $18.00 $36.00
Silicone sealant 2 @ $9.50 $19.00
Materials subtotal $487.00
LABOR
Surface prep & waterproofing 6 hrs @ $65 $390.00
Tiling & grouting 14 hrs @ $65 $910.00
Labor subtotal $1,300.00
Subtotal $1,787.00
Sales tax (8% on materials only) $38.96
Less deposit received 12 Jul −$500.00
TOTAL DUE $1,325.96
Payment: [bank details / methods]
Terms: Net 15. Late payments subject to [x]% per month.
Adjust the tax line to your jurisdiction. If both materials and labor are taxable where you work, apply the rate to the full subtotal instead.
Set clear payment terms and a reasonable turnaround. Trades often use short terms like net 15 or due on receipt because your cash is tied up in materials, and pairing that with a couple of solid payment methods gets you paid faster. If a client goes quiet, the payment reminder templates will save you writing one from scratch.
Build one clean template with the two-section structure, save it, and reuse it for every job. The clarity pays for itself the first time a client reads the invoice and pays it without a single question.
Keep reading
How to Invoice for Hourly Work: Time Tracking, Rates & a Free Template
A practical guide to billing by the hour: tracking billable time, building line items from hours times rate, handling rounding, and presenting it so clients pay without questions.
8 min readDocument TypesInvoice vs Bill: What's the Difference?
An invoice and a bill are often the same document seen from opposite sides of a sale. Here's how the terms differ by perspective, industry, and accounting.
7 min read